Content uploaded by Pedro Lourenço

Author content

All content in this area was uploaded by Pedro Lourenço on Sep 09, 2021

Content may be subject to copyright.

COMPUTATIONAL GUIDANCE & NAVIGATION FOR BEARINGS-ONLY RENDEZVOUS

– METHODS AND OUTCOMES OF GUIBEAR

P. Serra(1),(2), P. Lourenc¸o(1) , J. Branco(1), J. F. Briz Valero(3), M. Mammarella(3), T. Peters(3), D.

Mora Portela(3), S. Manara(4), D. Bernardini(4), A. Bemporad(4) , P. Foglia Manzillo(5), J.

Witteveen(5), A. Cropp(6)

(1)GMV, Alameda dos Oceanos, n.º 115, 1990-392 Lisboa, Portugal, +351 21 382 93 66,

{parroz,palourenco,jbranco}@gmv.com

(2)Lusofona University of Humanities and Technologies, COPELABS, Lisbon, Portugal

(3)GMV, C/ Isaac Newton, no. 11 – PTM 28760 Madrid, Spain, +34 91 807 21 00,

{jbriz,mmammarella,tpeters,dmora}@gmv.com

(4)ODYS, Via Augusto Passaglia, 185, 55100 Lucca LU, Italy, +39 339 187 5527,

{silvia.manara,daniele.bernardini,alberto.bemporad}@odys.it

(5)cosine Remote Sensing B.V., Oosteinde 36 2361 HE Warmond The Netherlands, +31 715 241 099,

{pfogliamanzillo,j.witteveen}@cosine.nl

(6)ESA-ESTEC, Keplerlaan 1, PO Box 299 2200 AG Noordwijk The Netherlands, +31 71 565 8797,

Alexander.Cropp@esa.int

ABSTRACT

GUIBEAR is an activity supported by the European Space Agency aimed at the demonstration of

the feasibility of bearings-only (B-O) far-range rendezvous in near rectilinear Halo orbits (NROs).

The studied scenario is the far-range rendezvous of the HERACLES Lunar Ascent Element (LAE)

with the Lunar Orbital Platform – Gateway (LOP-G) that is orbiting the Moon in an NRO. This

activity advances the readiness level of the applicable technologies through a solution based on

Computational GNC, structured around a Model Predictive Control framework and tools; and an

approach design, development, veriﬁcation and validation based on iterative prototyping which in-

tegrates high-ﬁdelity hosting considerations into the design from a preliminary level: concurrent

GNC and software architecture design with hosting, runtime assessment and optical high-ﬁdelity

simulations. This paper: presents the context – mission, system and hosting, and algorithm-

level challenges and proposed concepts; details and justiﬁes the architecture and design solutions;

outlines the methodologies employed for prototyping veriﬁcation and validation; provides con-

clusions on the obtained results.

1 INTRODUCTION

Estimating the range to target is the ﬁrst order challenge of bearings-only rendezvous [1, 2]: the rela-

tive position is not instantaneously observable and bearings measurements are nonlinear, which are a

source of inconsistency, over-conservatism or divergence of estimates. Observability analysis shows

that manoeuvring between at least three non-coplanar (or four coplanar) measurements is necessary to

resolve the full relative position and velocity observable. As a result, estimation and control/guidance

problems are inherently connected, especially in an autonomous setting. A bearings-only navigation

ESA GNC 2021 – P. Serra 1

ﬁlter for rendezvous has to cope with the non-linearity of the measurement model and the instanta-

neous non-observability [3], while including knowledge of manoeuvres through thruster acceleration

observables that introduce a signiﬁcant source of uncertainty. Given all the challenges the naviga-

tion ﬁlter is exposed to, careful planning of the trajectory in order to maximize the information gain

it provides is extremely important. Effectively correcting in closed loop the results of unmodelled

dynamics, particularly manoeuvre dispersion and knowledge, favour autonomous on-board guidance

functions that present a challenge both in terms of computational load, fuel-cost, estimation perfor-

mance, and safety. NROs present signiﬁcantly different orbital environments to existing Earth orbit

B-O rendezvous heritage [4, 5, 6]. The nature of the 3-body problem and the absence of complete

analytical closed-form solutions are important challenges, but extensive study of this kind of orbits

shows that, for the scenarios considered and short timescales, closed-form approximation are appli-

cable. The distances introduce signiﬁcant challenges on target detection and tracking as the target

is at sub-pixel resolution, such as increased exposure times. This purely radiometric detection relies

on the capability of disentangling the target contribution to the pixel readout from the background

contribution due to cosmic background radiation (diffuse sky emission), background signals, and to

instrument noise itself. Aside from these challenges in terms of the main sensor in the considered

suite, several other hosting challenges are present. For example, effectively measuring the executed

delta-V is also a relevant challenge, given that accelerometers are perturbed by various different error

sources, from drifting biases to multiplicative cross-coupling errors. Finally, the online nature of the

GNC solution also presents signiﬁcant challenges in terms of runtime constraints and processing ar-

chitectures. The on-board computational power has to be able to solve the constrained optimization

problem that underlies the guidance function in real time.

The GUIBEAR study aims at addressing all these challenges, through the design of an algorithmic

or computational Guidance and Navigation architecture. The computational efﬁciency, accuracy and

robustness of the trajectory generation are at the foundation of the design, as the numerical generation

of guidance commands relies extensively on on-board computation. The autonomous guidance func-

tion is based on an optimization problem with the objective of 1) maximizing the observability of the

range and 2) minimizing the fuel consumption. This optimization problem bridges the gap between

estimation and control, thus approaching the potential of a truly autonomous system: the navigation

ﬁlter informs the computation of the trajectory, which in turn is optimized to improve the navigation

performance. In order to close the loop, the optimization problem is solved online, and its solution is

updated whenever the uncertainty of the navigation ﬁlter decreases. Adding the capability to enforce

