Next Article in Journal
Data Downloaded via Parachute from a NASA Super-Pressure Balloon
Next Article in Special Issue
Generation of Secondary Space Debris Risks from Net Capturing in Active Space Debris Removal Missions
Previous Article in Journal
The Influence of External Flow Field on the Flow Separation of Overexpanded Single-Expansion Ramp Nozzle
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:

Autonomous Optimal Absolute Orbit Keeping through Formation Flying Techniques

Ahmed Mahfouz
Gabriella Gaias
D. M. K. K. Venkateswara Rao
1 and
Holger Voos
Interdisciplinary Centre for Security, Reliability and Trust (SnT), University of Luxembourg, 29, Avenue J.F Kennedy, 1855 Luxembourg, Luxembourg
Department of Aerospace Science and Technology, Politecnico di Milano, 34, Via La Masa, 20156 Milan, Italy
Faculty of Science, Technology and Medicine, University of Luxembourg, Avenue de l’Université, 4365 Esch-sur-Alzette, Luxembourg
Author to whom correspondence should be addressed.
Aerospace 2023, 10(11), 959;
Submission received: 16 October 2023 / Revised: 7 November 2023 / Accepted: 10 November 2023 / Published: 13 November 2023


In this paper, the problem of autonomous optimal absolute orbit keeping for a satellite mission in Low Earth Orbit using electric propulsion is considered. The main peculiarity of the approach is to support small satellite missions in which the platform is equipped with a single thruster nozzle that provides acceleration on a single direction at a time. This constraint implies that an attitude maneuver is necessary before or during each thrusting arc to direct the nozzle into the desired direction. In this context, an attitude guidance algorithm specific for the orbit maneuver has been developed. A Model Predictive Control scheme is proposed, where the attitude kinematics are coupled with the orbital dynamics in order to obtain the optimal guidance profiles in terms of satellite state, reference attitude, and thrust magnitude. The proposed control scheme is developed exploiting formation flying techniques where the reference orbit is that of a virtual spacecraft that the main satellite is required to rendezvous with. In addition to the controller design, the closed-loop configuration is presented supported by numerical simulations. The efficacy of the proposed autonomous orbit-keeping approach is shown in several application scenarios.

1. Introduction

In recent years, the adoption of electric propulsion has become more popular among small satellite designers [1]. This trend is driven by the fact that electric propulsion systems are generally more sustainable and more efficient in terms of propellant usage in comparison to chemical propulsion ones. Moreover, electric thrusters could support large maneuvers while being smaller in size and lighter in weight than their chemical counterparts. This, in turn, can allow the allocation of more space/weight for the payload, and in many cases permits successful integration within some launchers that would be infeasible for the satellite if it were equipped with chemical thrusters.
One of the satellites designed to accommodate an electric propulsion system is Triton-X-Heavy [2] (referred to as Triton-X in the discussions that follow), which is a high-performance multi-mission microsatellite platform developed by LuxSpace for Low Earth Orbit (LEO) operations. To permit orbit correction and orbit-transfer maneuvers, Triton-X is equipped with one throttleable electric thruster aligned with its body frame’s z-axis.
Thanks to the simple design of the propulsion system, which requires minimal size and mass budgets, the satellite could be designed with a high level of flexibility, which permits the accommodation of a wide spectrum of payloads. However, having only one thruster onboard comes with its own challenges. For instance, the guidance and control schemes have to be optimized for the unidirectional thrust system, in the sense that attitude and orbit control systems have to be coupled to ensure that the thruster is always aligned with the desired firing direction. Moreover, this need becomes more relevant for orbit corrections that have to be performed on a limited time frame and/or when a very low thrust level is available.
To prepare Triton-X for its prospective missions, the AuFoSat project has been initiated to provide a ready-to-use Guidance, Navigation, and Control (GNC) toolbox specifically tailored for the specifications of Triton-X, which could be seamlessly used to also support formation flying (FF) applications. Previous AuFoSat research concentrated on orbit design [3], and on the relative navigation problem using the onboard sensors of Triton-X [4,5]. This paper, as part of AuFoSat, is focusing on optimal absolute orbit keeping for LEO satellites equipped with a single electric thruster. The problem is approached using formation flying techniques, meaning that Triton-X is assumed to be flying in formation with a virtual chief. Namely, when an orbit transfer maneuver is defined, the chief’s orbit is set as the target one, and the satellite is ultimately required to rendezvous with the virtual chief. On the one hand, opting for the exploitation of FF techniques enables the developed guidance and control schemes to be directly used in multi-satellite scenarios. On the other hand, the absolute orbit control problem can be efficiently tackled by linearizing the orbital dynamics around the reference desired trajectory. In this context, the relative orbit between the satellite and the virtual target can be formulated using the Relative Orbital Elements (ROEs), which render the linearized relative orbital dynamics with high levels of accuracy for neighboring orbits.
Many contributions on autonomous absolute orbit keeping for LEO satellites have been introduced over the last few decades [6,7,8,9]. Among the many, formation flying techniques were used for absolute orbit control in [10], where the spacecraft had to maintain its ground track close to a reference trajectory computed as the orbit of a virtual chief satellite. A specific set of variables was used to parameterize the relative motion and linear and quadratic optimal regulators were employed. In [11,12], formation reconfiguration with realistic mission constraints was considered. The proposed control schemes on these two articles relied on candidate Lyaponuv functions that comprised artificial potential around the prohibited areas (in the decision variables’ space), which guided the main satellite to follow feasible trajectories without having to solve an optimization problem. The main drawback of this approach is that the trajectories followed by the spacecraft are neither fuel- nor time-optimal. All the aforementioned contributions considered only satellites with 3D thrusting capabilities, and most of them adopted impulsive thrust. One mission that adopted a single impulsive thruster is the Autonomous Vision Approach Navigation and Target Identification (AVANTI) experiment [13], where a specific guidance scheme was adopted to include no-control windows that allowed the re-orientation of the available nozzle [14,15]. Furthermore, in [16], formation flying techniques were used to develop a control scheme that constantly corrected the orbit drifts of the satellite that comprised a single impulsive thruster. The satellite used a passive magnetic attitude control system to stabilize its longitudinal axis, along which the thruster was mounted, along the induction vector of the local geomagnetic field.
The only research, to the authors’ knowledge, that addresses the problem of absolute orbit control for unidirectional low-thrust satellites is [17]. Nonetheless, it does not consider the coupled attitude evolution, making such approach not suitable for prompt orbit corrections. Moreover, in [17], both the navigation and actuator errors were also not considered.
In this paper, a Model Predictive Control (MPC) scheme is proposed that couples the attitude and the relative translational equations, where the relative dynamics are formulated in the ROE space. In this setting, the MPC uses an attitude control surrogate model to emulate the functioning of Triton-X’s attitude control system as well as the ROE-based linearized relative dynamical model to predict the satellite’s future roto-translational state. The output of the MPC is a tuple that contains the optimal acceleration that should be provided by the thruster as well as the optimal desired attitude that the attitude control system needs to steer the satellite to. The overall cost function of the MPC at each receding horizon is a trade-off between delta-V optimality, time optimality, and attitude effort optimality, and is specifically designed for the purpose of small orbit changes (less than 1 km) as typically encountered in absolute orbit control problems around a reference orbit. The original contributions of the proposed approach are as follows:
  • Considering the coupled attitude/relative orbit problem in the control loop;
  • Proposing an MPC scheme for a satellite with a unidirectional propulsion system where the thrust can also be provided during slew maneuvers.
The following section of this paper introduces the formulation of the relative orbital dynamics in the ROE space as well as the adopted surrogate model for the attitude control system. In Section 3, the MPC problem is formally established in the sense that the employed cost function is introduced and the inherent constraints of the problem in hand are presented. The problem of MPC parameter tuning as well as the module execution logic of the closed control loop are discussed in the same section. The stability of the proposed MPC scheme is then tested by means of a Monte Carlo simulation in Section 4, and the proposed MPC is benchmarked against that introduced in [17].

2. Mathematical Models

