Fuel-Optimal Formation Reconfiguration by Means of Unidirectional Low-Thrust Propulsion System
1 Introduction
Low-thrust electric propulsion systems are becoming the preferred design solution for small-class and CubeSat-based satellite platforms [1]. This is motivated
by many factors, among which is the fact that they are generally more fuel efficient than their chemical counterparts. Furthermore, electric thrusters are require significantly less propellant mass which leads to lighter launch mass and consequently reduces the costs [2]. To further minimize the complexity of the system design and/or to meet stringent power/mass constraints of small satellite platforms, the propulsion system typically features a single throttleable electric thruster. Examples of such satellites include Triton-X Medium and Heavy [3], the PLATiNO platform [4], and the Gravity Field and Steady-State Ocean Circulation Explorer (GOCE) satellite [5]. Small-size satellites can serve several multi-satellite missions, such as cooperative formation-flying to build disaggregated instruments and rendezvous activities to carry out inspection missions. These demand for the capability to perform formation reconfiguration by means of low-thrust unidirectional propulsion systems. In this note, the term "unidirectional" signifies that a the propulsion system comprises a single un-gimbaled thruster.
So far the relative orbit reconfiguration problem has been widely addressed. Examples include guidance and control schemes for formations that employ impulsive thrusters
[6, 7, 8, 9], however, these approaches are not viable for formations that utilize electric thrusters. Other guidance approaches were proposed for the low-thrust case, e.g. for the Formation Flying L-band Aperture Synthesis (FFLAS) mission study in [10], and for collision avoidance maneuver optimization [11]. A core assumption in these guidance schemes is the omnidirectional thrusting capability, which hinders the adaption of these approaches for the unidirectional thrusting case.
A unidirectional propulsion system was adopted in the Autonomous Vision Approach Navigation and Target Identification (AVANTI) mission [12] where the developed guidance scheme, which is only suited for impulsive thrust satellites, allowed the re-orientation of the thruster nozzle through planned control windows [7, 13].
Furthermore, Model Predictive Control (MPC) schemes were proposed in [14, 15] to address the problem of formation reconfiguration and formation kee** for satellites which are equipped with single electric thrusters, yet the mission operational constraints, i.e. necessary thruster off-periods, were not considered.
In this note, the problem of autonomous optimal formation reconfiguration is addressed for a formation which comprises two satellites, a chief and a deputy, where only the deputy has orbit maneuvering capabilities through a single throttleable electric thruster. In this setting, an attitude slew maneuver is necessary before each thruster firing so that the nozzle could be aligned with the required thrust direction before the firing takes place. The problem is approached through formulating a trajectory optimization (guidance) problem as a fuel-optimal constrained convex optimization problem with multiple no-thrust windows during which attitude redirection slews takes place. This, in-turn, requires constant alternation between the on and off states of the thruster.
One big advantage of this on-off alternation is the ability to accommodate long no-thrust periods which arise form mission constraints, e.g. eclipse, during which electric thrusters are usually turned off since the solar arrays are not generating electricity.
The biggest advantage of the proposed guidance scheme is that, by relaxing some of the original constraints, it can be transformed into a Quadratic Programming (QP) problem which can be solved efficiently using any of the standard QP solvers. This makes it a attractive candidate to be implemented onboard of a satellite that uses one of the Commercial-Off-The-Shelf (COTS) onboard computers.
The control loop is then closed through an MPC-like scheme where the optimization of the state and input thrust profiles (from the current to the final time) are optimized using the proposed guidance algorithm. It is to be noted that the control logic does not necessitate the guidance algorithm to be run at each MPC step, but rather uses the previous guidance profile if the current state is close, within a predefined threshold, to its value predicted by the previous guidance solution.
The main contributions of this note are a) An efficient-to-solve guidance scheme for formation reconfiguration when the controlled satellite is equipped with a single electric thruster; b) The ability of the guidance scheme to accommodate as many long no-thrust periods as the user dictates; c) An MPC-like algorithm to close the control loop which does not require the guidance to be run at each receding horizon.
Note that in the remainder of the text, the terms "fuel-optimal" and "-optimal" are used interchangeably. These two terms are identical only in the case of single-directional propulsion systems [16].
This Note presents applications where collision avoidance is not of a concern for the satellite reconfigurations. Nonetheless, if required by a specific application, the proposed methodology is straightforward applicable by adding the collision avoidance constraints through the relaxed formulation generally adopted in the literature [17]. By including such affine constraints, in fact, the overall optimization problem is still cast into the QP formulation, thus featuring all the proposed advantages.
This research comes as part of the AuFoSat toolbox to support the future missions Triton-X; a multi-mission microsatellite platform developed by LuxSpace to accommodate various types of payloads in Low Earth Orbits (LEO). Previous AuFoSat research discussed orbit design [18], relative navigation [19, 20], and absolute orbit kee** for Triton-X [15]. While the developed algorithms in the framework of AuFoSat are meant to primarily be used onboard of Triton-X, the goal is to provide a guidance, navigation, and control toolbox that could be used by any satellite with the same, or similar, specifications as Triton-X.
This article is organized such that the following section of introduces the formulation of the relative orbital dynamics using the Relative Orbital Elements (ROE) formulation. In Section 3, the guidance problem is formulated as a convex programming problem, then it is transformed to a QP problem for it to be solved efficiently. The guidance scheme is validated in Section 4 where it is shown to work efficiently in the presence as well as in the absence of long no-thrust periods. Finally the module execution logic is introduced in Section 5 and the closed loop system is benchmarcked against another controller from the literature which deals with a similar problem.
2 Dynamical model
The reference frames used in this work are; the Earth-Centered-Inertial frame (ECI), denoted as , the Satellite-body-fixed frame, denoted as , and the Radial-Transversal-Normal frame (RTN), denoted as . The reader is advised to refer to [15] for a full definition of these reference frames. Vectors expressed in , , or are signified by the superscripts , , or respectively.
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 by the following set of orbital elements,
(1) |
where is the semi-major axis, is the mean argument of latitude, , is the eccentricity vector with being the orbital eccentricity, is the orbital inclination, and is the Right Ascension of the Ascending Node (RAAN). It is important to note that the motion of the satellite can also be parameterized by the Cartesian state vector, , where and are the absolute position and velocity vectors expressed in which can be mapped to/from the orbital elements through a set of nonlinear equations [21]. The exact position and velocity of the spacecraft 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 harmonic of the Earth gravitational potential are removed. Mean/osculating elements’ conversions are performed through the transformations developed in [22].
The relative motion between a deputy and a chief spacecraft can be described by the dimensionless quasi-nonsingular Relative Orbital Elements (ROE) vector which is a nonlinear transformation of the orbital elements vector introduced in Eq. 1,
(2) |
where is the dimensionless ROE vector, is the relative semi-major axis, is the relative mean longitude, is the relative eccentricity vector, and is the relative inclination vector. It is to be noted that here, and in the coming discussions, the subscript denotes a quantity related to the deputy satellite, while the subscript is used for chief-related quantities. Moreover, signifies a relative quantity between the deputy and the chief which is not necessarily the arithmetic difference between that of the deputy and that of the chief, while signifies the arithmetic difference between and , i.e. . As in the case of absolute orbital elements, the osculating ROE vector is denoted by , whereas the mean ROE vector is referred to as . A dimensional ROE vector is obtained by multiplying the dimensionless ROE vector by the semi-major axis of the chief,
(3) |
where is the dimensional mean ROE vector with units of length.
Assuming neighbouring orbits of the chief and the deputy, and a near-circular orbit of the chief, the dynamics of the ROE can be linearized to the first order considering the mean effect of the zonal harmonic. In fact, a closed form solution of the linearized dynamics can be obtained for piece-wise constant input acceleration as discussed in [8]. The system evolution is expressed in the following form,
(4) |
where is the State Transition Matrix (STM) between the two time instants, and , is the convolution matrix between the same two time instants, is the deputy’s mass which is assumed constant throughout any maneuver, and is the input thrust vector in ; constant over the period . In the rest of the text, and in order to simplify the representation of equations, the following notations are used, , , , and .
3 Guidance
In this section, a multiple shooting guidance scheme is developed when large relative orbit maneuvers are required between two satellites, a deputy and a chief, where the chief might be either a physical satellite or a virtual one. The deputy satellite is assumed to be equipped with a single throttleable electric thruster, which not only mandates redirection slew maneuvers before every thruster firing, but also dictates the thruster to operate perpetually since it provides low thrust. It is for these reasons that the guidance scheme is designed from the beginning to operate on an alternating on/off mode where the throttleable thruster is turned off to allow the attitude maneuver to taking place. The trajectory optimization problem is formulated such that the a change in relative orbit is required from at to a reference at through continuous thruster firings, where is an odd number. Figure 1 illustrates the alternation between thrust and attitude maneuvers throughout the allocated maneuver time, from to .
![Refer to caption](x1.png)
In order to enhance the predictability of the mission, the vector of time instants at which the thruster is turned on and off, , are not treated as optimization variables and are left as a user input. In Fig. 1, , are the forced (thrust-powered) time periods, while are those during which the natural unforced translational dynamics take over (coast arcs).
3.1 problem formulation
Letting,
(5) |
the guidance problem can be formally written as an optimization problem as follows,
Problem 1
(6) | |||
(7) | |||
(8) |
where , with and , is the matrix trace, and is the maximum allowable thrust by the onboard thruster. Note that Eq. 7 is a hard constraint to assure there is no input thrust provided during attitude redirection maneuvers. Indeed, Problem 1 stands as a Convex Optimization Problem (COP) since it fulfills all the necessary conditions for a problem to be one [23], which namely are; a) Cost function must be convex (for minimization problems); b) Inequality constraints must be convex; c) Equality constraints must be affine. Being a COP, Problem 1 is guaranteed to have a unique solution, however, it would be much more efficient to solve if it could be put in one of the standard classes of convex optimization problems, e.g. Linear Programming (LP), Quadratic Programming (QP), etc. since dedicated solvers for these classes have matured over the past decades. It is clear that the only thing which prevents Problem 1 from being put in the convex QP canonical form is constraint (8) since it is a quadratic constraint and not an affine one. It can be, nonetheless, transformed into multiple affine constraints using the methodology proposed in [24] which suggests that,
(9) |
where , with being the number of affine inequality constraints that approximate the Euclidean norm constraint, , with being the angle corresponding to the first direction, and . It is important to emphasise that the constraint relaxation, Eq. 9, is only applicable to 2-element vectors, while the norm constraint in Problem 1, constraint (8), is imposed on a 3-element vector, . The relaxation is, therefore, applied the projection of the constraining sphere on each plane individually. The ROE dynamics (refer to [8]) possess unique characteristics that necessitates an accurate approximation of the constraining circle lying in the T-N plane, while coarse approximations of the constraints on the two other planes are acceptable. Concretely, the optimal solution to Problem 1 is expected to rarely incorporate radial thrust [7, 14] since it is known to be more expensive, from the Delta-V point of view, than relying solely on transversal thrust, especially when the reconfiguration can afford long maneuver times for large in-plane maneuvers. It is for this reason that the relaxation in Eq. 9 is applied in the T-N plane with a larger number of directions, , than the number od directions used in the R-T and the R-N planes. Namely, we introduce as the number of directions that approximate the constraining circles lying in the R-T and the R-N planes, with , and with . In this setting, the constraints in the R-T and the R-N planes are approximated by two rhombuses which cover only around of the original constraining circles.
Having introduced the constraint relaxations which transform the quadratic constraints into multiple affine ones, the reformulation of Problem 1 as a QP problem can be written as,
Problem 2
(10) | |||
(11) | |||
(12) | |||
(13) |
A graphical representation of the feasibility regions of the control thrust components is given in Fig. 2 for both problems, Problem 1 and Problem 2. In Fig. 2, the constraint relaxation in Eq. 9 is depicted for and which covers approximately of the original constraining circle in the T-N plane.
![Refer to caption](x2.png)
It is important to note that while the relaxed constraint (13) does not explicitly constrain the radial thrust component any better than the original circular constraint, it does affect the choice of the radial-transversal and normal-radial combinations.
3.2 Parameters sensitivity analysis
Investigating the two proposed formulations of the guidance problems, 1 and 2, and their graphical representation Fig. 1, it can be deduced that the parameters that are provided by the user and might need tuning are namely the time instances at which the thruster is switched on and off (or alternatively the time periods and as well as the allocated maneuver time, ). The choice of the time periods and is generally subject to mission time constraints, e.g. not being able to provide thrust during eclipse, during ground contact, or during scientific experiments. If no such mission constraints are present, fixing the time periods and comes as a natural choice, i.e. . For this specific case, a sensitivity analysis is performed to assess the feasibility of the optimization problem when the values of and change. In this sensitivity analysis, Problem 2 was solved for randomly chosen initial conditions, i.e. , for the - combination drawn from and .
Furthermore, since the difference between the initial and the final ROE vectors is what characterizes the maneuver, and not the values of the vectors themselves, only the value of is chosen randomly, while the value of is set to zero for the experiments. Namely, the entries of the initial dimensional ROE vector, , are chosen randomly from the range, except for the initial relative mean argument of longitude, , which is chosen randomly from the . The allocated time for the maneuver is fixed to orbits.
The output of the sensitivity analysis is the success and failure regions in the - plane, where the success region is that in which the optimizer succeeded to find a feasible solution for all the random initial conditions. The success and failure regions of the aforementioned sensitivity study are depicted in Fig. 3(a).
![Refer to caption](x3.png)
![Refer to caption](x4.png)
Indeed, not all the points within the success region are the same from the fuel-efficiency point of view, since changing and does, in-turn, change the cost function. A fitness function is introduced to assess the competence of each - combination within the success region. The adopted fitness function is the reciprocal of the average optimal cost over the initial conditions at each - point.
The fitness
is calculated at each point in the success region and the results are presented in Fig. 3(b).
It is clear from Fig. 3(b) that changing the value of barely changes the fitness for a fixed value, while it is obvious that the larger the value of , the fitter the - combination. Nevertheless, there comes a point where increasing drives the combination out of the success region (see Fig. 3(a)). It is for this reason that the adopted value of in many of the numerical experiments to follow is set to , which is a value that guarantees acceptable fitness, and is, at the same time, far away from the failure region.
Although the purpose of the sensitivity analysis is ultimately to help choosing adroit values for and , since the time necessary for a slew maneuver heavily depends on the maximum slew rate, , for any specific satellite, the value of can be calculated analytically according to the following formula,
(14) |
The rationale behind Eq. 14 is that, since the maximum possible slew angle is , the longest time period it takes the satellite to perform any slew, using the maximum angular speed, is . Indeed, the satellite never uses the maximum angular speed throughout the whole slew, that is why the term is added to make sure that the allocated time for the slew maneuver, , is always more than enough. The importance of is not limited to insuring the coast arc is sufficient for the slew maneuver, it also proves to be useful in closing the loop as will be discussed in Section 5. For Triton-X, the maximum slew rate is , and hence is calculated to be s after choosing s.
4 Guidance scheme validation
After comparing the performance of many different convex QP solvers, the free open-source Operator Splitting Quadratic Program (OSQP) [25] stood as the fastest, and was hence chosen to solve Problem 2 in the coming discussions. In order to validate the proposed guidance scheme for the targeted maneuver spectrum, the optimization problem is solved for a variety of maneuvers, large and otherwise, using the parameters chosen based on the sensitivity study, and the results of one of these tests is reported here. In that experiment, the initial and final dimensional ROE vectors are randomly chosen to be, and , while the initial orbit of the chief is defined in terms of the osculating orbital elements such that . The full parameters list of the reported maneuver is presented in Table 1. Note that choosing to be zeros means that the two satellites are required to rendezvous at the final time.
[orbits] | [orbits] | ||||||
---|---|---|---|---|---|---|---|
It is to be noted that the satellite mass, the maximum thrust, and the maximum slew rate are extracted from the publicly available Triton-X specifications555The Triton-X brochure can be found at https://luxspace.lu/resources/.. Moreover, is set to as this is the least number of directions that approximates the constraining circle by multiple affine constraints while covering at least of the its area.
In Fig. 4, the dimensional ROE profile, optimized by the guidance scheme, is depicted. The plots in Fig. 4 reveal that the main goal of the guidance algorithm, which is to rendezvous with the virtual chief at the final time, is achieved. Moreover, the error is corrected through building momentum instead of firing in the radial direction.
![Refer to caption](x5.png)
The level of thrust provided by the onboard electric propulsion system is presented in Fig. 5(a). It is clear that the maximum thrust constraint is respected thanks to the relaxations (12) and (13) that approximate the original quadratic constraint (8). Furthermore, the fact that the satellite uses minimal radial thrust, as expected, is evident in Fig. 5(b) which depicts the projection of the thrust into the RTN frame.
![Refer to caption](x6.png)
![Refer to caption](x7.png)
To insure that the optimized trajectory is compliant with the maximum slew rate constraint, the mean angular rate is calculated at each time step and is shown in Fig. 7. It is obvious that the mean required angular speed is conceivably less than since the allocated time for the attitude maneuver, , is always more than the time required for the most extreme attitude maneuver.
Satellite missions usually have constraints on the timing of the orbital maneuvers, which arise from not being able to perform any thruster firing for example during ground contact or during eclipse periods. Unlike impulsive-thrust absolute/relative orbit correction maneuvers, low-thrust maneuvers may require too long to execute, days in some cases. It is for this reason that low-thrust guidance algorithms need to accommodate the no-thrust periods during the orbital maneuver itself. One of the main contributions of this note is the ability of the proposed guidance scheme to adapt to different scenarios where the thruster is required to shut down for known extended periods without the need to change the structure of the problem. The duration of each coast arc, (see Fig. 1), which is a user-input, is the only thing that needs to be adapted according to the operational constraints. To validate the ability of the trajectory optimization routine to accommodate long coast arcs, two different scenarios are introduced where the maneuver duration as well as the initial and final ROE vectors as fixed for both scenarios and only the no-thrust periods are varied. The thruster off-periods are arbitrarily chosen for each of the two scenarios and are reported in Fig. 7. The initial and final dimensional ROE vectors for both scenarios are set to, and , and the simulation parameters are identical to those reported in Table 1 except for which is set to orbits.
No-thrust periods [orbits] | |
---|---|
Scenario 1 | |
Scenario 2 |
![Refer to caption](x8.png)
The user-defined thruster no-thrust intervals for the two defined scenarios can be seen graphically in Fig. 8 where the expected behaviour of the thruster is presented.
![Refer to caption](x9.png)
It is important to emphasise that while the no-thrust periods are seen to appear with a regular pattern (from the halfway point to the end of each orbit) for scenario 1, this need not to be the case for operational time constraints, which is reflected in scenario 2.
The dimensional ROE profile, predicted by the guidance algorithm, is depicted in Fig. 9 for both scenarios, where the thruster off-periods are also shown. It is obvious that the signal is conceivably evolving even when no thrust is provided, since it can be manipulated not only directly through input thrust, but also indirectly through the non-zero value of . Notably, the total Delta-V is different for each of the scenarios, as it counts to in the first scenario and to in the second.
![Refer to caption](x10.png)
5 Closing the loop
The proposed trajectory optimization scheme is an open-loop control system that cannot handle disturbances or model inaccuracies. It is for this reason that the loop has to be closed to react to system changes in real-time. In this section, the feedback control loop is studied, and the exact location of the guidance module within the closed loop is discussed. The simulated module execution logic onboard of the deputy is depicted in Fig. 10, where the solid arrows signify the main signals that are recurrently passed, and the dashed lines are those which are passed only once before the beginning of the maneuver.
![Refer to caption](x11.png)
In Fig. 10, "Osc2Mean" is the function that transforms osculating orbital elements to mean ones [22], and "RTN2Inertial" is the method that rotates any vector from to given the position and velocity of the chief (or alternatively its orbital elements) at the time instant in question.
Moreover, the breve accent, , signifies a quantity which is disturbed by either one or a combination of a) Estimation errors, e.g. ; b) ADCS inaccuracies, e.g. ; or c) Physical constraints of the actuators, e.g. .
Note that in quantities with double subscripts, the first subscript refers to the spacecraft, either chief or deputy, and the second refers to the time instant at which the quantity is evaluated, e.g. is the perturbed orbital elements vector of the deputy at time .
Since the navigation module is out of the scope of this note, and in order to take the hardware inaccuracies and physical limitations into account within the numerical simulations, surrogate models for estimation inaccuracies as well as for the physical limitations and ADCS errors are introduced.
The physical limitations are only present in the saturation block in Fig. 10, which can be easily implemented in the numerical simulations. In fact, this saturation is taken into account in the guidance implementation as the maximum thrust constraint (see constraints (12) and (13) of Problem 2), nonetheless, it is also implemented in the control loop as a safeguard. The navigation surrogate model uses the input mean orbital elements of the deputy and the chief as ground truth. The following procedure is used on the chief spacecraft,
(15) |
where the two methods "OE2Cart" and "Cart2OE" are those which transform the Orbital elements vector into Cartesian state vector and vice versa, and is a normally distributed random variable with as its mean and as its variance. Hence, is the covariance matrix of the random noise affecting the estimation of the Cartesian state of the chief satellite, which is defined as,
(16) |
where is a function that creates a diagonal matrix, with zero off-diagonal elements, from its input arguments, and are the variances of the 1-dimensional (in the x, the y or the z directions) position and velocity estimation errors respectively. It is worth mentioning that the mean orbital elements of the deputy can be disturbed using the same model in Eq. 15, however using different variances for the 1-dimensional position and velocity estimation errors, namely, and . Moreover, relative navigation is, in general, more accurate than the absolute one [26, 20]. Hence the surrogate model for the relative navigation needed to be more than just converting the estimated absolute orbital elements of the chief and the target to a ROE vector. The following surrogate model is used instead,
(17) |
where OE2ROE is the method that transforms the orbital elements of the chief and deputy to a ROE vector according to Eq. 2, and is the covariance matrix of the zero mean normally distributed random disturbance vector, which can be expressed as,
(18) |
Lastly, the "Pointing error" block in Fig. 10 is using the the following surrogate model,
(19) |
where is the thruster misalignment unit quaternion, with being its quaternion conjugate, is the pointing error angle, which can be extracted from Triton-X brochure, is a random 3-element unit vector, and is the quaternion multiplication operator.
The "Controller" block collection in Fig. 10 works much like a Model Predictive Control (MPC) where the prediction horizon spans from the current time to the user-defined maneuver end time, and the control and prediction horizons are identical. In this setting, the control profile optimization as well as the state prediction from the current time to the maneuver final time is done recurrently by the trajectory optimization scheme (Problem 2), and the function of the "Arbiter" block is only to choose the proper input thrust from the provided guidance profile, namely the first or the second thrust vector from the guidance control profile depending on whether the current time lies within a forced or a natural translational motion period. The logic of the closed loop which is used in the validation simulations is elaborated upon in Algorithm 1. In this algorithm, is the user-defined time vector for the guidance (see Fig. 1), is the required final dimensional ROE vector, and is a tunable threshold.
The first guidance profile is conceivably calculated before the maneuver starting time, . As suggested by Algorithm 1, the trajectory might need to be optimized during the execution of the maneuver, and this is exactly when the importance of including within becomes apparent. While guarantees that is sufficient for the most stringent attitude redirection maneuver as Eq. 14 suggests, it is also used to optimize the next guidance profile if one needs to be optimized, for example before or (see Fig. 1), which is very valuable from the practical point of view.
To test the performance of the closed loop system using the proposed guidance scheme, it has been benchmarked against the MPC proposed in [14]. The Out-Of-Plane (OOP) maneuver in [14] is chosen for the benchmark because such maneuvers can give a clear insight about the fuel-optimality (-optimality for uni-directional propulsion systems) of the control algorithm since only thrust in the normal direction is required. In fact, the exact locations (in terms of ) in which impulsive thrust should be provided for a -optimal OOP maneuver can be calculated analytically [7], which makes it easy for a human eye to recognise -optimal thrust profiles. For the low-thrust case, the thrust in the normal direction is expected to be distributed evenly around these locations for the control profile to be close to -optimality, while the thrust components in the radial and transversal directions are expected to be around zero. The initial and final dimensional ROE vectors for benchmark maneuver as well as the chief’s initial orbit are drawn from [14] to be , , and . A summary of the parameters used in the benchmarck maneuver is provided in Table 2. All the parameters that are not reported are identical to the ones in Table 1 except for the length of the forced translational motion periods, which is set to for the first orbits of the maneuver and to for the final orbit to allow for a more precise approach to the target relative orbit.
[orbits] | |||||
---|---|---|---|---|---|
It is important to note that while , , , and are tunable parameters, the values of , and are extracted from the specification sheets of Triton-X even if the benchmark maneuver is assuming a different satellite.
The dimensional ROE profile generated by the proposed closed loop system as well as that which is generated by the reference control scheme (the one proposed in [14]) are depicted in Fig. 11. It is clear that the two control algorithms could achieve the final required dimensional ROE vector, , at the end of the maneuver at approximately the same time.
![Refer to caption](x12.png)
A comparison of the thrust profiles, projected to the RTN frame, between the proposed and the reference controllers is presented in Fig. 12. Since the maneuver is an OOP one, only thrust in the normal direction is expected to be exerted, however, one can notice that the reference control algorithm does occasionally fire in the transversal direction. The proposed as well as the reference controllers can be seen to provide almost no thrust in the radial direction. While this happens in the reference controller because a hard constraint is imposed on the radial thrust to be exactly zero, the proposed approach does not use radial thrust simply because it is optimal to not use it, as expected for this type of simulation scenarios. Furthermore, in Fig. 12 the two controllers are shown to distribute the available thrust around the -optimal locations since they are both -optimal algorithms.
![Refer to caption](x13.png)
Two key performance metrics are compared for both controllers, the proposed and the reference, in Section 5. The tables suggests that although the proposed algorithm uses more total , , than the reference one, the terminal error of the proposed controller is much less than that of the reference.
Terminal error | ||
---|---|---|
Proposed | ||
Reference |
![Refer to caption](x14.png)
Since the proposed control scheme is working much like an MPC, state prediction over the prediction horizon needs to be done recurrently through the guidance function, however, the guidance does not need to be run at each optimization step (see Fig. 10). It is evident in Algorithm 1 that the guidance is run only when the distance (in the dimensional ROE space) between current state and its prediction by the previous guidance profile is more than the threshold, . To show how often the guidance problem needs to be solved over the benchmark simulation, the elapsed time for every guidance run is depicted in Fig. 13, where an elapsed time of exactly zero means that the guidance is skipped and the previous guidance profile is used. It is important to note that the elapsed time in Fig. 13 correspond to the time it takes to construct and solve the problem using the OSQP solver [25] interfaced with Matlab and run on an 8-core Intel Core i9-10885H processor. It is clear from Fig. 13 that the elapsed time for every guidance run is getting smaller as the simulation advances since the size of the problem is getting smaller as the guidance problem is always solved from the current to the final time.
6 Conclusion
This note proposes a novel approach for guidance of an underactuated spacecraft to perform relative orbit corrections with respect to a reference satellite. The guidance scheme not only considers the typical constraints of the main spacecraft while performing the maneuver, but it also considers the dynamical constraint which arises from the satellite being equipped with a single electric thruster. Thanks to parameterizing the relative dynamics between the two spacecraft using the quasi non-singular relative orbital elements, the guidance problem was formulated as a quadratic programming problem, which, if feasible, is guaranteed to have exactly one solution that can be found using high-performance standard quadratic programming solvers. The proposed guidance scheme shows numerous inherent merits which include fuel-optimality and the ability to support long no-thrust periods arising from operational constraints. The paper also proposes a model-predictive-control-like scheme to close the control loop which does not require the guidance optimization to run at the beginning of each prediction horizon. This closed loop system has been validated via high fidelity numerical simulations in which navigation and actuators’ errors and constraints are emulated, and its performance is benchmarcked against that of a reference controller from the literature. The proposed guidance and control algorithms have shown superior performance over the reference controller for the benchmark simulation in terms of terminal tracking errors.
Acknowledgments
This research was funded in whole, or in part, by the Luxembourg National Research Fund (FNR), grant reference BRIDGES/19/MS/14302465. For the purpose of open access, and in fulfilment 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.
References
- Miller et al. [2021] Miller, S., Walker, M. L. R., Agolli, J., and Dankanich, J., “Survey and Performance Evaluation of Small-Satellite Propulsion Technologies,” Journal of Spacecraft and Rockets, Vol. 58, No. 1, 2021, pp. 222–231. 10.2514/1.A34774.
- Krejci and Lozano [2018] Krejci, D., and Lozano, P., “Space Propulsion Technology for Small Spacecraft,” Proceedings of the IEEE, Vol. 106, No. 3, 2018, pp. 362–378. 10.1109/JPROC.2017.2778747.
- Helmeid et al. [2022] Helmeid, E., Buursink, J., Poppe, M., Ries, P., and Gales, M., “The Integrated Avionics Unit - performance, innovation and application,” Poster presentation at The 4S Symposium, 2022. Vilamoura, Portugal, 2022.
- Stanzione and Sabbatinelli [2018] Stanzione, V., and Sabbatinelli, B., “PLATiNO Project: a new Italian multi-application small satellite platform for highly competitive missions.” 69th International Astronautical Congress (IAC), International Astronautical Federation, Bremen, Germany, 2018.
- Floberghagen et al. [2011] Floberghagen, R., Fehringer, M., Lamarre, D., Muzi, D., Frommknecht, B., Steiger, C., Piñeiro, J., and Da Costa, A., “Mission design, operation and exploitation of the gravity field and steady-state ocean circulation explorer mission,” Journal of Geodesy, Vol. 85, 2011, pp. 749–758.
- Larsson et al. [2011] Larsson, R., Noteborn, R., Bodin, P., Simone, D., Karlsson, T., and Carlsson, A., “Autonomous Formation Flying in LEO - Seven months of routine formation flying with frequent reconfigurations,” 4th International Conference on Spacecraft Formation Flying Missions & Technologies, 2011. URL https://elib.dlr.de/74364/.
- Gaias and D’Amico [2015] Gaias, G., and D’Amico, S., “Impulsive Maneuvers for Formation Reconfiguration Using Relative Orbital Elements,” Journal of Guidance, Control, and Dynamics, Vol. 38, No. 6, 2015, pp. 1036–1049. 10.2514/1.G000189.
- Di Mauro et al. [2018] Di Mauro, G., Bevilacqua, R., Spiller, D., Sullivan, J., and D’Amico, S., “Continuous maneuvers for spacecraft formation flying reconfiguration using relative orbit elements,” Acta Astronautica, Vol. 153, 2018, pp. 311–326.
- Chernick and D’Amico [2018] Chernick, M., and D’Amico, S., “New Closed-Form Solutions for Optimal Impulsive Control of Spacecraft Relative Motion,” Journal of Guidance, Control, and Dynamics, Vol. 41, No. 2, 2018, pp. 301–319. 10.2514/1.G002848.
- Scala et al. [2021] Scala, F., Gaias, G., Colombo, C., and Martín-Neira, M., “Design of optimal low-thrust manoeuvres for remote sensing multi-satellite formation flying in low Earth orbit,” Advances in Space Research, Vol. 68, No. 11, 2021, pp. 4359–4378.
- De Vittori et al. [2022] De Vittori, A., Palermo, M. F., Lizia, P. D., and Armellin, R., “Low-Thrust Collision Avoidance Maneuver Optimization,” Journal of Guidance, Control, and Dynamics, Vol. 45, No. 10, 2022, pp. 1815–1829. 10.2514/1.G006630.
- Gaias and Ardaens [2018] Gaias, G., and Ardaens, J.-S., “Flight Demonstration of Autonomous Noncooperative Rendezvous in Low Earth Orbit,” Journal of Guidance, Control, and Dynamics, Vol. 41, No. 6, 2018, pp. 1337–1354. 10.2514/1.G003239.
- Gaias et al. [2015] Gaias, G., D’Amico, S., and Ardaens, J.-S., “Generalised multi-impulsive manoeuvres for optimum spacecraft rendezvous in near-circular orbit,” International Journal of Space Science and Engineering, Vol. 3, No. 1, 2015, pp. 68–88. 10.1504/IJSPACESE.2015.069361.
- Belloni et al. [2023] Belloni, E., Silvestrini, S., Prinetto, J., and Lavagna, M., “Relative and absolute on-board optimal formation acquisition and kee** for scientific activities in high-drag low-orbit environment,” Advances in Space Research, 2023. https://doi.org/10.1016/j.asr.2023.07.051.
- Mahfouz et al. [2023a] Mahfouz, A., Gaias, G., Venkateswara, D. M. K. K., and Voos, H., “Autonomous Optimal Absolute Orbit Kee** Through Formation-Flying Techniques,” Preprints, 2023a. 10.20944/preprints202310.1189.v1.
- Ross [2006] Ross, I. M., “Space Trajectory Optimization and L1-Optimal Control Problems,” Modern Astrodynamics, Elsevier Astrodynamics Series, Vol. 1, edited by P. Gurfil, Butterworth-Heinemann, 2006, Chap. 6, pp. 155–VIII. https://doi.org/10.1016/S1874-9305(07)80008-2.
- Morgan et al. [2014] Morgan, D., Chung, S.-J., and Hadaegh, F. Y., “Model Predictive Control of Swarms of Spacecraft Using Sequential Convex Programming,” Journal of Guidance, Control, and Dynamics, Vol. 37, No. 6, 2014, pp. 1725–1740. 10.2514/1.G000218.
- Menzio et al. [2022] Menzio, D., Mahfouz, A., Vedova, D., et al., “Formation design of an inter-satellite link demonstration mission,” Proceedings of the 11th International Workshop on Satellite Constellations & Formation Flying, Milan, IT, 2022.
- Mahfouz et al. [2022] Mahfouz, A., Mezio, D., Dalla-Vedova, F., and Voos, H., “Relative State Estimation for LEO Formations with Large Inter-satellite Distances Using Single-Frequency GNSS Receivers,” Proceedings of the 11th International Workshop on Satellite Constellations & Formation Flying, Milan, IT, 2022.
- Mahfouz et al. [2023b] Mahfouz, A., Mezio, D., Dalla-Vedova, F., and Voos, H., “GNSS-based baseline vector determination for widely separated cooperative satellites using L1-only receivers,” Advances in Space Research, 2023b. https://doi.org/10.1016/j.asr.2023.06.037.
- Vallado [2001] Vallado, D. A., Fundamentals of astrodynamics and applications, Vol. 12, Springer Science & Business Media, 2001.
- Gaias et al. [2020] Gaias, G., Colombo, C., and Lara, M., “Analytical Framework for Precise Relative Motion in Low Earth Orbits,” Journal of Guidance, Control, and Dynamics, Vol. 43, No. 5, 2020, pp. 915–927. 10.2514/1.G004716.
- Boyd and Vandenberghe [2004] Boyd, S. P., and Vandenberghe, L., Convex optimization, Cambridge university press, 2004, Chap. 4, pp. 136–137.
- Camino et al. [2019] Camino, J.-T., Artigues, C., Houssin, L., and Mourgues, S., “Linearization of Euclidean norm dependent inequalities applied to multibeam satellites design,” Computational Optimization and Applications, Vol. 73, 2019, pp. 679–705. 10.1007/s10589-019-00083-z.
- Stellato et al. [2020] Stellato, B., Banjac, G., Goulart, P., Bemporad, A., and Boyd, S., “OSQP: an operator splitting solver for quadratic programs,” Mathematical Programming Computation, Vol. 12, No. 4, 2020, pp. 637–672. 10.1007/s12532-020-00179-2.
- D’Amico et al. [2009] D’Amico, S., Ardaens, J.-S., and Montenbruck, O., “Navigation of formation flying spacecraft using GPS: the PRISMA technology demonstration,” Proceedings of the 22nd International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS 2009), 2009, pp. 1427–1441.