input (saturation, maximum ∆V, minimum acceleration necessary for detection) and output (safety

and ﬁnal conditions) constraints to the optimization of the performance index lead to the formulation

of the multi-objective optimization problem in a model predictive control (MPC) framework [7]. Ulti-

mately, this provides a process to reduce the navigation errors systematically throughout the mission,

while taking advantage of this same reduction to improve the commanded plan. The bearings-only

estimation ﬁlter is tailored for monocular vision-based navigation, taking into account the particular-

ities of the NRO environment and the difﬁculties of navigating when the target is always at sub-pixel

resolution. For that purpose, a weighted least squares batch estimator is employed, improving the

accuracy and outlier rejection while dealing with such challenges as varying camera integration times

and computational cost. This ﬁlter is complemented by a higher frequency state estimator that not

only propagates the dynamics whenever measurements are not available, but also combines the higher

quality information provided by the batch ﬁlter. The resulting architecture is then a mixture of sequen-

tial and batch processing, and consequently high and low frequency processing tasks. Since accurate

navigation is only necessary before the computation of the next guidance proﬁle by the MPC, this

exploits the structure of the mission scenario with the objective of improving the navigation perfor-

ESA GNC 2021 – P. Serra 2

mance, as it minimizes sensor measurement errors, saves computational time, and minimizes the real

time operational constraints. The proposed Computational G&N architecture is veriﬁed and validated

in simulation, taking as baseline the studied scenario. The LAE launches from the Moon, and ascends

to an elliptical low Moon Orbit, which is circularized into a circular low Moon orbit. This is followed

by an orbit transfer and phasing phase that place inject the LAE in free drift at which point it is able

to detect the target from a distance larger than 1000 km. The scenario tackled in this activity is the

approach and autonomous injection of the LAE in the LOP-G’s NRO, leaving the former in handover

conditions for the start of rendezvous proper, at 100 km from the latter.

The feasibility of performing far approach through these mass and cost-saving camera-only GNC

techniques is established and justiﬁed through prototyping and extensive testing in Model-In-The-

Loop high-ﬁdelity simulations. Autocoding and Software-In-The-Loop testing are performed as a

bridging step towards the subsequent phases of the V&V process – laboratorial Hardware-In-The-

Loop campaigns. As part of the strategy a novel method employed for benchmarking of runtime of

the auto-coded software is described: preliminary non-realtime PIL assessment employed at algo-

rithm development level. This method includes a step of experimental compilation and running of

a segment with a number of GNC cycles in a ﬂight-representative processor thus allowing adjusting

GNC parameters and runtime latency emulation blocks in the functional simulator.

2 THE GUIBEAR PROJECT

The GUIBEAR project is a natural extension of the NRO-GNC project [5], in the sense that it builds

on the DDVV process therein, and is focused on the ﬁnal part of the Orbit transfer phase, particularly

up to and including the NRO insertion manoeuvre as noted in Figure 1.

Figure 1: LAE mission scenario, with the phases of interest highlighted in dark red: the as-

cent/circularization and LLO loitering phases; in red: the orbit transfer phase; and in grey: the

rendezvous phase. On the right, the very far range nominal scenario. In red the trajectory of the

chaser from the LLO to the NRO. In blue, the target trajectory.

2.1 Timeline

The baseline approach uses an orbital transfer from low-lunar orbit (100 km altitude) to the halo

orbit (approximately 7000 x 70000 km altitude) that consists of two impulsive manoeuvres plus a

mid-course correction (for a total of 3 manoeuvres). The orbit transfer from low-lunar orbit starts

ESA GNC 2021 – P. Serra 3

with a transfer injection manoeuvre and ends with an NRO insertion manoeuvre. The manoeuvres

are computed as two-impulse transfers analogous to the Lambert problem in central-body / Keplerian

dynamics. That is to say, the manoeuvres are computed deterministically, taking into account the

three-body dynamics in an ephemeris model of the Earth-Moon system. Relative observations can

start during the free drift prior to the NRO insertion manoeuvre (IM).

Towards the end of the transfer the navigation will switch from a ground-based tracking solution

to a camera based navigation solution. The handover from ground tracking to the camera sensor

based navigation is planned to occur at a distance of 1000 to 1500 km distance from the LOP-G

station. The handover conditions are mainly determined by the accuracy of the ground tracking and

the illumination conditions at the time of the handover.

2.2 Scenarios

Three scenarios are deﬁned where the initial conditions for all scenarios are the same. The scenarios

all start 20 hours before the nominal NRO insertion manoeuvre occurs, at a distance of 1500 km from

the LOP-G. The terminal conditions for all scenarios should be the same: to arrive at the hold point

at 150 km 20 hours after the start of the scenario. Note that in all scenarios some time is included

after the insertion manoeuvre for relative observations, in order to leverage the range observation

enhancement opportunity provided by the insertion manoeuvre itself. The three scenarios considered

are shown in Table 1.

Table 1: GUIBEAR Scenarios.

Scenario 1

(Baseline)

This scenario is used to evaluate how well range can be observed without performing

additional manoeuvres. This includes a scenario with pre-planned insertion (PI) and

online-computed insertion (OI).

Scenario 2

(Insertion

untouched)

MPC based observation enhancing manoeuvres are being performed, but the inser-

tion is performed as planned in the baseline.

Scenario 3

(Full MPC)

All manoeuvres, including the insertion, are recomputed using MPC. Fuel-optimal

(F) and Observability-optimal (O) cases are addressed.

The baseline scenario is essentially the same as the Heracles LAE scenario as described in [5]. This

scenario consists of a single manoeuvre taking place, the NRO insertion manoeuvre. This manoeuvre

has a nominal ∆Vof 20 m/s. Two observations performed before and two observations performed

after a manoeuvre make the camera based navigation problem fully observable. This means that even

if no additional manoeuvres are planned, the fact that the NRO insertion manoeuvre needs to be per-

formed would already provide an opportunity for making the problem observable (that is, by taking

at least two directional measurements before and after performing the NRO insertion manoeuvre).