In this section, the dynamical models used in developing the control schemes are presented. At first, the reference frames used in the research are identified, then the relative orbital dynamics of the deputy spacecraft with respect to the chief (virtual) satellite are shown, and finally the attitude kinematics are introduced.
The following reference frames are used in developing the dynamic models as well as the control scheme:
Earth-centered inertial frame:
The employed Earth-Centered-Inertial (ECI) reference frame, F i , is defined by True-of-Date coordinate system with its origin at the center of the Earth, its x-axis along the true vernal equinox at the current epoch, its z-axis is aligned with the true rotation axis at the current epoch, while its y-axis completes the right-handed triad. A vector expressed in the ECI frame is signified by the · i superscript.
Satellite-body-fixed frame:
The body-fixed reference frame, F b , is a reference frame attached to the spacecraft in question with the origin at the satellite’s center of mass. One common choice of the directions of the three axes is along the three principal axes of inertia of the satellite. A vector expressed in the body-fixed frame of the satellite will have the superscript · b .
Radial–transversal–normal frame:
The radial–transversal–normal (RTN) frame, F r , is centered on the center of mass of the chief satellite, where the x-axis of the RTN frame is defined to be along the position vector of the chief satellite, positive towards the Zenith direction, the z-axis is directed along the chief’s orbital angular momentum vector, and the y-axis completes the right-handed set. In the sequel, a vector expressed in the RTN frame is signified by the · r superscript.
Here, and in the discussions to follow, superscripts refer solely to frame labels.

2.1. Relative Orbital Dynamics

The orbital motion of a satellite under the gravitational influence of a major body (e.g., the Earth) can be parameterized in a planet-centered inertial frame using the following set of orbital elements:
α : = a θ e x e y i Ω ,
where a is the semi-major axis, θ = M + ω is the argument of latitude with M being the mean anomaly and ω being the argument of periapsis, e : = e x e y = e cos ω e sin ω is the eccentricity vector with e being the orbital eccentricity, i is the orbital inclination, and Ω is the Right Ascension of the Ascending Node (RAAN). If a Cartesian state vector is used, then the motion of the satellite in the planet-centered inertial frame is parameterized by x i : = r i v i , where r i and v i are the absolute position and velocity vectors. These latter are related to the orbital elements through a set of nonlinear equations. Spacecraft position and velocity transform into osculating orbital elements, which in the remainder of this work will be denoted by α ˜ . Mean orbital elements, denoted by α , are to be intended as one-orbit averaged elements, where the short- and long-term oscillations generated by the J 2 harmonic of the Earth’s gravitational potential are removed. Mean/osculating elements’ conversions are performed through the transformations developed in [18]. To this end, the reader is warned not to confuse i, which refers to the orbital inclination, with vectors expressed in the ECI frame, e.g., x i .
The relative motion between a deputy and a chief spacecraft can be described by the dimensionless quasi-nonsingular Relative Orbital Element (ROE) vector, which is a nonlinear transformation of the orbital elements vector introduced in (1),
δ α : = δ a δ λ δ e x δ e y δ i x δ i y = Δ a / a c Δ θ + Δ Ω cos i c Δ e x Δ e y Δ i Δ Ω sin i c ,
where δ a is the relative semi-major axis, δ λ is the relative mean longitude, δ e : = δ e x δ e y is the relative eccentricity vector, and δ i : = δ i x δ i y is the relative inclination vector. It is important to note that here, and in the sequel, the subscript · d denotes a quantity related to the deputy satellite, while the subscript · c is used for chief-related quantities. Moreover, δ · signifies a relative quantity between the deputy and the chief that is not necessarily the arithmetic difference between that of the deputy and that of the chief, while Δ · signifies the arithmetic difference between · d and · c , i.e., Δ · : = · d · c . As for absolute elements, osculating ROEs are denoted by δ α ˜ , whereas mean ROEs are expressed as δ α . Both sets are computed from the corresponding osculating/mean orbital elements’ set by means of (2).
One of the advantages of the adopted ROEs is that they provide a direct insight on the shape of the relative orbit, unlike the relative position and velocity vectors, which need to be integrated over time in order to obtain a intuition of the relative orbit. Given the set of ROEs in (2), the shape of the relative orbit can be constructed as an ellipse, in both the transversal–radial and normal–radial planes (see Figure 1).
In this work, the adopted relative dynamics are the same as in [19], where the dynamics of the ROEs are linearized to the first order and the secular effect due to the J 2 zonal harmonic is included in the relative motion. The following assumptions apply:
  • Neighboring orbits of the deputy and the chief,
  • Near circular chief’s orbit.
The solution to the linear system under the influence of a constant input acceleration is given in the following form:
δ α t k + 1 = Φ t k , t k + 1 δ α t k + Ψ t k , t k + 1 u r t k , t k + 1 ,
where Φ t k , t k + 1 R 6 × 6 is the State Transition Matrix (STM) between the two time instants, t k and t k + 1 , Ψ t k , t k + 1 R 6 × 3 is the convolution matrix between the same two time instants, and u r t k , t k + 1 R 3 is the acceleration vector in F r , which is constant over the period t k , t k + 1 . The reader is referred to [19] for detailed expressions of Φ t k , t k + 1 and Ψ t k , t k + 1 .
In the sequel, and in order to simplify the representation of equations, the following notations are used: Φ k | k + 1 Φ t k , t k + 1 , Ψ k | k + 1 Ψ t k , t k + 1 , δ α k δ α t k , and u k | k + 1 r u r t k , t k + 1

2.2. Attitude Kinematics

Given that the adopted satellite is equipped with only one thruster, continuous attitude maneuvers are necessary in order to direct the thruster to the desired direction during time-extended orbit maneuvers, which are likely to occur with the available low-thrust level. In this work, it is assumed that the attitude control system of Triton-X is capable of tracking a desired attitude profile. The specifications of the attitude control system are obtained from the publicly available Triton-X brochure (The brochure can be found through: (accessed on 1 August 2023) ). A surrogate model for the Attitude Determination and Control System (ADCS) is presented here, but first the attitude kinematics are introduced.
Let q x y Q , with Q : = { q R 4 : q = 1 } as the unit quaternion that rotates any vector, v R 3 , from one reference frame F y to another frame F x , through
v x = q x y v y q ˜ x y ,
where ∘ is the quaternion multiplication operator, and q ˜ x y is the quaternion conjugate of q x y . Equivalently, the attitude rotation can be performed using the Direction Cosine Matrix (DCM) A q x y A , with A : = { A R 3 × 3 : A A = I } (see Appendix A in [20]) as follows:
v x = A q x y v y .
The attitude kinematics of a rigid body can be described as follows [21]:
q ˙ x y = 1 2 q x y ω y ,
where ω y R 3 is the angular velocity of frame F y with respect to frame F x , expressed in F y .
Letting q q t = q r b t and ω ω t = ω b t , and letting q r q r t be the desired/reference quaternion at time t, (6) can be written as
q ˙ = 1 2 q ω ,
and the error quaternion signal, q e , is defined, in terms of the current attitude and the reference one, as
q e : = q e , 0 Q e : = q ˜ r q .
The ultimate behaviour of an ADCS would be to force the error quaternion to asymptotically approach either 1 0 0 0 or 1 0 0 0 , which could be achieved through forcing the angular velocity, ω , profile to follow
ω = K q e , 0 Q e ,
where K is a positive control gain. The rationale behind why the ω profile is plausible is given in Appendix A.
An additional operational constraint is imposed on the ADCS that dictates that the angular rate around any axis does not exceed the maximum allowable angular rate, i.e., ω ω m a x . To be compliant with the attitude control specifications of Triton-X, the value of K is set to 0.2 , while the value of ω m a x is set to 2 deg/s. Indeed, ω m a x could be found directly in the data sheets. The numerical value of K, instead, has been assessed through numerical simulations in order to properly emulate the behavior of Triton-X ADCS, based on the time duration to perform a 60-degree slew.
Substituting from (9) into (7), the adopted surrogate model for the ADCS is obtained:
q ˙ = 1 2 K q e , 0 q q e .
One thing that has to be acknowledged is that the attitude and angular velocity profiles of the actual satellite could differ slightly from the profiles generated by the surrogate model assumed here, depending on the exact quaternion feedback regulator used by the ADCS as well as the exact inertia tensor of the satellite. Nonetheless, changing the value of K could bring the attitude and angular velocity profiles of the surrogate model very close to those of the actual ADCS. This claim could be verified through benchmarking the surrogate model against a full attitude control system, which uses one of the commonly used feedback regulator proposed in [22], and the results are depicted in Figure 2. It is to be noted that the initial and reference quaternions are randomly chosen for the simulation in Figure 2. Moreover, the subscript · full refers to a quantity relating to the full attitude control model, while the subscript · surr refers to surrogate model quantities.