This is considered the baseline scenario. In the second scenario, manoeuvres are added before the

insertion manoeuvre, but the insertion manoeuvre itself is left untouched by the MPC. This implies

that the additional manoeuvres are small (of the order of 1 m/s), and that at the end of the sequence

of additional manoeuvres the LAE is in the correct position to perform the insertion manoeuvre. The

computation of the insertion manoeuvre takes into account the improved navigation available through

the sequence of manoeuvres. In practice this means that the timing of the manoeuvre can be adjusted

on-board based on the relative navigation to ensure the LAE arrives at the hold point. Ideally, the

sequence of manoeuvres should not greatly increase the uncertainty in position with respect to the

estimated ground tracking based accuracy (that is, 6 km on all axes) if no measurements would be

taken. In this way, the observability enhancement manoeuvres could be performed without interfering

ESA GNC 2021 – P. Serra 4

with the nominal operations deﬁned in the baseline approach. In the third scenario, the MPC gen-

erates a sequence of manoeuvres that include the insertion into the hold point at 150 km. The only

restrictions are as stated above, namely, that the scenario ends 20 hours after the nominal starting

point at a distance of 1500 km and that the ∆Vis less than a maximum that includes the ∆Vof

the insertion manoeuvre and a margin for observability enhancements. In this scenario the MPC has

the most freedom to design the trajectory and can work with larger manoeuvres than the other two

scenarios.

3 GUIBEAR G&N DESIGN

In a classical sequential architecture, the loop starts acquiring data from the available sensor suite;

the measurements are then processed by a sequential Navigation Filter that at each time instant pro-

vides a state vector estimation - when no measurements are available the ﬁlter will only propagate the

dynamic model implemented. Using the covariance measurement it is possible to determine if the ac-

curacy has substantially improved from the past. If the accuracy has improved substantially from the

last execution of the guidance computation, the guidance function is executed. The guidance function

can also be executed periodically and in case the Navigation accuracy has not improved from the past

execution the guidance call is aborted. The guidance function computes the entire trajectory and it is

used in the high frequency cycle. On a different ﬂavour, the G&N architecture designed in GUIBEAR

includes a mix of sequential processing and batch processing, and consequently High frequency and

Low frequency processing tasks. The high frequency tasks consists as ﬁrst task collecting data from

samples as it was described for the previous architecture. The second task consists in estimating the

state vector using a simple algorithm as for example simple propagator of the dynamics, something

that in the previous architecture is also performed when measurements are not available. Knowing

the trajectory, it is possible to know if the manoeuvre has to be applied within the current cycle, if yes

the control applies the manoeuvre. In parallel, there are Low Frequency processes running that can be

synchronized with the mission trajectory. The sensors measurements are collected in data batch and

processed within a Navigation Filtering which uses batch ﬁltering with dynamic models and mea-

surements collected at different time. The Navigation provides an estimation of the performed arc

averaging all the measurement errors of the collected data. More accurate dynamical models can be

Figure 2: The G&N architecture designed during the activity: mixed batch and sequential processing.

On the right, low frequency tasks execution proposed concepts overlapped over the trajectory

used since there is not a stringent requirement on the navigation frequency but especially the batch

ESA GNC 2021 – P. Serra 5

ﬁltering is a simple method for reducing the measurement noise while ﬁtting the trajectory. Once the

navigation solution is computed, the information is passed to the State vector estimator of the High

frequency task in order to use as soon as possible the most update information. If the accuracy has

improved substantially from the last execution of the guidance computation, the guidance function

is called. Alternatively the guidance function can be also executed periodically and in case the Nav-

igation accuracy has not improved from the past execution the guidance call is aborted. As in the

sequential case, the Guidance when executed generates an entire trajectory that updates the existing

trajectory. This strategy ﬁts very well in the mission scenario, since accurate navigation solution is

only needed before the execution of the manoeuvres and this time can be foreseen since the trajectory

is known up to the end. Consequently, knowing the time needed for executing the Navigation Filter-

ing and the guidance functions, it can be planned measurement data collection between 2 manoeuvres

in order to have the navigation solution and possibly a re-computation of the trajectory before the fol-

lowing manoeuvre. The described concept is depicted in the right-hand side of Figure 2 reporting the

time dedicated to collect data, Navigation Filtering Execution and Guidance Execution over the tra-

jectory. This solution provides better performance because it minimizes sensors measurement errors

through a batch ﬁltering process also saving computational time since the on-board computer (OBC)

is extensively used only when Navigation and Guidance are executed. Furthermore, it minimizes the

real time constraints of the Navigation since the only constraints is that Navigation and guidance are

executed before the next manoeuvres. The time between manoeuvres is set a priori and drives the

prediction model used on the optimization-based guidance.

3.1 Guidance

In general, a line-of-sight measurement proﬁle is unique when, given an observation period, it can

only be generated by one possible trajectory. For different relative trajectories, there may be periods

with the same azimuth and elevation readings, but for the entirety of the observations the overall

measurement proﬁle must be unique. Since the measurement proﬁle can be identiﬁed with the initial

conditions, a unique proﬁle and the associated motion are associated with uniquely determining the

initial conditions. When that is possible, the system is observable. This is the topic of several works

on bearings-only rendezvous in LEO (see [8] and [9]). To apply this concept in the context of an

NRO, it should be noted that the last segment of the transfer from LLO to halo covers a small fraction

of the orbital period, such that the dynamics is very slow. Furthermore, the chaser moves along a

trajectory that is nearly a straight line. This means that dynamical coupling of the axes is quite weak.

By contrast, the motion in the x and z directions of the LVLH frame are dynamically coupled in

the case of LEO rendezvous. These considerations can inform a geometrical observability analysis

that itself can steer the trajectory design. Some conclusions are: (i) Maximizing observability of a

manoeuvre requires that it is performed perpendicular to the direction of the target; (ii) Observability

is fostered by changes in observation angle and the angular momentum. The former are maximized

when the manoeuvre is perpendicular to the angular momentum and the direction to the target, and

the latter when it is collinear with the angular momentum; Taken together, these recommendations

point to a guidance strategy in which manoeuvres are performed such that the trajectory resembles a

3-dimensional spiral.

By deriving the observability Gramian for the bearings-only navigation problem, it is possible to add

further considerations to the G&N design: (i) If the spacecraft moves perpendicularly to the original

direction to the target twice, three different measurements will provide observability, otherwise at

least four measurements are necessary; (ii) Some manoeuvres may not provide observability if the

measurement proﬁle does not change, i.e., if the new position lies in the same direction to the target

as it would without manoeuvres.

ESA GNC 2021 – P. Serra 6

3.1.1 Observability-enhancing Guidance

In fully observable frameworks, the problem of deciding how to move is typically decoupled from the

estimation problem. However, in situations where motion can critically assist the observability, or in-

deed be a necessary condition, it is beneﬁcial to consider the two problems together. [10], [11], [12],

and [13] explore strategies for trajectories that enhance the observability of the problem, and hence,

the performance of the related estimation algorithms. Some of these works are based on geometric

considerations, and provide particular trajectories that can improve or guarantee the observability of

the manoeuvre. For example, [12] addresses the possibility of using spiralling trajectories and hints

at their interesting properties in terms of estimation performance. However, a formal understanding

and design of trajectories is not presented. [10], on the other hand, is focused on establishing the con-

cept of “observability degree” and derive a metric for the range estimation error related to the actual

distance, the angular difference between the trajectory with and without manoeuvre, and the measure-

ment error. Their next step is to use this metric as a cost function in a minimization problem that is

solved analytically for an impulsive manoeuvre and provides interesting insight into the optimal tra-

jectories. In the context of a real mission, these approaches are very interesting as stepping stones, but

when considering operational constraints the solution of such an optimization problem becomes more

complex. Not only are nonlinear non-convex problems harder to solve, an on-board solution needs to

be solvable fast and deterministically. Therefore, the optimization problem is transcribed in order to

result in a convex QP problem, since linear or quadratic optimization problems are guaranteed to be

solvable in a ﬁnite and possibly known number of iterations [14]. The approach proposed in [13], is to

obtain a discretized trajectory in n steps, with n possible inputs, which allows for quadratic program-

ming. The resulting optimization variables are the relative states in all steps, the controls, and slack

variables used to encode the norm constraints linearly. The constraints considered are the discrete

relative motion dynamics (discretized from analytically integrating the Clohessy-Wiltshire equations,

applicable only to circular orbits), boundary conditions (initial and ﬁnal state), thruster saturation,

and manoeuvre objectives (approach corridors, collision avoidance). When the optimization problem

is convex, it allows to correct the rendezvous planning multiple times along the trajectory. This is,

in fact, similar to model predictive control schemes with dynamic avoidance constraints. Bridging

this approach to the typical MPC scheme, it should be noted that the typical receding time horizon

is replaced by a ﬁxed ﬁnal set point, shrinking the time horizon accordingly. This approach to the

design of a guidance function has a natural formulation as a trajectory optimization problem with a

ﬁxed-horizon. An online computation (on-board or ground-based) of the trajectory that is updated

every time step according to the current knowledge provided by the estimation ﬁlter and taking into

account eventual errors in previous manoeuvres. Noting that the optimization problem is updated

every step, and only the ﬁrst manoeuvre is executed before a new plan is optimized, this guidance

function ﬁts directly in the Model Predictive Control area, noting that the last step of optimization is

ﬁxed instead of receding, and the horizon is shrinking.

Cost function The cost function to be considered has two main terms, an actuation cost and an

observability cost. The former is

Jf=

N(t)−1

X

k=0

1T|uk|(1)

where 1∈R3is a vector of ones used to sum the absolute values of each input. The observability cost

is based on the work in [9] and [13]. These costs proposed are not convex, and, as such, are convex-

iﬁed by means of slack variables and previous trajectory information. Furthermore, it became clear

during the activity that the above observability cost does not correlate perfectly with the observability

ESA GNC 2021 – P. Serra 7

of the range, instead being replaced by the angle between the would-be trajectory and the actual one

(or its cosine, in fact):

Jo=

N(t)−1

X

k=0

xkΦT(tk+1, tk)STS(Φ(tk+1, tk)xk+G(tk+1, tk)uk))