3. Model Predictive Control

3.1. MPC Problem Formulation

The Model Predictive Control problem is, in its essence, a recurring optimization problem that searches for the optimal control input over the receding control horizon, and, in most cases, also solves for the state variables over the prediction horizon. Only the first control input in the control horizon is realized by the actuators. In the context of our problem, attitude dynamics are coupled with the ROE-based relative translational motion, and the state vector is set to
s = δ α q ,
where the dynamics of the state vector are described by (3) and (10). The control input, on the other hand, is set to
u = u q r ,
where u is the magnitude of the piece-wise constant input acceleration provided by the single thruster, and q r is the desired quaternion. The state vector as well as the control vector are collated over the prediction and the control horizons in the two matrices S and U respectively, such that
S = s 0 s 1 s n p , U = u 0 | 1 u 1 | 2 u n u 1 | n u ,
with n p being the length of the prediction horizon, and n u being the length of the control horizon, where n p n u . It is to be noted that the notations s k : = s t k , where k 0 , 1 , , n p , and u j : = u t j , where j 0 , 1 , , n u 1 , are used, and the time difference between any two consecutive instances is constant and is equal to the user-defined sampling time, i.e., t k + 1 t k = T s . Moreover, after the control horizon is over, the input acceleration is set to zero (i.e., u k = 0 , k n u , n u + 1 , , n p ) and the desired attitude is left to be decided by the mission-specific mode management logic of the ADCS. For the sake of simulating the attitude evolution, the reference attitude at an arbitrary time step beyond the control horizon is set to the quaternion from the previous step. Formally, q r t k = q r t k 1 k n u , n u + 1 , , n p .
It is also important to note that the adopted satellite is assumed, without loss of generality of the approach, to have its thruster directed along the z-direction of its body frame, and hence the input acceleration vectors in F b and in F r can be related as
u r = A q r b u b , u b = 0 0 u .
After having introduced the necessary notations, the optimization problem could then be formulated as follows:
Problem 1. 
min S , U J δ α + J u + J δ q Subject to
s 0 = δ α 0 q 0 ,
δ α k + 1 = Φ k | k + 1 δ α k + Ψ k | k + 1 u ¯ k | k + 1 r , k 0 , 1 , , n u 1 Φ k | k + 1 δ α k , k n u , n u + 1 , , n p 1
q k + 1 = f t k , t k + 1 , q k , q r t k , k 0 , 1 , , n p 1
q k 2 = 1 , k 1 , , n p 1 ,
ω k 2 ω m a x 2 , k 1 , , n p 1 ,
0 u k u m a x , k 0 , 1 , , n u 1 ,
q r t k 2 = 1 , k 0 , 1 , , n u 1 ,
where t 0 , δ α 0 , and q 0 , are the time, dimensionless ROE vector, and quaternion vector, respectively, at the beginning of each horizon. Note that these are receding quantities that are specific to each prediction horizon. Accordingly, they coincide with the quantities at the beginning of the simulation only once, at the time of the first prediction. Moreover, u m a x is the maximum applicable acceleration that can be provided by the thruster, ω is the angular velocity vector of the satellite, and ω m a x is the maximum allowable angular rate around any axis.
Indeed, a constant value for the input acceleration vector, u k | k + 1 r , has to be fed to the ROE dynamics constraint (16). However, the attitude dynamics are much faster than those of the ROE, and since the vector u k | k + 1 r is attitude-dependent, its value can change significantly from t k to t k + 1 , even when u k | k + 1 b is kept constant. Therefore, a prediction of u k | k + 1 r , u ¯ k | k + 1 r had to be fixed and fed to the dynamics constraint (16). The value of u ¯ k | k + 1 r is set to that of u k | k + 1 r at time t k + t k + 1 / 2 , with its formal definition being as follows:
u ¯ k | k + 1 r : = A q t k + t k + 1 2 u k | k + 1 b , u k | k + 1 b : = 0 0 u k .
The attitude kinematics (10) are discretized through a symbolic Runge–Kutta fourth-order scheme and the discrete kinematics are imposed as constraint (17) in Problem 1. Moreover, the discrete angular velocity vector in constraint (19) in Problem 1, ω k , could be obtained by applying Formula (9) using the discrete unit quaternion signal q k . It is also worth noting that the squared norms ( q k 2 , ω k 2 , and q r t k 2 ) are constrained instead of the norms themselves. This formulation is adopted to facilitate the job of the optimizer since it allows the Jacobian of the constraints to be defined at all values of S and U .
The cost function components of Problem 1, J δ α , J u , and J δ q , are defined as
J δ α = δ α n p δ α r P δ α n p δ α r = + k = 0 n p 1 δ α k δ α r Q δ α k δ α r , J u = R u k = 0 n u 1 u k 2 , J δ q = R δ q k = 0 n u 1 δ q k δ q k , δ q k : = q r t k q t k ,
where δ α r is the reference ROE vector, while P R 6 × 6 , Q R 6 × 6 , R u R 1 , and R δ q R 1 are positive-definite MPC gains.
It is important to note that the ultimate goal of autonomous orbit keeping is to rendezvous with a virtual target then track its absolute orbit, i.e., δ α r = 0 . Moreover, the matrices P and Q are chosen to be diagonal matrices, which renders J δ α a summation over the squared weighted 2-norms of the error vector, δ α k δ α r . This ultimately means that J δ α is a measure of distance between δ α k and δ α r , which is zero in our case, in a scaled-ROE space. Indeed, reasoning J δ α in terms of the magnitude of the error vector in a scaled-ROE space does not only allow us to eventually drive δ α to δ α r , and hence for the satellite to rendezvous and then track the orbit of the virtual target, but also allows us to indirectly minimize the total delta-V cost, since the distance in the ROE space, or in a scaled-ROE space for that matter (e.g., the dimensional ROE space, which scales the ROE vector by the mean semi-major axis of the chief), can be used as a measure for the total delta-V cost [14,15]. A closer look at J δ α reveals that while minimizing it indeed drives the error signal to zero, it is, in fact, an implicit trade-off between fuel and time optimality, depending on the ratio between the traces of P and Q , respectively. The greater the value of this ratio, the more inclined towards fuel optimality the cost function becomes, while the lower the ratio, the more the scheme leans towards time optimality.
Adding J u to the compound cost function directly minimizes the total required thrust from the onboard single thruster. The adopted convex form of J u is the fuel-optimal form of a cost function, which also coincides with the delta-V-optimal form for single-thruster satellites [23].
Finally, the purpose of adding the last component of the cost function, J δ q , is to softly constraint the desired attitude to be as close as possible to the actual attitude in order to avoid unnecessary large slews, which in turn minimizes the attitude control effort. This soft constraint allows large slew maneuvers, depending on the choice of the MPC gains, only when it is meaningful from the ROE error (i.e., J δ α ) or fuel cost (i.e., J u ) points of view.

3.2. Parameter Tuning