kΦ(tk+1, tk)xkk kS(Φ(tk+1, tk)xk+G(tk+1, tk)ukk(2)

where Sselects the relative position component.

Dynamic model The propagation methods analysed for GUIBEAR can be separated into numerical

non-linear propagation and linearized propagation. The baseline trajectories of chaser and target have

been obtained through a numerical integration of the equations of motion. These equations include

central forces from the gravity of the Earth and the Moon:

aSC =−GMEarth

krSC −Earth k3rSC−Earth −GMM oon

krSC −Moon k3rSC −Moon (3)

Expressed as the 6 ﬁrst order differential equations

˙

rSC

˙

vSC =f(vS C ,aSC ) = vSC

aSC .(4)

This propagation method considers an inertial frame centred at the Earth-Moon barycentre that is

parallel to J2000. The position of the Earth and the Moon is obtained through an ephemeris model of

the two bodies (from JPL ephemeris). The initial conditions of the Target (which follows an NRO)

is obtained through a process of differential correction to obtain a semi-stable trajectory, whereas the

chaser trajectory is obtained through mission analysis. Both the differential correction process and the

mission analysis are detailed in Error! Reference source not found.. The trajectories obtained through

this numerical integration are considered the reference trajectories, and the different linearized meth-

ods are compared to these references. The trajectory of the target is considered as reference, and the

trajectory of the chaser is a deviation with respect to the reference. The method chosen is based on a

computation of the state transition matrix (STM), which maps an initial state 0 to a ﬁnal state f as:

xf=Φ(tf, t0)x0=Φrr (tf, t0)Φrv(tf, t0)

Φvr (tf, t0)Φvv (tf, t0)r0

v0(5)

which can be obtained as a solution to the system

˙

Φ(t, t0) = ∂f

∂x

|{z}

A(t)

Φ(t, t0),Φ(t0, t0) = I(6)

The approach consists on integrating the system (6) numerically. The matrix A(t)∈R6×6is evaluated

at each point in time using the reference trajectory of the target.

While the numerical propagation of the STM seems expensive at ﬁrst, the computation of the STM

depends only on the trajectory of the target, the Moon and the Earth. These three elements are known

a priori on ground, so it is possible to propagate the STM numerically on ground for an arbitrarily

large interval (e.g. one NRO period, or a few days around the aposelene), perform a ﬁtting of the

STM coefﬁcients on ground and then sending/storing them on the OBSW. With this approach, the

STM would be obtained in a similar way as planetary ephemeris are used, requiring a small number

of operations to evaluate a polynomial. Analysis results show that a ﬁtting using polynomials of order

6 to 8 provide results that are good for the applications proposed. Furthermore, it could be possible to

obtain the STM between any given interval by applying STM composition rules (generally requiring

the evaluation of 2 STM and inverting one of them).

ESA GNC 2021 – P. Serra 8

Constraints The (convex) constraints considered in the guidance design are (i) maximum delta-

V per manoeuvre; (ii) total delta-V budget; (iii) target rendezvous sphere avoidance; (iv) escape

trajectory avoidance; and (v) passive safe trajectory enforcement.

Model Predictive Control Within the GUIBEAR project, the software tool MPCSofT developed

during the project “ROBMPC – Robust model predictive control of space constrained systems” (2010-

2012) has been modiﬁed to support the features needed to formulate and solve the MPC problem

proposed above to control far-range bearings-only rendezvous in NRO. The original implementation

of the toolbox MPCSofT lacked some of the features needed to handle the peculiarities of the MPC

problems arising in the context of the GUIBEAR scenarios. Speciﬁcally, such peculiarities consist in

the presence in the cost function of: (i) a linear term, aimed at minimizing fuel consumption, (ii) a

positive semideﬁnite quadratic term, aimed at enhancing the observability of the trajectory, that may

render the problem not strictly convex. In order to overcome these limitations, some improvements

to the toolbox have been carried out and the current MPC formulation supported by the toolbox has

been modiﬁed to enable the user to minimize linear terms in the cost function.

The LTV-MPC toolbox MPCSofT2.0 relies on a Simulink Library that includes a block for LTV-MPC,

implementing the controller in Embedded MATLAB (EML). MPCSofT used to be interfaced to the

QP solver that was available from the MPC Toolbox for MATLAB in 2010. Such QP solver was based

on rather classical active-set methods for strictly convex QPs , and therefore appeared not tailored to

address the solution of QP problems such as those arising in the GUIBEAR scenarios, in which, due

to the observability-enhancing cost, the Hessian matrix is positive semideﬁnite. In order to overcome

this issue, MPCSofT2.0 was interfaced to two more recent QP solvers, both based on the alternating

direction method of multipliers (ADMM) [15] namely: (i) a QP solver internally developed at ODYS,

that implements the ADMM in EML and is therefore tailored for code generation, (ii) the open-source

solver osQP [16], which is called by MPCSoFT2.0 through its MATLAB interface.

3.2 Navigation

The developed Navigation algorithm is based on batch ﬁltering that processes Image Processing mea-

surements and, in between ﬁlter updates, it propagates the translational states based on the dynamics

model. The approach followed has resulted in a very efﬁcient method since the batch ﬁltering is less

sensible to measurement noise due to the fact that a large number of measurements are used to ﬁt

the relative dynamics. On the other hand, as the Image Processing is the only relative sensor, it is

certainly understandable that the Navigation performance is highly connected to the Image Process-

ing performances and measurement availability. Within GUIBEAR, the approach followed has been

to implement an Image Processing Performance Model to mimic the behaviour of the IP algorithms

both in the measurements performance and the availability in function of the distance and the angu-

lar velocity of the object within the camera frame. Indeed, based on a camera model implemented

in PANGU [17] and tuned with respect to the parameters of the selected camera, different synthetic

images have been generated. The different synthetic images are used to build an Image dataset, which

then serves as input to the real Image Processing algorithm (IP Functional Model). The outputs of

the IP functional models have been statistically analysed in order to derive the performance of the

measurements and the probability of providing measurements of the IP algorithms. The estimated

statistical quantities have been used to derive the IP performance model that is integrated in the Func-

tional Engineering Simulator (FES) together with the GNC algorithms.

This section includes a summary of the batch processor algorithm used in the state estimation. The

summary includes a general description of the algorithm, plus speciﬁc points that apply to the GUI-

BEAR scenario. A more detailed mathematical description and derivation of the algorithm is included

ESA GNC 2021 – P. Serra 9

in [18].

3.2.1 Batch ﬁlter

The objective is to estimate a deviation vector x0at a reference time t0. The information provided is

the initial condition x(t0), an a priori estimate of the initial condition ¯

x0and its associated covariance

matrix P−

0. An estimate of the deviation vector ˆ

x0is obtained solving the normal equation

Λ0ˆ

x0=HTR−1y+¯

P−1

0¯

x0,(7)

where yi=h(x(ti), ti)is the measurement vector, Ris the measurement covariance, Λ0is the

information matrix, given by

Λ0=HTR−1H+¯

P−1

0,(8)

and His the observation-state mapping matrix, evaluated at the reference trajectory mapped to the

reference time, as in

Hi=∂h(x(ti), ti)

∂xΦ(ti, t0).(9)

In this activity, the observation transformation h(x(ti), ti)is deﬁned as a projection of the target state

vector in camera frame, scaled with the camera focal length.

The measurement noise covariance is considered as a diagonal matrix for each measurement, with

value R=σ2

pxI, where σ2

px is the variance of the measurement noise, considered constant for every

measurement.

The state propagation is performed by linearly mapping a state vector from a reference time to a time

iusing the state transition matrix. The state vector at a time iis a linear combination of the state

vector at the reference time, plus the effect of each manoeuvre, mapped from manoeuvre time to time

i:

xi=Φ(ti, t0)x0+

m

X

n=1

Φ(ti, tn)∆vn(10)

The state transition matrix deﬁned depends on the trajectory of the target, it is not modiﬁed by the

manoeuvres and only depends on the initial and ﬁnal times. Because of that, the state propagation can

be arranged into a single matrix product with an augmented state transition matrix and an augmented

state vector, xi=Φ∗(ti, t0)X∗

0=Φ(ti, t0)Φ(ti, tm)· · · Φ(ti, t1)xT

0∆vT

m. . . ∆vT

1T.

Since the reference trajectory is propagated linearly, both the reference and the deviation with respect

to the reference are propagated using the same approach. Finally, the a priori covariance is obtained

for the augmented state vector using the ground tracking estimate and an estimation of the manoeuvre

execution. ¯

P0= diag σ2

x0I, σ2

∆vI.

3.2.2 Analysis

During the activity, an analysis and trade-off of bearings-only navigation approaches based on the

batch least-squares processor described above was performed. The ﬁrst objective was to deﬁne a mea-

surement strategy, i.e. number and distribution of measurements, considering the relevant parameters

of the problem, which are enumerated and deﬁned below. The second objective was to understand

the impact of each parameter in the solution obtained, which can be used as an iteration with the

requirements. In summary, the navigation strategy should consider the following conclusions:

• Both manoeuvre size and manoeuvre estimation are important parameters when improving the

radial component estimation. A budget of the order of 20 m/s could provide solutions with

ESA GNC 2021 – P. Serra 10

a standard deviation of the initial condition of 3 km, but this budget is only accessible if the

MPC has control over the insertion manoeuvre. To reduce the number of manoeuvres, each

manoeuvre needs to have a value of at least 1 m/s. The manoeuvre estimation error needs to

be of the order of 1 cm/s, but the combination of larger manoeuvres and smaller errors has not

been analysed in detail, a preliminary limit of manoeuvre estimation error is set to 1%.

• It would be necessary to rely on a more accurate propagation and estimation of the state tran-

sition matrix to improve the solutions and beneﬁt from smaller manoeuvre estimation errors.

Considering the current navigation errors and the navigation objective, this update does not

seem necessary at this moment.

• Several successive measurements can be used to improve the solution, which have the effect

of reducing the measurement noise. If the measurement noise was reduced, the number of

measurements could be reduced. However, to be compatible with conservative values (1 px

3σ), 3 to 5 measurements seem to be enough.

• Distancing the measurement to increase the change in angle optimizes the measurement place-

ment.

• The current values for ground tracking estimation errors (6 km, 12 cm/s, 1σ), in combination

with the rest of uncertainties using conservative values, produce solutions that have a position

error of 0.4 % with respect to the distance and a velocity error of 0.4% with respect to the

relative velocity. It was expected to maintain the percentage over the entire scenario, obtaining

Navigation error improved of 1 order of magnitude with respect to the error considered without

GUIBEAR.

• The current combination of noise and parameters appears to be robust to large uncertainties.

4 SIMULATION RESULTS

The main objective of the GUIBEAR G&N system is to ensure that the mission vehicle arrives at

the hold point (HP) within the speciﬁed area and performs the insertion manoeuvre successfully.

The G&N must tackle the optimization objectives and constraints while dealing with uncertainty in

some parameters in the system, sensor noise, and external disturbances. Given the closed-loop nature

of the guidance function the DDVV process has some similarities to the design of a control system,

including the synthesis and ﬁrst analysis of the G&N functions. However, the performance assessment

is done by means of a SW Functional Engineering Simulator (FES). The FES for detailed performance

assessment contains high ﬁdelity models that are non-linear, in general. Additionally, other aspects of

the mission such as the Mission & Vehicle Management functions and the mode transition logic can be

considered. In this phase, the G&N performance was evaluated against speciﬁc mission requirements,

deﬁned in the mission domain (e.g. fulﬁlment of HP requirement or fuel consumed).

Figures 3 and 4 show the nominal navigation performance of the two MPC-based scenarios, and table

2 allows to compare the three main scenarios statistically (and which can be directly compared, as

the insertion is based on on-board navigation for all three). From this analysis, it is clear that the

introduction of observability-enhancing manoeuvres has a beneﬁcial effect. Furthermore, the fully

optimized Scenario 3 shows the best performance, as expected.

The comparison in tables 3 and 4 again shows the good performance of the overall G&N, as it allows

reducing the position and velocity dispersion when compared to the online planned insertion with no

guidance. This reduction has a signiﬁcant impact, because it will not only allow a better planning

ESA GNC 2021 – P. Serra 11

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-15

-7.5

0

7.5

15

Position Error [km]

Position Estimation Error in X-Axis

Error

3

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-15

-7.5

0

7.5

15

Position Error [km]

Position Estimation Error in Y-Axis

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-15

-7.5

0

7.5

15

Position Error [km]

Position Estimation Error in Z-Axis

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-4

-2

0

2

4

Range Error [km]

-0.6

-0.3

0

0.3

0.6

Range Error [%]

Range Estimation Error

Real

Relative

REQ

Figure 3: Navigation results for Scenario 2.

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-15

-7.5

0

7.5

15

Position Error [km]

Position Estimation Error in X-Axis

Error

3

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-15

-7.5

0

7.5

15

Position Error [km]

Position Estimation Error in Y-Axis

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-15

-7.5

0

7.5

15

Position Error [km]

Position Estimation Error in Z-Axis

0 2 4 6 8 10 12 14 16 18 20

Time [h]

-3

-1.5

0

1.5

3

Range Error [km]

-2.5

-1.25

0

1.25

2.5

Range Error [%]

Range Estimation Error

Real

Relative

REQ

Figure 4: Navigation results for Scenario 3.

of the rendezvous, but also a reduction on delta-V spent to correct for it. This fact, allowed with the

signiﬁcantly improved knowledge of the relative state can lead to a less strict mission analysis plan,

allowing the rendezvous to start closer to the target, again reducing delta-V expenditure as seen in

table 5.

The delta-V budget allocated for the GUIBEAR approach is, naturally, constrained by the mission

analysis and the end-to-end results of NRO-GNC [5]. It is clear that the considerations of that activity

did not take into account the possibility of performing an on-board optimized trajectory to approach

the hold point for preparation of the rendezvous, nor the existence of a long range navigation function

that could improve on the costly and infrequent ground estimates. For that reason, the insertion

manoeuvre was planned with a large dispersion in mind, stemming from the TCM. With GUIBEAR,

it is not only possible to have a bearings-only navigation that provides timely estimates of the relative

position and velocity of the target, but also to plan the trajectories taking into account these. This

comes, naturally, at a cost of delta-V but not of extra sensors. The analysis present in this paper shows

that a very small delta-V budget dedicated for observability-enhancing manoeuvres does help the

navigation performance and the observability, but its inﬂuence is limited. However, larger manoeuvres

ESA GNC 2021 – P. Serra 12

Table 2: Statistical results of the Range Estimation Error before the NIM for the main cases.

Range Estimation Scenario 1-OI Scenario 2 Scenario 3

Metric: 5% 5% 5%

Mean: 9.7462% 1.2624% 1.1874%

Std. Deviation: 17.708% 1.2424% 1.2362%

Success Rate: 65.5% 97.9021% 99%

Table 3: Statistical results of the position dispersion at Hold Point for the main cases

Position disp. (km) Scenario 1-OI Scenario 2 Scenario 3

Metric (worst axis): 17 (Y axis) 17 (Z axis) 17 (Z axis)

Mean: 10.7046 7.7466 4.4589

Std. Deviation: 11.4983 4.7605 2.2293

Success Rate: 81.5% 98.6014% 100%

have a signiﬁcant effect.

The test results indicate that the GUIBEAR G&N can perform with good results the approach and

insertion to the near-rectilinear orbit of the LOP-G, indeed improving on the nominal scenario both in

state dispersion and knowledge with a small delta-V cost. In particular: (i) The on-board G&N is ca-

pable of performing the insertion manoeuvre in the nominal terms, i.e., by considering fuel-optimality

and replacing the ground navigation and a priori computed insertion manoeuvre. (ii) Generated tra-

jectories are inherently safe through optimization constraints. (iii) Small manoeuvres do improve the

navigation performance to a limited extent. (iv) Letting the on-board optimization take care of the

insertion, with the increased delta-V budget associated, is a good option in terms of better use of the

manoeuvres for observability. (v) Having an off-pointing of 5 degrees reduces the detection range to

a little above 1000 km. This is within the requirements but can be signiﬁcantly improved with a small

pointing error. However, that has thermal and power implications.

5 CONCLUSIONS AND FUTURE WORK

The GUIBEAR project has demonstrated that bearings-only navigation for far-range rendezvous is

feasible from the point of view of the G&N. The current G&N design improves on the previously

analysed approach to the end of the orbit transfer phase of the LAE when rendezvousing the LOP-

G at the small added cost of a delta-V expenditure of few meters per second. In particular: (i) the

post-insertion dispersion can be about 4x below (3σ) what is achieved with the pre-planned insertion

nominally considered in NRO-GNC, and up to 6x below in terms of velocity dispersion; (ii) the

navigation estimates have an average accuracy of one order of magnitude better than that achievable

without GUIBEAR; and (iii) the propellant consumption required for the good results above is on

the order of 5 m/s above that of the pre-planned insertion, and, with as low as 1 m/s in average it is

possible to achieve performance improvements, by following Scenario 2. The MIL tests have shown

that the GNC software is capable of fulﬁlling all functions and with adequate performance for the

current phase of the activity. The GNC is compliant with the requirements deﬁned at the start of the

activity, an aspect that is aided by the optimization-based design of the guidance function since the

requirements can be translated into optimization constraints, thus resulting in correct trajectories by

design. The sensor models that were used in the real world were relatively simple, mostly consisting

of behavioural models of sensors and actuators. The interfaces of these models do not correspond to

the interfaces of any real, existing hardware. To further increase the TRL of the GNC, representative

ESA GNC 2021 – P. Serra 13

Table 4: Statistical results of the velocity dispersion at Hold Point for the main cases

Velocity disp. (m/s) Scenario 1-OI Scenario 2 Scenario 3

Worst axis: Y axis Y axis Y axis

Mean: 1.1238 0.19221 0.29872

Std. Deviation: 1.7218 0.16201 0.20381

Table 5: Statistical results of the delta-V consumption for the main cases

Delta-V (m/s) Scenario 1-PI Scenario 1-OI Scenario 2 Scenario 3

Planned Extra delta-V compared to the planned insertion

Mean: 20.4144 -1.4523 1.0893 5.4418

Std. Deviation: 6.7249 1.9717 1.0781 2.3319

interfaces with the sensors and actuators, as well as representative sensor pre-processing functions

will need to be added to the GNC. This implies that more representative models of the sensors and

actuators will need to be developed and included in the real-world model.

As mentioned throughout the paper, the GUIBEAR activity has been focused on the development of

G&N functions for the HERACLES mission scenario with the LAE vehicle. Within the duration of

the activity, the HERACLES mission deﬁnition has changed due to the programmatic change of the

Lunar Gateway. The mission has evolved in 2 different activities: the ESA-EL3 (European Logistic

Lunar Lander) activity and the ESA CLTV (Cis-Lunar Transfer Vehicle). At the current time, a

sample-return is not being considered for EL3, and therefore the HERACLES assumptions are not

currently valid. However, CLTV (Cis-Lunar Transfer Vehicle) will require to dock with the Gateway,

and could therefore beneﬁt from the design and the results obtained within the GUIBEAR activity. A

dedicated step to adapt the design to the CLTV mission scenario and vehicle has been consequently

envisaged as natural continuation of the GUIBEAR activity.

REFERENCES

[1] G. Gaias, S. D’Amico, and J.-S. Ardaens, “Angles-Only Navigation to a Noncooperative Satel-

lite Using Relative Orbital Elements,” Journal of Guidance, Control, and Dynamics, vol. 37,

no. 2, pp. 439–451, Mar. 2014.

[2] S. D’Amico, J.-S. Ardaens, G. Gaias, H. Benninghoff, B. Schlepp, and J. L. Jørgensen, “Non-

cooperative Rendezvous Using Angles-Only Optical Navigation: System Design and Flight Re-

sults,” Journal of Guidance, Control, and Dynamics, vol. 36, no. 6, pp. 1576–1595, 2013.

[3] J. Grzymisch and W. Fichter, “Nonlinear pseudo-measurement ﬁltering for in-orbit bearings-

only navigation,” IEEE Transactions on Aerospace and Electronic Systems, vol. 51, no. 4, pp.

2747–2759, Oct. 2015.

[4] L. Bucci, A. Colagrossi, and M. Lavagna, “Rendezvous in Lunar Near Rectilinear Halo Orbits,”

Advances in Astronautics Science and Technology, vol. 1, no. 1, pp. 39–43, Sep. 2018.

[5] Thomas V. Peters, Jos´

e Francisco Briz Valero, Ferdinando Cometto, Marco Berga, Jos´

e´

Alvaro

P´

erez Gonzalez, Aur´

elien Cuffolo, and Alexander Cropp, “GNC for Lunar Ascent, Orbit Trans-

fer and Rendezvous in Near-Rectilinear Halo Orbits,” in Proceedings of the 70th International

Astronautical Congress, Washington D.C., USA, Oct. 2019.

ESA GNC 2021 – P. Serra 14

[6] Thomas V. Peters, Jos´

e Francisco Briz Valero, Pedro Serra, Pedro Lourenc¸o, Ferdinando

Cometto, Marco Berga, Jos´

e´

Alvaro P´

erez Gonzalez, Aur´

elien Cuffolo, and Alexander Cropp,

“Design and testing of the GNC for the HERACLES Lunar Ascent Element,” in Proceedings of

the 11th International ESA Conference on Guidance, Navigation & Control Systems. Sopot,

Poland (Virtual): ESA, Jun. 2021.

[7] U. Eren, A. Prach, B. B. Koc¸er, S. V. Rakovi´

c, E. Kayacan, and B. Ac¸ıkmes¸e, “Model Predictive

Control in Aerospace Systems: Current State and Opportunities,” Journal of Guidance, Control,

and Dynamics, vol. 40, no. 7, pp. 1541–1566, Jul. 2017.

[8] D. C. Wofﬁnden and D. K. Geller, “Observability Criteria for Angles-Only Navigation,” IEEE

Transactions on Aerospace and Electronic Systems, vol. 45, no. 3, pp. 1194–1208, Jul. 2009.

[9] J. Grzymisch and W. Fichter, “Observability Criteria and Unobservable Maneuvers for In-Orbit

Bearings-Only Navigation,” Journal of Guidance, Control, and Dynamics, vol. 37, no. 4, pp.

1250–1259, Jul. 2014.

[10] D. C. Wofﬁnden and D. K. Geller, “Optimal Orbital Rendezvous Maneuvering for Angles-Only

Navigation,” Journal of Guidance, Control, and Dynamics, vol. 32, no. 4, pp. 1382–1387, 2009.

[11] J. Grzymisch, W. Fichter, D. Losa, and M. Casasco, “Bearings-Only Rendezvous with Enhanced

Performance,” in Advances in Aerospace Guidance, Navigation and Control, J. Bordeneuve-

Guib´

e, A. Drouin, and C. Roos, Eds. Springer International Publishing, 2015, pp. 571–590.

[12] J. Spurmann, “Spiraling Approach for Angles-Only Navigation within On-Orbit Servicing Mis-

sions,” in Advances in Aerospace Guidance, Navigation and Control, F. Holzapfel and S. Theil,

Eds. Springer Berlin Heidelberg, 2011, pp. 465–472.

[13] J. Grzymisch and W. Fichter, “Optimal Rendezvous Guidance with Enhanced Bearings-Only

Observability,” Journal of Guidance, Control, and Dynamics, vol. 38, no. 6, pp. 1131–1140,

Jun. 2015.

[14] J. Nocedal and S. Wright, Numerical Optimization, 2nd ed., ser. Springer Series in Operations

Research and Financial Engineering. Springer, 2006.

[15] S. Boyd, N. Parikh, E. Chu, B. Peleato, and J. Eckstein, “Distributed optimization and statistical

learning via the alternating direction method of multipliers,” Found. Trends Mach. Learn., vol. 3,

no. 1, pp. 1–122, Jan. 2011.

[16] G. Banjac, B. Stellato, N. Moehle, P. Goulart, A. Bemporad, and S. Boyd, “Embedded code

generation using the OSQP solver,” in IEEE conference on decision and control (CDC), 2017.

[17] Ian M. Martin, Martin N. Dunstan, and Manuel Sanchez Gestido, “Planetary Surface Image

Genertion for Testing Future Space Missions with PANGU,” in Proceedings of the 2nd RPI

Space Imaging Workshop, Saratoga Springs, NY, USA, Oct. 2019.

[18] B. Schutz, B. Tapley, and G. Born, Statistical orbit determination. Elsevier Science, 2004.

ESA GNC 2021 – P. Serra 15