In the proposed formulation of MPC, there are many parameters and gains to be chosen, which can affect the overall performance and robustness of the MPC. In many industrial applications, such parameters are chosen engineering experience. In this application, the initial guess for the prediction horizon has been formulated based on the literature review. Since the Δ V -optimal locations for ROE changes through impulsive delta-V increments are known to occur, at most, every half-orbit [15], and since the input acceleration of the low-thrust propulsion system should be distributed around these Δ V -optimal locations (if Δ V optimality is sought), the prediction horizon, n p T s , is chosen to be at least half the orbital period. In this setting, the MPC is able to foresee all the Δ V -optimal locations throughout a certain orbit, which hence leads to optimal allocation of the available thrust. Overly increasing the prediction horizon is expected to only overwhelm the onboard processor, while not having much effect on the optimality of the solution.
The choice of the control horizon, n u T s , on the other hand, is decided through trial and error, which is an iterative process as all the other parameters have to be fixed before the tuning process starts. Nonetheless, regarding the choice of the n u value, it has to be a small positive integer less than or equal to n p . Common guidelines for choosing the prediction and control horizons can be found in [24].
Tuning of the sampling time, T s , has also been performed through trial and error. In the context of Problem 1, although the dynamics of the ROE are slow and the sampling time could be chosen as a large value in order to not solve the optimization problem so frequently, the following important consideration has to be taken into account to carry out the tuning process. Since the attitude dynamics are much faster than that of the ROE, one cannot ignore that a fixed value for the input acceleration vector in the RTN frame, u ¯ k | k + 1 r , is fed to the linearized ROE dynamics constraint (16), see (22), which renders the model used in the MPC not accurate unless a small value is chosen for the sampling time. Indeed, including J δ q in the compound cost function helps in slowing down the attitude dynamics. Still, the need to choose a scant value for the sampling time is meaningful. A compromise has to be found between choosing a small T s and having a more accurate model for the MPC on one hand, and choosing a large T s that allows the optimization problem to be solved less frequently on the other.
The cost function gains (i.e., P , Q , R u , and R δ q in this paper) are more challenging to tune, since the cost function of the MPC is problem-dependent and no general guidelines exist for its weighting. Thus, more focus is put on analyzing the effect of choosing different cost function weights and on actually selecting an optimal set of these weights.
In order to reduce the number of tunable parameters, the components of the cost function, i.e., J δ α , J u , and J δ q , are related to the main weighting matrix, Q , such that
P = f P Q , J ¯ u = f u J ¯ δ α , J ¯ δ q = f δ q J ¯ δ α ,
J ¯ δ α : = n p + f P δ α ¯ Q δ α ¯ , J ¯ u : = n u R u u ¯ 2 , J ¯ δ q : = N N R δ q δ q ¯ δ q ¯ ,
with δ α ¯ being the expected value of δ α over the prediction horizon, which is approximated by the ROE vector at the beginning of each horizon, and u ¯ 0.5 u m a x and δ q ¯ 0.1 0.1 0.1 0.1 being predictions for the values of u and δ q over the control horizon. The approximated expected values, δ α ¯ , u ¯ , and δ q ¯ , are illustrated graphically over one prediction horizon in Figure 3. For imaging purposes, each of them is taken to be one-dimensional. Indeed, the values assumed for u ¯ and δ q ¯ are merely the authors’ predictions for the expected values of these quantities over the whole simulation; however, choosing other values for these variables would not affect the final MPC gains, as will be elaborated upon later in the text.
Substituting from (25) into (24), the MPC gains can be related to Q , δ α ¯ , u ¯ , and δ q ¯ as
R u = f u n p + f P n u u ¯ 2 δ α ¯ Q δ α ¯ , R δ q = f δ q n p + f P n u δ q ¯ δ q ¯ δ α ¯ Q δ α ¯ ,
where R u and R δ q change for every prediction horizon.
It is conceivable that when δ α : = δ α is very small (i.e., the rendezvous of the satellite with its virtual target has already taken place), the priority should be given to J δ q in order for the ADCS not to hyper-react to the small errors in δ α . Indeed, the phenomenon of hyper-reaction of the ADCS when δ α becomes too small has been verified via numerical simulation for a system using the definition of R δ q in (26). It is for this reason that R δ q has to be redefined in order to steer the priority to J δ q when δ α is approaching zero, such that
R δ q = Sat f δ q n p + f P n u δ q ¯ δ q ¯ δ α ¯ Q δ α ¯ , R δ q m i n , ,
where Sat x , x m i n , x m a x is the saturation function which is defined as follows:
Sat x , x m i n , x m a x : = x m i n , x x m i n x , x m i n x x m a x x m a x , x x m a x .
Looking at Equations (24)–(27), it is clear that in order to define all the MPC gains, one has to choose Q , f P , f u , f δ q , and R δ q m i n .
The choice of Q is rather simple since all the ROEs can be weighted equally. However, in order to enhance the stability of the final relative orbit (i.e., to keep the obtained orbit for as long as possible without it being affected much by the perturbations), an emphasis is put on minimizing δ a when the ROEs are close to the target ones, and Q is defined as
Q = Q I 6 , a δ α 1 m Q 100 0 0 I 5 , a c δ α > 1 m ,
where Q is a tuning parameter that controls the order of magnitude of the cost function, and I n is the identity matrix with dimensions n × n .
Fixing the value of Q to 10 5 , of f P to 10, and of R δ q m i n to 10 5 , a brute force sensitivity analysis over f u and f δ q is carried out to choose adroit values for f u and f δ q . Thanks to the High-Performance Computer of the University of Luxembourg [25], 726 simulations could be run simultaneously where, in addition to interchanging the values of f u and f δ q , the seed of the Random Number Generator (RNG), which controls the initial state at the beginning of the simulation, could also be taken into account. In these simulations, and in the sequel, warm-starting is employed at the beginning of each prediction horizon, meaning that the optimized state and control profiles from the previous prediction horizon are utilized to construct the initial guess for the current one.
Before starting the simulations, it was noted that the admissible values for f u and f δ q belong to the period 0 , 1 , since the most important component of the cost function is J δ α and since the two other components are normalized with respect to J δ α (see (24)).
One simulation would have its RNG seed, f u , and f δ q as one possible combination from the following sets:
seed 0 , 1 , 2 , 3 , 4 , 5 , f u , f δ q 0 , 0.02 , 0.04 , 0.06 , 0.08 , 0.1 , 0.3 , 0.6 , 0.7 , 0.9 , 1 ,
To this end, a fitness function needs to be introduced in order to asses how good the output of the simulation is. Such fitness function in our context needed to address four criteria (performance metrics):
Driving the ROE vector to zero, which is the main goal of the MPC scheme to achieve orbit keeping. This is assessed through observing the norm of the finale of the ROE time series, denoted as δ α fin .
Enhancing the stability of the relative orbit finale which, in other words, is minimizing the Root Mean Square (RMS) of the last portion of the relative semi-major axis profile over time, denoted as δ a fin .
Minimizing the total delta-V, Δ V tot .
Reducing the attitude effort, which is quantified through the mean angular rate of the satellite, ω mean .
It is necessary to state that the term “finale” in this paper refers to the last 10 % of the simulation time span. Furthermore, although this research is concerned with low-thrust propellers, the total delta-V is considered instead of the total thrust in order to enable comparisons between the proposed scheme and those from the literature. The total delta-V in our context can be calculated using the following formula:
Δ V tot = t init t f i n u d t ,
where t init and t f i n are the initial and final times of the simulation, respectively. Given that the input thrust/acceleration from the single thruster is piece-wise-constant, the total delta-V can be rewritten as follows:
Δ V tot = i = 1 n h k = 0 n u 1 u k T s j ,
with n h being the number of receding horizons being processed within a simulation, j the horizon index, and T s being the fixed sampling time.
The adopted overall fitness function could then be written as
ϕ = K δ α · fitness δ α fin ϕ δ α + K δ a · fitness δ a fin ϕ δ a + K Δ V · fitness Δ V tot ϕ Δ V + K ω · fitness ω mean ϕ ω ,
where K δ a , K δ α , K Δ V , and K ω are weights that determine the importance of each of the four criterion, and the function fitness · is defined as
fitness x = 1 / x min 1 / x max 1 / x min 1 / x ,
with min · and max · being the minimum and maximum functions over all the simulations. It is clear that this form of the fitness function only shoots out values between 0 and 1.
Running the simulations for the 726 combinations in (30) for a fixed initial chief orbit, defined in Table 1, applying the definition of the fitness function in (34) to all the 726 simulations and to the four performance metrics, and fixing the values of the weights to K δ α = 5 , K δ a = 1 , K Δ V = 1 , and K ω = 1 , which reflect the high importance of minimizing δ α fin in comparison to the other metrics, the heat maps that summarize all the simulations could be obtained and are presented in Figure 4.
The heat maps in Figure 4 could only be obtained after averaging the fitness over each RNG seed in (30), and after adopting a scattered data interpolant in order to smooth the heat maps.
It is clear from the figures that the smaller f u is, the better ϕ δ α and ϕ δ a become, while this relation is conceivably inverted for ϕ Δ V . Furthermore, ϕ Δ V and ϕ ω could be noticed to be positively correlated, and are both negatively correlated with ϕ δ α and ϕ δ a . Further investigations on the simulations where ϕ Δ V and ϕ ω are both large revealed that minimal input acceleration is provided at the current attitude of the satellite, which is almost stagnant, while the effect of this acceleration on the orbit correction is, as well, minimal. Nonetheless, the ROE vector is approaching its set point, although very slowly.
The overall fitness function, ϕ , is depicted in Figure 5 and the fittest point, i.e., the point with maximum overall fitness, ( f u = 0 and f δ q = 0.02 ) is marked with the gray circle on the heat map. It is clear from the fittest f u f δ q combination that, for the initial chief orbit in Table 1, it was not necessary to include the direct delta-V penalty, J u , in the cost function, since J δ α was already indirectly accounting for delta-V cost as previously mentioned. One has to acknowledge that the fittest combination of f u and f δ q in Figure 5 is not necessarily universal for any arbitrary initial chief’s orbit, and the selection of the optimal f u f δ q combination needs to be performed again for each initial orbit of the virtual chief. This does not represent a limitation of the approach, since the reference orbit of the chief is fixed once as soon as the scientific mission is designed.
The employed approach served the need to identify an adroit set of combinations of f u and f δ q . Future investigations may focus on the setup of a heuristic approach, e.g., genetic algorithms, to search for the combination that globally maximizes the overall fitness function. In this context, note that the definition of the fitness functions and of the related parameters impact the global optimum.
Finally, the values of the optimized f u and f δ q are heavily dependant on the authors’ predictions of u ¯ and δ q ¯ , and another choice of these quantities would have definitely led to different optimal f u and f δ q ; however, the values of R u and R δ q will not change since f u is directly divided by u ¯ 2 to obtain R u and the same dynamics apply for f δ q with the squared 2-norm of δ q ¯ to obtain R δ q (see (26)).

3.3. Closing the Control Loop

The MPC described so far is one key module of the whole control loop, which, at practical implementation, requires feedback to operate properly, which is provided by the navigation system, which, in turn, relies on sensors as well as a state estimation filter. The full closed loop, which illustrates the module execution logic onboard the deputy spacecraft, is depicted in Figure 6. There, Osc2Mean is the function that transforms osculating orbital elements to mean ones [18], Body2Inert is the method that rotates any vector from the body frame to the inertial frame, and OE2ROE is the function that transforms the absolute orbital elements of both the chief and the deputy to a ROE vector (see (2)). The breve accent, · ˘ , signifies a quantity which is affected by either one or a combination of the following sources of errors:
  • Estimation errors (e.g., α ˘ d );
  • Actuator errors (e.g., q ˘ );
  • Physical constraints (e.g., u ˘ b ).
The proposed MPC is validated by means of numerical simulations, emulating the performance of the navigation module and the effects of the physical limitations of the adopted actuators.
The physical limitations are only present in the saturation block (see Figure 6), which could be implemented in the numerical simulations. In fact, this saturation is taken into account in the MPC implementation, but the saturation block after the MPC is implemented anyway as a safeguard in case the MPC computes an infeasible solution.
The “Sensors” and “Filter” blocks in Figure 6 are replaced by the following surrogate models, which treat the propagated state of the deputy as ground truth:
x ˜ ˘ d i = x ˜ d i + N 0 , Σ x ˜ , α ˜ ˘ d = Cart 2 OE ( x ˜ ˘ d i ) ,
where “Cart2OE” is the method that transforms the Cartesian state to orbital elements, and N μ , σ 2 is a normally distributed random variable with μ as its expected value and σ 2 as its variance. Hence, Σ x ˜ is the covariance matrix of the random noise affecting the estimation of the Cartesian state of the deputy satellite, which is defined as
Σ x ˜ = σ r 2 0 0 0 0 0 0 σ r 2 0 0 0 0 0 0 σ r 2 0 0 0 0 0 0 σ v 2 0 0 0 0 0 0 σ v 2 0 0 0 0 0 0 σ v 2 ,
where σ r 2 and σ v 2 are the variances of the one-dimensional position and velocity estimation errors, respectively, which, for the numerical simulations presented in this work, were extracted from the publicly available Triton-X brochure.
It is to be noted that the relative navigation is typically more accurate than the absolute one [4,5]. It is for this reason that a similar model is used to emulate the behaviour of the relative navigation system within the numerical simulations as follows:
δ α = OE 2 ROE α c , α d δ α ˘ = δ α + N 0 , Σ δ α ,
where Σ δ α is the covariance matrix of the random noise affecting the estimation of the ROE vector, which is expanded as
Σ δ α = σ δ a 2 0 0 0 0 0 0 σ δ λ 2 0 0 0 0 0 0 σ δ e x 2 0 0 0 0 0 0 σ δ e y 2 0 0 0 0 0 0 σ δ i x 2 0 0 0 0 0 0 σ δ i y 2 ,
with the diagonal elements being the variances of the random noise that affect each element of the ROE vector. These variances are taken to all be equal in the sequel, i.e., σ δ a = σ δ λ = σ δ e x = σ δ e y = σ δ i x = σ δ i y = σ δ α .
Lastly, the “Pointing error” block is replaced by the following surrogate model:
q ˘ = q q pe , q pe = cos ζ q pe 2 sin ζ q pe 2 q ^ pe ,
where ζ q pe is the pointing error angle, which was obtained from the Triton-X brochure in the validation simulations, and q ^ pe is a random three-element unit vector.
It is important to note that although the chief, in this context, is a virtual point, it is propagated using the perturbed dynamics for two main reasons:
  • In many applications, the tracking of the reference orbit and the absolute control of the reference orbit are handled separately;
  • The proposed scheme can be directly applied to the rendezvous with an actual spacecraft.
As a result, the autonomous orbit keeping compensates errors and perturbations acting on the relative dynamics.

4. MPC Validation

In order to test the stability of the proposed MPC scheme, and thanks to the parallelization capabilities of the HPC facilities of the University of Luxembourg, the algorithm was run over 500 different simulations, each with a different initial ROE vector, such that
a c · δ α t init [ m ] 100 , 100 1000 , 1000 100 , 100 100 , 100 100 , 100 100 , 100 ,
where t init is the initial time of each simulation.
The simulation and MPC parameters used in the 500-run Monte Carlo simulation are summarized in Table 2.
It is to be noted that although the sampling time used in predicting the MPC states, T s , is 50 s, the attitude dynamics are propagated each second in the simulations since the attitude changes much faster than the ROEs. Moreover, constraining the maximum allowable acceleration is a consequence of the physical constraint on the maximum thrust that can be provided by the onboard throttleable electric propulsion system. The value of the maximum allowable acceleration, u m a x , was obtained for the following simulations from the information on Triton-X brochure on both, the maximum thrust, which is set equal to 7 mN, and the mass of the satellite, which is assumed to be constant, 200 kg, throughout the maneuver.
The main performance metrics over the 500 Monte Carlo runs are depicted in Figure 7, while the statistics of these metrics are presented in Table 3.
In order to gain an insight into how the proposed scheme performs, the results of an arbitrary simulation out of the 500 simulations are presented. The randomly selected initial ROE (according to (40)) vector is given in Table 4 alongside the reference ROE vector.
The ROE states are seen to approach their set points (zero for rendezvous with the virtual target) in Figure 8. It is of significance to mention that the chief’s mean orbital period, which is the unit of time in Figure 8, is 5974.46 s.
The trajectory followed by the satellite is depicted in Figure 9 in both the transversal–radial and the normal–radial planes. This trajectory could be obtained by transforming the ROE to the relative Cartesian states in the RTN frame using the transformation in [26]. It can be seen from Figure 9a that the orbit maneuver is taking place gradually thanks to the continuous firing of the thruster, in contrast to the impulsive-thrust maneuvers where the velocity changes at a handful of points on the orbit.
The thrust exerted by the onboard thruster is depicted in Figure 10. This thrust is also projected on the RTN frame and the projection is presented in the same figure. It is interesting to see that the MPC does not follow a trajectory that minimizes the radial burns, which has been a usual constraint imposed on the MPC in earlier studies [17]. Although firing in the radial direction to correct δ λ errors is known to be more delta-V-expensive than firing in the transversal direction to build up δ a drift, which takes care of correcting the δ λ error by exploiting the natural dynamics, this is not the case for close-proximity maneuvers where the initial δ λ error is small. This can be verified by looking at the solution to the linearized forced Gauss variational equations [19], and it could also be verified via our preliminary experiments in which the projection of thrust on the radial direction was soft-constrained.
In Figure 11a, the error quaternion angle signal suggests that at each optimization step, the attitude starts from a value that does not coincide with the reference attitude. Nevertheless, by the end of each step, the attitude gradually converges towards the reference one, resulting in the error quaternion angle approaching a value close to zero. A very interesting feature of the proposed scheme is that the propulsion system is always turned on even when attitude redirection maneuvers are taking place. The optimizer calculates the reference attitude knowing that the satellite will not necessarily be aligned with it for the whole upcoming control step.
It is worth noting that the angle of any quaternion (e.g., the error quaternion, q e , or the current quaternion, q ) can be found as follows:
ζ q = arctan q q 0 ,
where q and q 0 are the vector and the scalar parts of the quaternion q , respectively. Lastly, the effect of adding the J δ q term to the cost function of Problem 1 could be seen clearly in Figure 11b, where the quaternion angle rate is depicted. The quaternion angle rate, which can be thought of as a signed version of ω , is seen to be much lower than its maximum allowable values, 2 / s . Our preliminary simulations, which did not contain the term J δ q on their cost function, always had the attitude rate saturating at its maximum value, which is a hyper-reaction that is not desired in a real mission.
In order to test the efficiency and the optimality of the proposed MPC scheme, it is benchmarked against the approach proposed in [17] for a similar problem, where an out-of-plane (OOP) relative orbit correction maneuver had to be performed. The parameters used for this benchmark simulation are summarized in Table 5. Any missing parameter in Table 5 is set to its value in Table 2, except for the maximum allowable acceleration, which is set to u m a x = 3.2 × 10 5 m / s 2 . Applying this maximum acceleration to the satellite employed in [17], which has a mass of 20 kg, renders the maximum thrust as 0.64 mN.
The setting of this maneuver is interesting not only because it allows two different MPC schemes to be compared, but also because OOP maneuvers require only normal acceleration. In fact, the Δ V -optimal locations for impulsive normal burns for such maneuvers could be analytically calculated [15]. For the case of electric propulsion, a controller is said to be Δ V -optimal for out-of-plane maneuvers if the thrust in the normal direction is bang-bang-like and is distributed almost evenly around the Δ V -optimal locations. The thrust profile of the proposed MPC is depicted in Figure 12a, which reveals that the proposed MPC behaves as a fuel-efficient scheme would be expected to behave.
It can also be seen from Figure 12a that the thrust components in the radial and the transversal directions are not exactly zero due to in-plane perturbation compensation and also owing to the fact that the thrust is provided during slew maneuvers. Therefore, the radial and transversal thrust components become more visible when the thrust direction is required to flip from the positive to the negative normal direction. In this situation, the satellite has to pass by many transient attitudes for which the radial and the transversal components are not necessarily zero.
Figure 12b depicts a comparison between the normal component of the thrust profile of the proposed MPC scheme and the MPC scheme proposed by [17].
The dimensional ROE profiles of the two MPCs are also shown in Figure 13, and a brief comparison between the performance of both schemes is presented in Table 6, where the convergence time is defined as the time it takes all elements in the error-dimensional ROE vector, a c δ α err = a c δ α δ α r , to be less than 5 [ m ] .
It is clear from Table 6 as well as Figure 13 that, for the simulation defined by Table 5, the proposed scheme is much faster, in fact 1.61 times as fast as that of [17]. Furthermore, the proposed MPC appears to be much more precise than the reference one; however, it consumes 24.04 % more delta-V, as seen in Table 6. Indeed, consuming more delta-V than the reference MPC is conceivable since the proposed MPC is not designed to be delta-V-optimal in the first place. Again, the cost function of Problem 1 has two components (after eliminating J u as discussed in Section 3.2): the first one, J δ α , deals with gradually approaching the reference ROE vector, and implicitly implies a trade-off between fuel and time optimality (depending on f P ), while the second component, J δ q , is added to minimize the attitude change throughout the maneuver. It is believed that a smaller total delta-V could be achieved using a different set of MPC gains; however, it would be at the cost of more abrupt attitude changes and/or more maneuvering time. The ROE profile in Figure 13 implies the evolution of the OOP variables, δ i x and δ i y , from their initial values to their set points, while the in-plane variables fluctuate slightly around their initial/reference values as a response to the relative orbital perturbations as well as to the unavoidable radial and transversal accelerations during each attitude flip from the positive to the negative normal direction and vice-versa.
Lastly, Figure 14 relates to the attitude evolution of the system, where Figure 14a shows how the attitude is changing smoothly to recurrently flip the thrust direction from/to the positive to/from the negative normal direction, while the error quaternion angle is starting from a nonzero value only when the thrust direction is required to be flipped, and is seen to always approach zero. Moreover, although the objective is clearly to flip the thrust direction, the error quaternion angle is never 180 , which could only mean that the optimizer chooses the reference quaternion to evolve smoothly until it reaches the flipped attitude so that a hyper-reaction of angular velocity can be avoided. The quaternion angle rate is seen in Figure 14b to turn swiftly and almost reach its full potential, i.e., ± ω m a x , when the thrust direction is set to change from/to the positive to/from the negative normal direction.

5. Conclusions

This paper proposes an MPC scheme to address the problem of optimal absolute orbit keeping for underactuated satellites that use electrical propulsion systems. Currently, several small-satellite platforms are equipped with unidirectional thrusters, requiring constant attitude slews to take place during time-extended orbit maneuvers in order to redirect the thruster to the desired propulsion direction. Although the proposed controller is concerning a single satellite, formation flying techniques have been utilized by assuming the satellite to be flying in formation with a virtual spacecraft (flying on the reference trajectory) with respect to which it is required to keep a predefined relative orbit (rendezvous in most cases). This approach allows astrodynamics’ insight into the classical linearized control problem to be leveraged. Moreover, this allows a direct implementation of the proposed algorithm in true multi-satellite relative-orbit-keeping contexts.
Designed to comprise a trade-off between fuel and time optimality through manipulating the controller gains, the proposed MPC couples the attitude and the relative orbital dynamics such that the control thrust is provided during the attitude redirection maneuvers. The stability of the control scheme is verified through Monte Carlo numerical simulations in which navigation errors, hardware errors, and physical constraints are emulated. In order to assess the controller’s performance, the proposed MPC has also been compared to a reference MPC from the literature. As for the compared scenario, the proposed MPC achieves more accurate orbit keeping in a shorter time frame. Such improved performance is achieved at the cost of a slightly larger delta-V cost, corresponding to approximately 24% of the total maneuver cost, and therefore is negligible at the mission level.

Author Contributions

Conceptualization, A.M., G.G. and D.M.K.K.V.R.; methodology, A.M. and G.G.; software, A.M.; validation, A.M. and G.G.; formal analysis, A.M., G.G. and D.M.K.K.V.R.; investigation, A.M. and G.G.; resources, G.G. and H.V.; writing—original draft preparation, A.M.; writing—review and editing, A.M., G.G., D.M.K.K.V.R. and H.V.; visualization, A.M.; supervision, H.V.; project administration, H.V.; funding acquisition, H.V. All authors have read and agreed to the published version of the manuscript.


This research was funded in whole, or in part, by the Luxembourg National Research Fund (FNR), grant reference BRIDGES/19/MS/14302465.

Data Availability Statement

The data presented in this study are openly available in FigShare at


For the purpose of open access, and in fulfillment of the obligations arising from the grant agreement, the author has applied a Creative Commons Attribution 4.0 International (CC BY 4.0) license to any Author Accepted Manuscript version arising from this submission. The experiments presented in this paper were carried out using the HPC facilities of the University of Luxembourg ( (accessed on 1 January 2023)) [25]. This research is a result of the collaboration between SnT and LuxSpace within the framework of the AuFoSat project. The support of LuxSpace throughout the work is very much appreciated.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Stability of the Surrogate Model of the ADCS

Letting q e be the unit error quaternion between the desired and the actual attitudes, and ω e : = ω ω r be the error angular velocity vector, with ω being the angular velocity vector and ω r being the reference/set point of ω , the dynamics of the error unit quaternion as given by [21] could be written as
q ˙ e = 1 2 q e ω e .
Note that, for slew maneuvers, the reference angular velocity vector is always zero, i.e., ω r = 0 , which enables (A1) to be rewritten as
q ˙ e = 1 2 q e ω .
If the angular velocity profile could be forced, via the input torques, to follow (9), i.e., ω = K q e , 0 q e , the error quaternion kinematics could be expressed as
q ˙ e = K q e , 0 2 q e q e = K q e , 0 2 q e 2 q e , 0 q e = K 2 q e 2 q e , 0 q e , 0 2 q e .
Noting that K is a positive gain, (A3) could be rewritten as
q ˙ e , 0 q ˙ e , 1 q ˙ e , 2 q ˙ e , 3 = K 0 q e , 0 K 1 q e , 1 K 2 q e , 2 K 3 q e , 3 ,
where K 0 , K 1 , K 2 , and K 3 , are all positive, and q e , 1 , q e , 2 , and q e , 3 are the three components of q e . Equation (A4) suggests that, under the constraint q e = 1 , the error quaternion asymptotically approaches either 1 0 0 0 or 1 0 0 0 regardless of the initial condition of q e .


  1. Miller, S.; Walker, M.L.R.; Agolli, J.; Dankanich, J. Survey and Performance Evaluation of Small-Satellite Propulsion Technologies. J. Spacecr. Rocket. 2021, 58, 222–231. [Google Scholar] [CrossRef]
  2. Helmeid, E.; Buursink, J.; Poppe, M.; Ries, P.; Gales, M. The Integrated Avionics Unit—Performance, Innovation and Application. In Proceedings of the 4S Symposium, Vilamoura, Portugal, 16–20 May 2022. [Google Scholar]
  3. Menzio, D.; Mahfouz, A.; Dalla Vedova, F.; Voos, H. Formation design of an inter-satellite link demonstration mission. In Proceedings of the 11th International Workshop on Satellite Constellations & Formation Flying, Milano, Italy, 7–10 June 2022. [Google Scholar]
  4. Mahfouz, A.; Menzio, D.; Dalla Vedova, F.; Voos, H. Relative State Estimation for LEO Formations with Large Inter-satellite Distances Using Single-Frequency GNSS Receivers. In Proceedings of the 11th International Workshop on Satellite Constellations & Formation Flying, Milano, Italy, 7–10 June 2022. [Google Scholar]
  5. Mahfouz, A.; Menzio, D.; Dalla Vedova, F.; Voos, H. GNSS-based baseline vector determination for widely separated cooperative satellites using L1-only receivers. Adv. Space Res. 2023. [Google Scholar] [CrossRef]
  6. Königsmann, H.J.; Collins, J.T.; Dawson, S.; Wertz, J.R. Autonomous orbit maintenance system. Acta Astronaut. 1996, 39, 977–985. [Google Scholar] [CrossRef]
  7. De Florio, S.; D’Amico, S. The precise autonomous orbit keeping experiment on the PRISMA mission. J. Astronaut. Sci. 2008, 56, 477–494. [Google Scholar] [CrossRef]
  8. Garulli, A.; Giannitrapani, A.; Leomanni, M.; Scortecci, F. Autonomous Low-Earth-Orbit Station-Keeping with Electric Propulsion. J. Guid. Control. Dyn. 2011, 34, 1683–1693. [Google Scholar] [CrossRef]
  9. Bonaventure, F.; Baudry, V.; Sandre, T.; Helene Gicquel, A. Autonomous Orbit Control for Routine Station-Keeping on a LEO Mission. In Proceedings of the 23rd International Symposium on Space Flight Dynamics, Pasadena, CA, USA, 13–16 August 2012. [Google Scholar]
  10. De Florio, S.; D’Amico, S.; Radice, G. Virtual Formation Method for Precise Autonomous Absolute Orbit Control. J. Guid. Control. Dyn. 2014, 37, 425–438. [Google Scholar] [CrossRef]
  11. Steindorf, L.M.; D’Amico, S.; Scharnagl, J.; Kempf, F.; Schilling, K. Constrained low-thrust satellite formation-flying using relative orbit elements. In Proceedings of the 27th AAS/AIAA Space Flight Mechanics Meeting, San Antonio, TX, USA, 5–9 February 2017; Volume 160, pp. 3563–3583. [Google Scholar]
  12. Silvestrini, S.; Lavagna, M. Neural-aided GNC reconfiguration algorithm for distributed space system: Development and PIL test. Adv. Space Res. 2021, 67, 1490–1505. [Google Scholar] [CrossRef]
  13. Gaias, G.; Ardaens, J.S. Flight Demonstration of Autonomous Noncooperative Rendezvous in Low Earth Orbit. J. Guid. Control. Dyn. 2018, 41, 1337–1354. [Google Scholar] [CrossRef]
  14. Gaias, G.; D’Amico, S.; Ardaens, J.S. Generalised multi-impulsive manoeuvres for optimum spacecraft rendezvous in near-circular orbit. Int. J. Space Sci. Eng. 2015, 3, 68–88. [Google Scholar] [CrossRef]
  15. Gaias, G.; D’Amico, S. Impulsive Maneuvers for Formation Reconfiguration Using Relative Orbital Elements. J. Guid. Control. Dyn. 2015, 38, 1036–1049. [Google Scholar] [CrossRef]
  16. Ovchinnikov, M.; Smirnov, G.V.; Zaramenskikh, I. Orbital corrections by a single-input impulsive control applied along the geomagnetic field. Acta Astronaut. 2009, 65, 1826–1830. [Google Scholar] [CrossRef]
  17. Belloni, E.; Silvestrini, S.; Prinetto, J.; Lavagna, M. Relative and absolute on-board optimal formation acquisition and keeping for scientific activities in high-drag low-orbit environment. Adv. Space Res. 2023. [Google Scholar] [CrossRef]
  18. Gaias, G.; Colombo, C.; Lara, M. Analytical Framework for Precise Relative Motion in Low Earth Orbits. J. Guid. Control. Dyn. 2020, 43, 915–927. [Google Scholar] [CrossRef]
  19. Di Mauro, G.; Bevilacqua, R.; Spiller, D.; Sullivan, J.; D’Amico, S. Continuous maneuvers for spacecraft formation flying reconfiguration using relative orbit elements. Acta Astronaut. 2018, 153, 311–326. [Google Scholar] [CrossRef]
  20. Sidi, M.J. Spacecraft Dynamics and Control: A Practical Engineering Approach; Cambridge University Press: Cambridge, UK, 1997; Volume 7. [Google Scholar] [CrossRef]
  21. Mahfouz, A.; Pritykin, D.; Biggs, J. Hybrid Attitude Control for Nano-Spacecraft: Reaction Wheel Failure and Singularity Handling. J. Guid. Control. Dyn. 2021, 44, 548–558. [Google Scholar] [CrossRef]
  22. Wie, B.; Weiss, H.; Arapostathis, A. Quaternion feedback regulator for spacecraft eigenaxis rotations. J. Guid. Control. Dyn. 1989, 12, 375–380. [Google Scholar] [CrossRef]
  23. Ross, I.M. Space Trajectory Optimization and L1-Optimal Control Problems. In Modern Astrodynamics; Gurfil, P., Ed.; Elsevier Astrodynamics Series; Butterworth-Heinemann: Oxford, UK; Volume 1, pp. 155–188, Chapter 6; V–VIII. [CrossRef]
  24. Alhajeri, M.; Soroush, M. Tuning Guidelines for Model-Predictive Control. Ind. Eng. Chem. Res. 2020, 59, 4177–4191. [Google Scholar] [CrossRef]
  25. Varrette, S.; Bouvry, P.; Cartiaux, H.; Georgatos, F. Management of an Academic HPC Cluster: The UL Experience. In Proceedings of the 2014 International Conference on High Performance Computing & Simulation (HPCS), Bologna, Italy, 21–25 July 2014; IEEE: Bologna, Italy, 2014; pp. 959–967. [Google Scholar]
  26. Gaias, G.; Lovera, M. Trajectory Design for Proximity Operations: The Relative Orbital Elements’ Perspective. J. Guid. Control. Dyn. 2021, 44, 2294–2302. [Google Scholar] [CrossRef]
Figure 1. Snapshot of the shape of the relative orbit (i.e., orbit drift is neglected).
Figure 1. Snapshot of the shape of the relative orbit (i.e., orbit drift is neglected).
Aerospace 10 00959 g001
Figure 2. Validation of the surrogate ADCS model through random initial and desired attitudes.
Figure 2. Validation of the surrogate ADCS model through random initial and desired attitudes.
Aerospace 10 00959 g002
Figure 3. Assumed expected values δ α ¯ , u ¯ , and δ q ¯ over one prediction horizon.
Figure 3. Assumed expected values δ α ¯ , u ¯ , and δ q ¯ over one prediction horizon.
Aerospace 10 00959 g003
Figure 4. Fitness of the four performance metrics.
Figure 4. Fitness of the four performance metrics.
Aerospace 10 00959 g004
Figure 5. Overall fitness ( ϕ ).
Figure 5. Overall fitness ( ϕ ).
Aerospace 10 00959 g005
Figure 6. Closed loop of the deputy spacecraft.
Figure 6. Closed loop of the deputy spacecraft.
Aerospace 10 00959 g006
Figure 7. Performance metrics over the Monte Carlo simulation.
Figure 7. Performance metrics over the Monte Carlo simulation.
Aerospace 10 00959 g007
Figure 8. ROE profile of the Monte Carlo run defined by Table 4.
Figure 8. ROE profile of the Monte Carlo run defined by Table 4.
Aerospace 10 00959 g008
Figure 9. Trajectory followed by the satellite of the Monte Carlo run defined by Table 4.
Figure 9. Trajectory followed by the satellite of the Monte Carlo run defined by Table 4.
Aerospace 10 00959 g009
Figure 10. Thrust level of the Monte Carlo run defined by Table 4.
Figure 10. Thrust level of the Monte Carlo run defined by Table 4.
Aerospace 10 00959 g010
Figure 11. Attitude profile of the Monte Carlo run defined by Table 4.
Figure 11. Attitude profile of the Monte Carlo run defined by Table 4.
Aerospace 10 00959 g011
Figure 12. Thrust level for the benchmark simulation: (a) thrust vector in the RTN frame; (b) comparison of the thrust in the normal direction.
Figure 12. Thrust level for the benchmark simulation: (a) thrust vector in the RTN frame; (b) comparison of the thrust in the normal direction.
Aerospace 10 00959 g012
Figure 13. ROE profile of the benchmark maneuver defined by Table 5.
Figure 13. ROE profile of the benchmark maneuver defined by Table 5.
Aerospace 10 00959 g013
Figure 14. Attitude profile of the benchmark maneuver defined by Table 5.
Figure 14. Attitude profile of the benchmark maneuver defined by Table 5.
Aerospace 10 00959 g014
Table 1. Chief’s initial orbit for all the 726 simulations used in the sensitivity analysis.
Table 1. Chief’s initial orbit for all the 726 simulations used in the sensitivity analysis.
a ˜ c [km] θ ˜ c [ ] e ˜ x c e ˜ y c i ˜ c [ ] Ω ˜ c [ ]
71210 10 5 0450
Table 2. Monte Carlo simulation and MPC parameters.
Table 2. Monte Carlo simulation and MPC parameters.
Chief’s initial orbit a ˜ c [km] θ ˜ c [ ] e ˜ x c e ˜ y c i ˜ c [ ] Ω ˜ c [ ]
71210 10 5 0450
MPC parameters T s [s] n p [ T s ] n u [ T s ] u m a x [ m / s 2 ] ω m a x [ / s ]
50 s6015 3.5 × 10 5 2
Q f P f u f δ q R δ q m i n
10 5 10 0.0 0.02 10 5
MiscellaneousK σ r [m] σ v [ m / s ] a c σ δ α [m] ζ q pe [arcs]
0.2 100.5125
Table 3. Performance metrics over 500 simulations.
Table 3. Performance metrics over 500 simulations.
  a c δ α fin [m] a c δ a fin [m] Δ V tot [ m / s ] ω mean [ / s ]
Mean 4.38 2.05 0.406 0.228
Median 4.29 2.02 0.409 0.226
Max 9.82 4.49 0.58 0.331
Table 4. Parameters of an arbitrary simulation out of the 500 Monte Carlo runs.
Table 4. Parameters of an arbitrary simulation out of the 500 Monte Carlo runs.
Initial ROE a c δ a [m] a c δ λ [m] a c δ e x [m] a c δ e y [m] a c δ i x [m] a c δ i y [m]
64.62 947.77 57.84 23.68 80.35 24.03
Reference ROE a c δ a [m] a c δ λ [m] a c δ e x [m] a c δ e y [m] a c δ i x [m] a c δ i y [m]
Table 5. Benchmark simulation parameters.
Table 5. Benchmark simulation parameters.
Chief’s initial orbit a ˜ c [km] θ ˜ c [ ] e ˜ x c e ˜ y c i ˜ c [ ] Ω ˜ c [ ]
68280 10 5 0780
Initial ROE a c δ a [m] a c δ λ [m] a c δ e x [m] a c δ e y [m] a c δ i x [m] a c δ i y [m]
Reference ROE a c δ a [m] a c δ λ [m] a c δ e x [m] a c δ e y [m] a c δ i x [m] a c δ i y [m]
Table 6. Comparison between the proposed and the reference MPCs.
Table 6. Comparison between the proposed and the reference MPCs.
 Convergence Time [orbits]Terminal a c δ α δ α r [ m ] Δ V tot [ m / s ]
Proposed MPC 4.1 0.9 0.4 1.9 0.33 . 0.0 0.5 0.664
Reference MPC 6.6 3.6 9.2 1.4 2.0 2.9 1.6 0.501
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Mahfouz, A.; Gaias, G.; Venkateswara Rao, D.M.K.K.; Voos, H. Autonomous Optimal Absolute Orbit Keeping through Formation Flying Techniques. Aerospace 2023, 10, 959.

AMA Style

Mahfouz A, Gaias G, Venkateswara Rao DMKK, Voos H. Autonomous Optimal Absolute Orbit Keeping through Formation Flying Techniques. Aerospace. 2023; 10(11):959.

Chicago/Turabian Style

Mahfouz, Ahmed, Gabriella Gaias, D. M. K. K. Venkateswara Rao, and Holger Voos. 2023. "Autonomous Optimal Absolute Orbit Keeping through Formation Flying Techniques" Aerospace 10, no. 11: 959.

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop