Next Article in Journal
Turbopump Parametric Modelling and Reliability Assessment for Reusable Rocket Engine Applications
Previous Article in Journal
Mathematical Modeling of the Global Engineering Process for Optimizing Product Quality in the Aerospace Industry
Previous Article in Special Issue
The 3Cat-4 Spacecraft Thermal Analysis and Thermal Vacuum Test Campaign Results
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Fuel-Efficient and Fault-Tolerant CubeSat Orbit Correction via Machine Learning-Based Adaptive Control

by
Mahya Ramezani
,
Mohammadamin Alandihallaj
* and
Andreas M. Hein
Interdisciplinary Centre for Security, Reliability and Trust (SnT), University of Luxembourg, 2 Avenue de l’Universite L, 4365 Esch-sur-Alzette, Luxembourg
*
Author to whom correspondence should be addressed.
Aerospace 2024, 11(10), 807; https://doi.org/10.3390/aerospace11100807
Submission received: 30 August 2024 / Revised: 23 September 2024 / Accepted: 26 September 2024 / Published: 30 September 2024
(This article belongs to the Special Issue Small Satellite Missions)

Abstract

:
The increasing deployment of CubeSats in space missions necessitates the development of efficient and reliable orbital maneuvering techniques, particularly given the constraints on fuel capacity and computational resources. This paper presents a novel two-level control architecture designed to enhance the accuracy and robustness of CubeSat orbital maneuvers. The proposed method integrates a J2-optimized sequence at the high level to leverage natural perturbative effects for fuel-efficient orbit corrections, with a gated recurrent unit (GRU)-based low-level controller that dynamically adjusts the maneuver sequence in real-time to account for unmodeled dynamics and external disturbances. A Kalman filter is employed to estimate the pointing accuracy, which represents the uncertainties in the thrust direction, enabling the GRU to compensate for these uncertainties and ensure precise maneuver execution. This integrated approach significantly enhances both the positional accuracy and fuel efficiency of CubeSat maneuvers. Unlike traditional methods, which either rely on extensive pre-mission planning or computationally expensive control algorithms, our architecture efficiently balances fuel consumption with real-time adaptability, making it well-suited for the resource constraints of CubeSat platforms. The effectiveness of the proposed approach is evaluated through a series of simulations, including an orbit correction scenario and a Monte Carlo analysis. The results demonstrate that the integrated J2-GRU system significantly improves positional accuracy and reduces fuel consumption compared to traditional methods. Even under conditions of high uncertainty, the GRU-based control layer effectively compensates for errors in thrust direction, maintaining a low miss distance throughout the maneuvering period. Additionally, the GRU’s simpler architecture provides computational advantages over more complex models such as long short-term memory (LSTM) networks, making it more suitable for onboard CubeSat implementations.

1. Introduction

The rise of CubeSats has revolutionized the space industry, providing a cost-effective and efficient means to conduct a wide range of scientific and technological missions. Since the first CubeSat was launched in 2003 [1], these small satellites have gained significant popularity due to their compact size, reduced mass, and relatively short development timelines compared to traditional satellites. The adoption of CubeSats is driven largely by their use of commercial-off-the-shelf (COTS) components, which substantially lower the barriers to entry for space missions, making them accessible to academic institutions, small companies, and emerging space-faring nations. CubeSats have been successfully deployed in various applications, including Earth observation [2,3], communication [4], air traffic management [5], ionospheric science [6], active orbital debris removal [7], wildfire detection [8], gravity wave detection [9], and even interplanetary exploration [10].
Despite the advantages offered by CubeSats, their operational deployment poses several challenges, particularly in achieving precise orbital maneuvers. CubeSats are typically launched as secondary payloads, which means that their insertion orbits are not specifically tailored to the mission requirements but rather subject to the constraints of the primary payload [11]. This results in significant orbital variances that need to be corrected for the CubeSat to achieve its designated orbital elements. Such corrections are crucial, especially in missions involving constellations or formations of multiple CubeSats [12,13], where precise coordination and positioning are imperative.
Recent work in the CubeSat domain has mainly explored constellations and control methods. For instance, Jaffer et al. optimized CubeSat constellations for air traffic monitoring through ADS-B signals, demonstrating the potential of small satellite constellations in Earth observation and traffic management applications [14]. Similarly, Gu et al. [15] proposed an extended 2D map for satellite coverage analysis considering elevation-angle constraints, which enhances the accuracy of coverage calculations. Bai et al. presented a multi-stage constant-vector thrust control approach for finite-thrust Lambert transfers, contributing to more efficient orbital maneuver planning in [16]. Additionally, Zhou et al. [17] introduced a parametric formation control method for nanosatellite constellations, emphasizing cooperative observation missions such as those targeting the China Space Station.
One of the primary challenges in orbital maneuvering for CubeSats is the limitation in the onboard fuel capacity. Due to their small size, CubeSats can only carry a limited amount of propellant, which necessitates highly efficient maneuvering strategies to conserve fuel. Moreover, the propulsion systems available for CubeSats generally offer low thrust levels, requiring prolonged operational durations to achieve the necessary changes in velocity ( Δ V ) for orbit correction [18]. This is further compounded by the limited electric power generated by CubeSats, which restricts the continuous operation of propulsion systems and, consequently, the ability to perform extensive maneuvers. Moreover, it is not practical to use complex control methods such as MPC [19,20] in CubeSats due to onboard processor limitations.
To address the challenge of limited fuel availability onboard small satellites, various orbit insertion and maneuvering techniques have been proposed in the literature to reduce dependency on fuel consumption for orbital corrections. One prominent research area involves utilizing aerodynamic forces to control satellite orbits. This approach typically involves deploying large panels to generate drag forces in specific directions, thereby influencing the satellite’s trajectory [21]. For example, the potential of using aerodynamic forces for CubeSat orbit control has been thoroughly examined in [22]. Shao et al. [23] extended this concept to satellite rendezvous scenarios by leveraging aerodynamic forces for orbital adjustments. Similarly, differential drag-based rendezvous maneuvers of multiple spacecraft under J 2 perturbation were analyzed in [24]. The control of satellite formations using lift and drag forces under the influence of J 2 perturbation is further explored in [25]. Varna and Kumar [26] designed a sliding mode controller to manage multiple satellite formation flying using aerodynamic forces. In a similar vein, Prez and Bevilacqua [27] developed a Lyapunov-based adaptive feedback control strategy to regulate satellite orbits through aerodynamic drag. The use of lift forces for satellite formation control is also discussed in [28]. Moreover, Omar and Bevilacqua [29] proposed a time-optimal collision avoidance strategy using aerodynamic drag, which was derived from an analytical solution and iteratively refined using high-fidelity orbit propagators.
In addition to aerodynamic control, several other auxiliary maneuvers have been proposed to further enhance orbit corrections. These include exploiting solar radiation pressure [30,31], third-body perturbations [32], the Moon’s gravitational influence [33,34], magnetic disturbances [35,36], tethered system [37], and electromagnetic forces [38,39]. However, the effectiveness of these methods is highly dependent on the specific orbital regime and the relative positions of the Earth, Moon, and Sun.
In addition to fuel and power constraints, the reliance on COTS components introduces variability in manufacturing accuracy and the performance of onboard systems. These variabilities can lead to deviations from the expected performance, further complicating the task of precise orbital maneuvering [40]. The components, while cost-effective, may not always meet the standards required for space operations, leading to unmodeled dynamics and uncertainties during the maneuver execution.
To address these challenges, this paper presents an innovative approach that combines advanced orbital mechanics with state-of-the-art machine learning techniques. Central to this approach is the development of the J 2 -optimized sequence, a maneuvering strategy that leverages the J 2 perturbation—caused by the Earth’s equatorial bulge (oblateness)—to reduce the amount of propellant required for orbit corrections. The J 2 perturbation is a dominant force in low Earth orbits (LEOs) [41], where most CubeSats operate, and can be exploited to assist in achieving desired orbital changes with minimal fuel consumption. The J 2 -optimized sequence is designed specifically to operate within the constraints of CubeSat missions, optimizing fuel usage while maintaining the desired orbital parameters.
While higher-order zonal harmonics (e.g., J 3 and J 4 ) and lunar-solar gravitational effects can be incorporated into orbital maneuver planning, these techniques are more suited for higher orbits, long-duration missions, or missions around other planets and asteroids [42,43]. In LEO, the J 2 perturbation is the dominant force, and focusing on it provides significant fuel savings with reduced computational complexity compared to more complex perturbation-based techniques. For CubeSats with limited onboard resources, the J 2 -based approach strikes an optimal balance between efficiency and simplicity.
The Earth’s gravitational field is not perfectly spherical due to the planet’s equatorial bulge, resulting in a perturbation known as the J 2 effect. This oblateness, quantified via the J 2 harmonic coefficient, significantly influences the motion of satellites in LEOs. The J 2 perturbation induces secular changes in orbital elements, most notably in the right ascension of the ascending node ( Ω ), the argument of perigee ( ω ), and, to a lesser extent, the inclination. These secular variations are crucial in orbit determination and long-term orbital planning. In particular, the J 2 perturbation causes a precession of the orbital plane, with the rate of change in Ω being directly related to the satellite’s altitude and inclination. Recent studies [44,45] have explored the intricate dynamics resulting from Earth’s oblateness, offering insights into both short- and long-term effects on satellite orbits. Vallado [46] provided a comprehensive overview of the fundamental effects of J 2 on satellite dynamics, with detailed mathematical derivations that highlight its importance in mission design and trajectory correction. Similarly, Montenbruck and Gill [47] discussed practical methods for accounting for J 2 perturbation in satellite control and navigation systems, offering both theoretical insights and applied strategies for satellite operators. Additionally, Hoots incorporated J 2 effects in the SGP4 propagation model in [48], which is widely used in satellite tracking and prediction, further emphasizing the critical role of Earth’s oblateness in satellite mission planning and operations. These references collectively underscore the necessity of accounting for J 2 perturbation in the development of efficient and accurate satellite control strategies.
The inherent uncertainties and unmodeled dynamics in CubeSat operations necessitate a more adaptive and resilient maneuvering approach. To address these challenges, machine learning (ML) emerges as a promising solution, offering the ability to adapt to and mitigate the effects of unmodeled dynamics and uncertainties [49]. Various studies [50,51,52] have demonstrated the effectiveness of ML techniques in different contexts, highlighting their potential for improving the accuracy and reliability of complex systems under real-world conditions. Within the spectrum of ML approaches, long short-term memory (LSTM) networks are often considered due to their capability to handle sequential data and long-term dependencies [53,54]. However, LSTM networks demand substantial computational resources, which exceed the capabilities of CubeSats, making them impractical for onboard use [55]. To this end, the paper introduces a novel two-level ML framework that leverages a gated recurrent unit (GRU) model [56], an alternative to LSTM, designed to enhance the accuracy and reliability of orbital maneuvers within the constraints of CubeSat platforms. The GRU is particularly well-suited for this application because it efficiently processes time-sequenced data, such as the maneuvering sequences required in orbital operations, while maintaining a lower computational burden compared to LSTM [57].
In the proposed method, the J 2 -optimized sequence, as the higher level, is responsible for designing and optimizing the maneuver sequence. At the lower level of the proposed framework, the GRU model monitors discrepancies between the planned maneuver sequence and the actual outcomes observed during execution to detect possible disturbances and misalignments. It then correctly generates the best maneuver to reach the waypoint generated by the high-level controller, aiding in the initialization with the high-level controller. By continuously adapting to the errors and uncertainties that arise from factors such as COTS component variability and external perturbations, the GRU adjusts the maneuvering sequence in real-time, ensuring that the CubeSat remains on its intended trajectory with enhanced precision. The interplay between the two levels of the ML framework enables the system to iteratively refine the maneuvers, achieving a level of precision that would be difficult to attain with traditional methods alone.
The incorporation of ML into the maneuvering strategy offers several key advantages. ML algorithms, particularly those that are capable of learning and adapting in real-time, are well-equipped to handle the complexities of space dynamics, which are characterized by non-linearities, time-varying behaviors, and uncertainties [58]. The GRU model’s ability to process temporal sequences and adjust its predictions based on new data makes it particularly effective in dealing with the dynamic nature of orbital maneuvers. Furthermore, the ML approach reduces the reliance on extensive pre-mission simulations and modeling, allowing for more flexible and responsive mission operations.
This paper provides a comprehensive analysis of the proposed approach, detailing the development and implementation of the J 2 -optimized sequence and the two-level ML framework. The methodology is validated through numerical simulations, which demonstrate the effectiveness of the J 2 -optimized sequence in reducing fuel consumption and the capability of the ML framework to enhance maneuver accuracy under uncertain conditions. The results underscore the potential of integrating ML with traditional orbital mechanics to advance the state of CubeSat mission planning and execution.
This paper makes several key contributions to the field of CubeSat orbital maneuvering:
  • Introduction of the J 2 -optimized sequence: A maneuvering strategy that leverages the J 2 perturbation to reduce fuel consumption in orbit corrections. This approach is specifically tailored to the constraints of CubeSat missions, enhancing fuel efficiency while maintaining precise orbital parameters.
  • Development of a two-Level ML framework: The paper presents an innovative two-level machine learning approach which improves the accuracy and reliability of CubeSat maneuvers. The augmented GRU model adapts to real-time deviations and uncertainties, while the low-level controller dynamically optimizes the maneuver sequence.
This paper introduces several key innovations in the field of CubeSat orbital maneuvering. Unlike traditional methods that rely solely on pre-planned sequences or computationally expensive optimization techniques, our approach combines the natural perturbative effects of the Earth’s oblateness with a machine learning-based controller that can adapt in real-time. The use of the J 2 -optimized sequence for fuel efficiency, combined with the GRU-based low-level control for real-time adaptability, allows our method to outperform existing techniques in both fuel consumption and maneuver accuracy, especially under uncertain conditions. These advancements mark a significant contribution to the field of small satellite control, making it more accessible and practical for CubeSat missions.
The structure of the paper is organized as follows: In Section 2, the orbital dynamics and the mathematical model of the problem are thoroughly presented, establishing the theoretical foundation necessary for understanding the subsequent developments. Section 3 introduces the ML method, focusing on the architecture and operation of the two-level ML framework, including the GRU model and its role. In addition, it presents the detailing of the J 2 -optimized sequence’s formulation and the mechanics of leveraging the J 2 perturbation to minimize fuel consumption in orbit corrections. In Section 4, simulation results are presented, showcasing the effectiveness of the J 2 -optimized sequence and the ML framework in practical scenarios, along with a comprehensive analysis of the improvements in maneuver accuracy and fuel efficiency. Finally, Section 5 concludes the paper with a summary of the findings, discussing the implications of the proposed approach for future CubeSat missions and potential avenues for further research.

2. Orbital Dynamics and Mathematical Modeling

The precise control of a CubeSat’s orbit requires a thorough understanding of orbital dynamics, especially when considering the perturbative forces that influence a satellite’s trajectory over time. In this chapter, we present the fundamental equations that govern the orbital motion of a CubeSat, particularly under the influence of the Earth’s oblateness, known as the J 2 perturbation. We then derive a state-space representation of the system dynamics, which will be used as the foundation for developing advanced control strategies in subsequent chapters.

2.1. Classical Orbital Elements

The state of a satellite in orbit is typically described using a set of classical orbital elements, which provide a complete description of the satellite’s orbit in a Keplerian framework. These elements are:
  • Semimajor axis ( a ): Represents the size of the orbit, specifically half the longest diameter of the elliptical orbit.
  • Eccentricity ( e ): Defines the shape of the orbit, indicating how much the orbit deviates from being circular.
  • Inclination ( i ): The tilt of the orbital plane relative to the Earth’s equatorial plane.
  • Right ascension of the ascending node ( Ω ): The angle from a reference direction (typically the vernal equinox) to the point where the orbit crosses the equatorial plane from south to north.
  • Argument of perigee ( ω ): The angle from the ascending node to the orbit’s point of closest approach to Earth.
  • Argument of latitude ( u ): The angle from the ascending node to the satellite’s current position, measured along the orbit.
These six elements form the state vector x = a , e , i , Ω , ω , u T , which fully defines the satellite’s position within its orbit, as shown in Figure 1.

2.2. Gauss’ Variational Equations

The time evolution of the orbital elements is governed by Gauss’ variational equations (GVEs), which describe how these elements change under the influence of external forces, such as gravity and thrust. When considering the effect of the Earth’s oblateness, characterized by the J 2 perturbation, the GVEs take the following form [59,60]:
d a d t = 2 a 2 h e sin θ f r + p r f c
d e d t = 1 h p sin θ f r + p + r cos θ + r e f c
d i d t = r cos u h f n
d Ω d t = 3 R e 2 J 2 n 2 p 2 cos i + r sin u h sin i   f n
d ω d t = 3 R e 2 J 2 n 4 p 2 4 5 sin 2 i + p h e 1 + r p sin θ f c cos θ f r r sin u h tan i   f n
d u d t = h r 2 3 R e 2 n J 2 4 p 2 sin 2 i 5 3 1 e 2   + 2 1 e 2   4 r sin u h tan i   f n
where θ denotes the true anomaly, h is the orbit angular momentum, n represents the orbit mean motion, r is the orbit radius, and p denotes the orbit semi-latus rectum. In addition, J 2 and R e are the second zonal harmonic, due to the Earth oblateness, and the Earth mean radius, respectively. Moreover, the propulsion acceleration components f r , f c , and f n are in the radial, along-track, and cross-track directions, respectively, of a local-vertical-local-horizontal (LVLH) reference frame centered on the CubeSat. The LVLH reference frame is a rotating coordinate system centered on the satellite. In this frame, the x L -axis points in the radial direction, the z L -axis is perpendicular to the orbital plane and aligns with the angular momentum vector, and the y L -axis completes the right-handed coordinate system, as illustrated in Figure 2. These equations form the basis for understanding how the orbital elements evolve over time, both naturally and under the influence of applied thrust.
The J 2 perturbation arises from the Earth’s equatorial bulge, which causes the gravitational field to deviate slightly from a perfect sphere. This perturbation induces secular changes in the orbital elements, particularly affecting the right ascension of the ascending node Ω and the argument of perigee ω . For CubeSats operating in LEOs, where this perturbative force is most significant, accounting for the J 2 effect is crucial for maintaining precise control over the satellite’s orbit.
The secular effects of the J 2 perturbation can be advantageous if leveraged correctly. For instance, by designing orbital maneuvers that align with the natural precession induced by J 2 , it is possible to achieve desired changes in the orbit with minimal fuel consumption. This concept is central to the J 2 -optimized sequence, which will be introduced in the next section.

2.3. State-Space Formulation

To effectively analyze and control the orbital dynamics of a CubeSat, the system can be represented in a state-space form, which is a robust method for modeling complex systems. In this approach, the state vector x includes the orbital elements that describe the satellite’s orbit, while the input vector u represents the control inputs provided by the satellite’s propulsion system. The system’s dynamics are expressed as a set of first-order differential equations that describe how the state vector evolves over time.
The state-space representation of the orbital dynamics can be formulated as:
x ˙ = A x + B x u + d
in which x ˙ denotes the time derivative of the state vector, capturing the rates of change of the orbital elements. The vector A x accounts for the natural evolution of these elements due to the Earth’s gravitational field, particularly the perturbative effects of the J 2 term, which is defined as:
A x = 0 0 0 3 R e 2 J 2 n 2 p 2 cos i 3 R e 2 J 2 n 4 p 2 4 5 sin 2 i h r 2 3 R e 2 n J 2 4 p 2 sin 2 i 5 3 1 e 2   + 2 1 e 2   4
This formulation captures the effect of the Earth’s oblateness on the orbital parameters over time, particularly causing secular variations in the right ascension of the ascending node Ω and the argument of perigee ω .
The term B x u represents the impact of the control inputs on the orbital elements. Here, B x is the control influence matrix that maps the input vector u = f r , f c , f n T —the propulsion forces applied in the radial, along-track, and cross-track directions—to changes in the state vector x . The B x matrix is given by:
B x = 2 a 2 h e sin θ 2 a 2 h p r 0 1 h p sin θ 1 h p + r cos θ + r e 0 0 0 r cos u h 0 0 r sin u h sin i p h e cos θ p h e 1 + r p sin θ r sin u h tan i 0 0 r sin u h tan i
This matrix demonstrates how the different components of the thrust vector influence the orbital elements, allowing for precise control of the satellite’s trajectory.
The final term d in the state-space formulation (2) accounts for higher-order disturbances that are not directly captured by the primary terms A ( x ) and B ( x ) u . These disturbances include the gravitational influences from the Moon and the Sun, atmospheric drag forces, higher-order zonal harmonics beyond J 2 , and other external perturbations. Although generally smaller in magnitude, these disturbances can accumulate over time, leading to significant deviations if not properly accounted for in the control strategy.
The state-space formulation (2) will be crucial in subsequent chapters as we explore how to leverage the J 2 perturbation for efficient orbit correction and how to mitigate the effects of the disturbances encapsulated by d .

3. Integrated Control Methodology for CubeSat Orbital Maneuvering

This chapter presents an integrated control methodology designed to address the challenges of precise orbital maneuvering for CubeSats, considering the uncertainties and disturbances that affect the system during operations. The control framework consists of two interconnected layers: a high-level control layer that utilizes the J 2 -optimized sequence to generate waypoints for reaching the terminal point and a low-level control layer based on a GRU network to design maneuvers for reaching each waypoint, considering environmental uncertainties and control misalignments. This combined approach enables precise trajectory corrections while minimizing fuel consumption and compensating for the effects of unmodeled dynamics.

3.1. Overview of the Two-Level Control Architecture

The proposed control architecture for CubeSat orbital maneuvering consists of two interconnected layers: a high-level control layer and a low-level control layer. At the core of this system is the J 2 -optimized sequence, implemented within the high-level control layer. This sequence calculates an optimal maneuver plan based on the desired final orbital parameters, the initial orbital state, and the available time window for executing the maneuvers. The inputs to this controller include the initial orbital parameters x 0 , the final desired parameters x f , and the time window for maneuver completion. The output is a detailed maneuver plan specifying the timing and magnitude of each Δ V maneuver across five distinct steps, along with the expected orbital parameters at the end of each step.
While the J 2 -optimized sequence effectively calculates the maneuver sequence, it does not account for external disturbances or manufacturing and control errors inherent in the CubeSat’s hardware. These unmodeled dynamics can cause deviations between the actual CubeSat behavior and the expected results from the J 2 -optimized sequence. To address this, a low-level control layer is introduced, designed to monitor the performance of the high-level maneuvers and calculate real-time adjustments. This layer is based on a GRU network, which helps the system reach each waypoint generated by the J 2 -optimized sequence. The GRU network utilizes the initial maneuver generated by the J 2 -optimized sequence as a warm start to calculate appropriate adjustments, considering disturbances and uncertainties in the environment, ensuring the CubeSat reaches its destination safely and accurately.
The GRU network is trained offline using simulated data generated from the J 2 -optimized sequence and the satellite’s dynamic model. During training, the GRU learns the satellite’s maneuvering behavior and how to adjust the required Δ V and timing to reach each waypoint, compensating for unknown disturbances and potential control misalignments. The inputs to the GRU include the CubeSat’s current state x c and the waypoint generated by the high-level control layer. The GRU’s output provides the necessary adjustments in Δ V and timing to ensure the CubeSat accurately follows the desired trajectory, despite any real-time uncertainties.
The proposed two-level architecture is highly adaptive, enabling precise orbital corrections even in the presence of uncertainties. The block diagram of the system is illustrated in Figure 3, showing the interactions between the high-level controller (green color), low-level controller (blue color), Kalman filter (red color), and the CubeSat dynamics (purple color). The combined operation of these components allows the CubeSat to execute the optimal maneuver sequence while continuously adapting to real-time conditions. It should be noted that all parameters and designations introduced in the diagram are defined and discussed in detail in the following subsections.

3.2. High-Level Control Layer

The high-level control layer is mainly responsible for generating the waypoints to reach the final target point and detailed maneuver commands in the environment without uncertainties. This layer focuses on implementing the orbital maneuvers in a fuel-efficient manner. The maneuvers are divided into in-plane and out-of-plane maneuvers, each targeting specific orbital elements.

3.2.1. In-Plane Maneuver Theory

In-plane maneuvers primarily modify the semi-major axis a and the argument of latitude u , as these generally require less Δ V compared to out-of-plane maneuvers that adjust the inclination i and the right ascension of the ascending node Ω . The first in-plane maneuver is typically used to adjust the semi-major axis a . From a linear approximation of Gauss’s variational equations (Equation (1a)), the maneuver for modifying a is derived as follows:
Δ V c a a 2 , a 1 = h r 2 a 1 2 p Δ a
where Δ V c a = f c B t is the change in velocity in the along-track direction, and B t is the propulsion burn time. In this equation, a 1 and a 2 represent the initial and final semi-major axes, respectively, and Δ a = a 2 a 1 is the desired change in the semi-major axis. The maneuver is executed by applying a controlled thrust over a specific burn time B t .
A more complex in-plane maneuver is required to adjust the argument of latitude u while keeping a unchanged. A double-thrust solution is used to achieve this, which involves performing a pair of along-track maneuvers that cancel each other’s effects on a while modifying u . The change in u is given by:
Δ V c u ± u 2 , u 1 = ± μ a 2 1 + Δ u 2 π k 2 3 1
where k represents the number of revolutions between the two thrust impulses, and u 1 and u 2 are the initial and final arguments of latitude, respectively. This maneuver assumes the CubeSat is in a circular orbit and targets precise control over the argument of latitude without affecting the semi-major axis.

3.2.2. Out-of-Plane Maneuver Theory

Out-of-plane maneuvers are necessary for modifying the inclination i and the right ascension of the ascending node Ω . These maneuvers typically require larger Δ V compared to in-plane maneuvers. According to Gauss’s equations (Equation (1c) and (1d)), the maneuvers for adjusting i and Ω can be derived as follows:
Δ V n i i 2 , i 1 = h r cos ( u ) Δ i , u = z π Δ V n Ω Ω 2 , Ω 1 = h sin i r sin u Δ Ω , u = 2 z 1 π / 2
where z is an integer. The first equation represents the required velocity change for adjusting the inclination i while keeping Ω constant, and the second equation adjusts Ω while keeping i constant. These maneuvers are typically performed at specific points in the orbit, as indicated by the values of u , to maximize efficiency.
A combined out-of-plane maneuver can be used to simultaneously modify both i and Ω using a single thrust at a specific argument of latitude u * , which is determined by equating the right-hand sides of Equation (7). The optimal argument of latitude is:
u * = tan 1 ΔΩ Δ i sin i 1  
Substituting u * into (7) gives the required velocity change for the combined maneuver:
Δ V n i Ω Δ i , Δ Ω = h r Δ i 2 + Δ Ω sin i 1 2
In practice, if the CubeSat’s propulsion system cannot provide the necessary thrust instantaneously, the maneuver must be executed over a longer burn time. In this case, the continuous variation in i and Ω is given using the following integrals:
Δ i = f n 0 B t r cos u h d t Δ Ω = f n 0 B t r sin u h sin i   d t
where B t is the propulsion burn time. Figure 4 illustrates the relative error of the plane change maneuvers derived from Equation (7) compared to Equation (10) as a function of B t for a sun-synchronous orbit at 786 km altitude. While Equation (7) assumes a single thrust maneuver, longer burn times, B t , reduce the accuracy due to the linear approximation and the continuous movement of the satellite during the maneuver, which is taken into account in Equation (10). The results show that while the relative error gradually increases with longer burn times, it remains below 1% for B t 470 s. If a smaller maximum burn time, B t m a x , is selected to reduce error, multiple consecutive maneuvers are required to achieve the desired changes. For each thrust, the optimal u * and the required velocity change Δ V n i Ω are recalculated, and the burn time is set to min B t m a x , B t r e q u i r e d , where B t r e q u i r e d is given by:
B t r e q u i r e d = Δ V n i Ω Δ i , Δ Ω / f n
If B t r e q u i r e d > B t m a x , the maneuver is continued in the next orbital revolution with updated values for u * and Δ V n i Ω .

3.2.3. Orbital Maneuver Planning

For transferring a CubeSat into its desired final orbit, two options, as maneuvering sequences, are presented in this section. The first maneuvering option is the classic sequence, which utilizes the maneuvers outlined in the previous section for the orbit correction, Equations (5)–(9), without employing the beneficial effects of J 2 perturbation. Note that in the rest of the paper, the orbital elements of the initial, transfer, and final orbits are designated by the subscripts “0”, “t”, and “f”, respectively. In addition, it is assumed that each maneuvering sequence starts from the time epoch t 0 and completes at t 0 + τ .
The classic sequence first modifies Ω and i simultaneously using a Δ V n i Ω Δ i , Δ Ω maneuver, where Δ i = i f i 0 and Δ Ω = Ω f Ω 0 . Then, it utilizes an in-plane maneuver of Δ V c a a f , a 0 to correct a . Finally, the sequence performs Δ V c u ± u f , u 1 to change u to the desired value, where u 1 represents the argument of latitude of CubeSat before starting the maneuver. It should be noted that because of changing a between two impulses of Δ V c u ± u f , u 1 , Ω ˙ is changed due to the J 2 perturbation, and as a result, the final Ω may be different from Ω f , which should be compensated for using a pure right ascension of the ascending node modification maneuver, Δ V n Ω Ω 2 , Ω 1 . The drift angle of Ω with respect to the desired orbit during the Δ V c u ± u f , u 1 maneuver, Δ Ω e , can be obtained using a first-order Taylor series approximation of Gauss’ Equation (1d) as follows:
Δ Ω e = 21 R e 2 J 2 n f 4 a f 3 cos i f Δ t t
where Δ t t denotes the time duration between the pair of Δ V c u ± u f , u 1 impulses. Thus, the total required Δ V for the classic sequence can be obtained as:
Δ V C = Δ V n i Ω Δ i , Δ Ω + Δ V c a a f , a 0 + Δ V c u ± u f , u 1 + Δ V n Ω Δ Ω e
The J 2 -optimized sequence attempts to take benefits from the J 2 perturbation by placing the CubeSat on a transfer orbit with appropriate a t and i t , so that the J 2 perturbation decreases the error in Ω and u with respect to the desired orbit over the maneuvering period. If the initial and transfer orbits have a similar right ascension of the ascending node at the epoch, Ω t = Ω 0 , the necessary condition for convergence of Ω to the desired value, using the J 2 perturbation, is:
Ω ˙ f = Ω ˙ 0 + Ω f Ω 0 τ
which can be substituted into Gauss’ Equation (1d) to find i t as:
i t = cos 1 Ω ˙ f + Δ Ω τ 3 R e 2 J 2 n t 2 p t 2
Considering the orbital period of the transfer and desired orbits, the necessary condition to achieve the desired value of the argument of latitude, u f , can be found as:
a t = a f 1 + u f u 0 + δ u j 2 2 π k 2 3
where k is the number of revolutions of the CubeSat on the transfer orbit. Moreover, δ u j 2 represents the variation of the argument of latitude of the CubeSat on the transfer orbit with respect to the desired orbit due to the J 2 perturbation, which can be calculated using a first-order Taylor series approximation of the Gauss’s Equation (1f), as:
δ u j 2 = 3 R e 2 J 2 a f 3 sin 2 i f 1 3 μ 4 a f 3 n f + n f a f a t τ 3 R e 2 n J 2 2 a f 2 sin 2 i f i f i t τ
Equation (17) describes the variation of the argument of latitude δ u j 2 due to the J 2 perturbation during the transfer orbit. This equation accounts for the secular effects of J 2 perturbation, which arise from the Earth’s equatorial bulge, and how these effects influence the CubeSat’s orbital elements over time. The first part of Equation (17) considers the secular change in the argument of latitude caused by the change in semi-major axis a between the final orbit, a f , and the transfer orbit, a t . The second part captures the effect of the J 2 perturbation due to the inclination change, Δ i , on the argument of latitude. The equation shows how these two factors contribute to the drift in the argument of latitude over the maneuvering period, demonstrating the cumulative impact of both the semi-major axis and inclination changes on the orbital parameters.
Figure 5 shows the diagram of the J 2 -optimized sequence. The sequence begins with an in-plane maneuver of Δ V c a a t , a 0 to change the semi-major axis of the orbit (the red arrow). Then, the inclination angle of the transfer orbit is provided by a pure inclination change maneuver of Δ V n i i t , i 0 (the blue arrow). When the CubeSat is inserted in the appropriate transfer orbit, the argument of latitude and right ascension of the ascending node slowly drift to the desired values, because of the J 2 perturbation (the purple arrow). Then, the CubeSat should perform the maneuver of Δ V c a a f , a t over the last orbital revolution of the maneuvering period when the argument of latitude exactly matches the desired value (the orange arrow). Finally, a pure inclination change maneuver of Δ V n i i f , i t should be performed at t = t 0 + τ to reach the desired orbit (the green arrow). It is worth noting that since out-of-plane maneuvers are performed at u = z π , the argument of latitude is not affected by the maneuvers. The total required Δ V of the sequence can be obtained as:
Δ V J = Δ V c a a t , a 0 + Δ V n i i t , i 0 + Δ V c a a f , a t + Δ V n i i f , i t

3.3. Kalman Filtering for Input Estimation

In the proposed control architecture, a continuous-time Kalman filter is employed to estimate the pointing accuracy, α , which represents the uncertainties in the thrust direction during the CubeSat’s orbital maneuvers. Accurate estimation of α is crucial for the low-level control layer, allowing the GRU to dynamically adjust the maneuver sequence in response to real-time conditions. The Kalman filter is designed to estimate the hidden states (unmeasured properties) of the system, even if the measurements are imprecise and uncertain [61]. The pointing accuracy is measured by measuring the difference of the actual input forces, u ( t ) , and the expected input force, u ^ t , represented by
α t = cos 1 u t · u ^ t u t u ^ t
For this purpose, the Kalman filter’s responsibility is to estimate u ( t ) . We augment the state-space model by including the input vector as part of an extended state vector. The augmented state vector, ζ t , is defined as:
ζ t = x t u t
The dynamics of the augmented state vector are governed by:
ζ ˙ t = F t ζ t + w t
where F t is the state transition matrix derived from the original system dynamics, and w t represents the process noise associated with the dynamics of both the state and input vectors. Specifically, F t is structured as:
F t = A t B t 0 0
where the zero matrices reflect the assumption that the input dynamics are driven by process noise rather than deterministic processes. The matrix A ( t ) represents the Jacobian of the nonlinear function with respect to the state, and it is defined as A t = A x x x = x ^ t . This matrix captures the local linearization of the system dynamics around the current state estimate x ^ t . It reflects how small changes in the state vector x impact the system dynamics. However, the matrix B ( x ) in Equation (2), which represents the control input’s effect on the system, does not need to be linearized. Since B ( x ) is already a function of x , and x evolves over time, B ( x ) is naturally time-varying and can be directly treated as B t = B x ^ t .
The Kalman filter operates by predicting the evolution of the augmented state vector ζ t over time, based on the state transition model. The filter also predicts the error covariance, which quantifies the uncertainty in the state and input estimates. The prediction step involves the following equations:
ζ ~ ˙ t = F t ζ ~ t P ˙ t = F t P t + P t F T t + Q t
where ζ ~ t is the predicted state vector, P t is the predicted error covariance matrix, and Q t represents the process noise covariance matrix.
As new measurements of the state vector x t are obtained, the Kalman filter updates the state estimates. The measurement model links the observed states to the augmented state vector through a measurement matrix, H t , which extracts the state vector from the augmented state. The measurement model is expressed as:
y t = H t ζ ~ t + v t
where y t is the measurement vector, and v t is the measurement noise. In this context, the measurement matrix, H t , is given by:
H t = I 0
The Kalman gain, K t , is computed to optimally combine the predicted state and the new measurements. The gain is calculated as [62]:
K t = P t H T t H t P t H T t + R t 1
where R t is the measurement noise covariance matrix. The Kalman gain adjusts the weight given to the measurement versus the model prediction in the state update.
The state vector ζ ~ t , which includes the input vector u t , is updated continuously as new measurements become available. The state update equation is:
ζ ~ t = ζ ~ t + K t y t H t ζ ~ t
The updated error covariance matrix is computed as:
P ˙ t = I K t H t P t
Through this continuous-time Kalman filtering process, the filter provides real-time estimates of the actual input forces u ( t ) , compensating for discrepancies between commanded and actual inputs caused by uncertainties and disturbances. These estimates are then used to refine the control strategy, allowing for more precise adjustments to the CubeSat’s maneuvering sequence.

3.4. Low-Level Control Layer

While the high-level control layer, utilizing the J 2 -optimized sequence, generates an optimal maneuver plan under ideal conditions, it is not immune to external disturbances and unmodeled dynamics. These factors can cause deviations from the planned trajectory, necessitating real-time corrections. To address this, we propose the integration of a GRU-based low-level control layer. This layer is designed to provide adaptive maneuver adjustments, ensuring the CubeSat reaches its target orbit accurately despite environmental uncertainties. The GRU is a type of recurrent neural network (RNN) specifically designed to handle sequential data and capture dependencies over time, making it an ideal choice for processing orbital state data and predicting necessary maneuver adjustments. Unlike traditional RNNs, GRUs are computationally efficient and mitigate the vanishing gradient problem, which is crucial given the limited computational resources available on CubeSats.
The GRU network inputs include:
  • Current orbital state x c : A vector representing the CubeSat’s current orbital parameters.
  • Waypoint x i : The next target waypoint generated by the high-level J 2 -optimized sequence, representing the desired state in the maneuver plan.
  • Pointing accuracy: The pointing accuracy of the CubeSat that is estimated by the Kalman filter.
  • Historical state data: A sequence of previous orbital states and control inputs, enabling the GRU to maintain context and predict future deviations.
The outputs of the GRU include:
  • Adjusted Δ V : The necessary correction to the delta velocity that compensates for any deviations from the planned trajectory.
  • Adjusted timing: The timing adjustments required to execute the maneuvers at the optimal moments, ensuring precise control despite disturbances.
The GRU network consists of several key components: the update gate, reset gate, candidate hidden state, and final hidden state. The update gate controls how much of the previous hidden state should be retained, while the reset gate determines how much of the past information should be forgotten when calculating the candidate hidden state.
For each time step, t , the update gate, z t is calculated as:
z t = σ W z x t + U z h t 1 + b z
where σ is the sigmoid activation function, x t is the input at time step t , h t 1 is the hidden state from the previous time step, W z and U z are the weight matrices, and b z is the bias term.
The reset gate, r t , which controls how much of the previous hidden state to use in calculating the candidate hidden state, is given by:
r t = σ W r x t + U r h t 1 + b r
Using the reset gate, the candidate hidden state, h ~ t , is computed as follows:
h ~ t = tanh W h x t + U h r t h t 1 + b h
where denotes element-wise multiplication, and t a n h is the hyperbolic tangent activation function. The candidate hidden state, h ~ t , represents the new information that could be added to the final hidden state.
The final hidden state, h t , which captures the updated information for the current time step, is given by:
h t = 1 z t h t 1 + z t h ~ t
The hidden state, h t , encapsulates the learned knowledge from both the past and current time steps, making it suitable for predicting adjustments needed in future maneuvers. The GRU’s output y ( t ) = Δ V a d j t   t a d j t T   provides the necessary adjustments for Δ V and maneuver timing as
y ( t ) = W y h ( t ) + b y
where t a d j is the maneuver timing adjustment.
The GRU is trained offline using a dataset generated through simulations. These simulations model the CubeSat’s dynamics under various conditions using STK including different types of disturbances such as atmospheric drag, gravitational perturbations, and thruster misalignments. Simulated scenarios are created where the CubeSat executes a maneuver plan generated by the J 2 -optimized sequence. The simulations introduce disturbances that cause deviations from the ideal trajectory. The GRU is trained in a supervised manner, with the objective of minimizing the mean squared error (MSE) between the GRU’s predicted adjustments and the adjustments calculated from the simulations. The MSE loss function effectively penalizes inaccurate predictions, guiding the GRU to learn the correct mapping from the inputs to the necessary adjustments. To prevent overfitting and ensure robust performance across a wide range of conditions, dropout is applied during training. The GRU’s performance is validated using a separate dataset, comprising scenarios not seen during training, to test its ability to generalize to new and unexpected disturbances.
L = i N λ y p ( t i ) y t ( t i ) 2
where y p ( t i ) is the predicted adjustment at time t i , y t ( t i ) is the target adjustment based on the simulation, N is the number of training samples, and λ is a positive of the normalized weight.
Once trained, the GRU is deployed onboard the CubeSat as part of the low-level control layer. During the mission, the GRU operates in real-time, continuously receiving updates on the CubeSat’s current state and comparing it with the planned trajectory. Based on this information, the GRU provides instantaneous adjustments to the maneuver plan, specifically adjusting the ΔV and timing for each waypoint generated by the high-level controller. This allows the CubeSat to maintain its desired trajectory, even in the presence of unmodeled dynamics and environmental uncertainties.

4. Experiment Result and Discussion

This section evaluates the performance of the proposed control strategy through numerical simulations. The first part investigates the effectiveness of the J 2 -optimized sequence in orbital corrections. The second part assesses the proposed approach by analyzing the training process and comparing the results against those obtained using an LSTM-based method.

4.1. Performance Evaluation of the J 2 -Optimized Sequence

The performance of the proposed J 2 -optimized sequence is assessed through an orbit correction scenario involving a 10 kg CubeSat equipped with a 0.1 N continuous thruster, capable of a maximum burn time of 7 min per maneuver. The scenario assumes an initial time epoch of t 0 = 2 days and a total maneuvering period of τ = 30 days. Two cases are considered, each with initial deviations in the orbital elements relative to a target circular sun-synchronous orbit at an altitude of 786 km. The orbital deviations for both cases are presented in Table 1.
Figure 6 compares the evolution of orbital element deviations between the actual and desired CubeSat positions for case A using both the classic and J 2 -optimized sequence. The results show that with the J 2 -optimized sequence, δ i is initially increased to achieve a sufficient rate of change in δ Ω , allowing δ Ω to converge steadily to zero by the end of the sequence, using the J 2 perturbation while maintaining the transfer orbit inclination i t . Additionally, the deviations in δ a and δ u are concurrently reduced to zero by the sequence’s conclusion. It can be seen in Figure 7, where the miss distance is compared, that the CubeSat gradually approaches the desired position, achieving a final positional accuracy better than 1.2 km. The remaining positional error is attributed to the truncation in the Taylor series expansion used in Gauss’ equations and the fact that the thrust application is continuous rather than impulsive.
For the classic sequence, the figures show that i and Ω are modified simultaneously at the initial epoch. However, due to the influence of the J 2 perturbation, δ Ω slowly increases, necessitating an additional maneuver, Δ V n Ω Δ Ω e , at the end of the sequence to correct the right ascension. Despite this correction, the final positional accuracy is slightly worse than in the J 2 -optimized sequence, with an error of approximately 2 km relative to the desired position. The larger final deviation in the classic sequence is primarily due to the last maneuver, Δ V n Ω Δ Ω e , which also introduces a slight change in u , causing the CubeSat to drift from the desired position. This final maneuver is needed because, during the u correction maneuver, it is assumed that both i and Ω remain constant; however, in practice, Ω changes due to the J 2 perturbation. The longer the u correction maneuver takes, the more adjustment is needed for Ω at the end, leading to greater deviations in u and, consequently, a larger positional error.
In contrast, in the J 2 -optimized sequence, the correction in Ω is naturally achieved by the J 2 perturbation itself. Given sufficient time, u eventually converges to its desired value, resulting in a more accurate final position.
Beyond improving positional accuracy, the J 2 -optimized sequence also outperforms the classic sequence in terms of fuel consumption for case A. The total required Δ V for the J 2 -optimized sequence is 24 m / s , compared to 91 m / s for the classic sequence. However, the J 2 -optimized sequence does not always guarantee lower fuel consumption. Figure 8 depicts the required Δ V for cases A and B as a function of the maneuver period τ , comparing the classic and J 2 -optimized sequence. For case A, the classic sequence consumes less Δ V than the J 2 -optimized sequence when τ < 9 days, while for case B, the classic sequence is more fuel-efficient when τ < 24 days.
As the maneuver period increases, the required Δ V generally decreases. However, for case A using the J 2 -optimized sequence, the Δ V stabilizes for τ > 37 days because i 0 i t i f during this period, resulting in a constant value of Δ V n i i t , i 0 + Δ V n i i f , i t = Δ V n i i f , i 0 . In this scenario, i t = i 0   when τ = 37 days, providing a sufficient rate of change for δ Ω to converge to zero by the end of the sequence. For τ < 37 days, the increasing difference i f i t leads to a larger Δ V n i i f , i t . In case B, where i f < i t , the Δ V decreases monotonically with the J 2 -optimized sequence, approaching a minimum value (equivalent to i t i f ) as τ approaches infinity.
In general, if the admissible maneuvering period is limited, using the J 2 -optimized sequence increases the fuel consumption, and as a result, the classic sequence is practically reasonable to be chosen. If the maneuvering period can be sufficiently large, the effect of J 2 perturbation on Ω can be utilized for reducing the fuel consumption using the J 2 -optimized sequence.

4.2. Performance Evaluation of the Machine Learning Approach

The performance of the proposed machine learning approach for adjusting orbital maneuvers is evaluated by training the GRU network using a comprehensive dataset generated in a simulated environment. The database was created by modeling various orbital scenarios and disturbances using the Systems Tool Kit (STK) 12.3 and MATLAB 2024a. These scenarios include different initial orbital conditions, various levels of atmospheric drag, solar radiation pressure, gravitational perturbations from the Moon and Sun, and other environmental factors. The database is designed to cover a wide range of possible situations that the CubeSat might encounter during its mission, providing a robust foundation for training the machine learning model.
To ensure the model’s reliability and generalizability, a five-fold cross-validation approach was employed during the training process. This method divides the dataset into five subsets, using four subsets for training and one for validation in each iteration. The model is trained over multiple iterations, with the process repeated five times, ensuring that each subset is used for validation once. This approach helps prevent overfitting and ensures that the model performs well on unseen data.
Through simulations, the best hyperparameters for the GRU network were selected. These hyperparameters include the number of layers, the number of neurons in each layer, the learning rate, the batch size, and the dropout rate. The selected hyperparameters, which provided the optimal balance between accuracy and computational efficiency, are presented in Table 2.
The structure of the GRU network used in this study is as follows: the network consists of three layers, each containing 128 neurons. The ReLU (rectified linear unit) activation function is applied to introduce non-linearity into the network, allowing it to model complex relationships between the inputs and outputs. A dropout rate of 0.3 is used to prevent overfitting by randomly disabling 30% of the neurons during each training iteration. The Adam optimizer, known for its efficiency and adaptability in training deep neural networks, is employed to minimize the loss function.
Additionally, the Kalman filter parameters critical for achieving accurate state estimation are meticulously configured. The measurement noise covariance matrix ( R ) and the process noise covariance matrix ( Q ) are set with all diagonal values at 0.001 and 0.01, respectively. These values reflect the precision of onboard sensors and the expected low measurement noise, along with accounting for uncertainties in the dynamics and external disturbances. The calibration of these matrices was determined through iterative testing, ensuring robust state estimations under various operational conditions.
The training process was monitored by evaluating the loss function, which measures the error between the predicted and actual outcomes. Figure 9 shows the normalized loss for both training and validation sets as a function of the number of iterations. The plot demonstrates that the model converges after approximately 130 iterations, with the loss function reaching a stable minimum. This indicates that the GRU network effectively learns the relationships between the input features and the necessary adjustments for orbital maneuvering, ensuring accurate predictions.
In addition to evaluating the model’s accuracy, the computational efficiency of the GRU-based approach was compared with a long short-term memory (LSTM) network, another popular RNN architecture used for time-series predictions. The comparison focuses on the total computational time required for training and the time taken to make predictions during operation. Table 3 presents the computational time values for both methods.
The results indicate that the GRU network is significantly faster than the LSTM network in both training and prediction phases. The primary reason for this difference is the GRU’s simpler architecture. The GRU network uses fewer gates than the LSTM, reducing the computational complexity. Specifically, the GRU has two gates (update and reset) compared to the LSTM’s three gates (input, forget, and output), which simplifies the computations involved in updating the hidden state. Additionally, the GRU’s lower memory footprint further contributes to its faster performance, making it more suitable for onboard implementations where processing power and energy consumption are limited.
To further evaluate the performance of the trained system, a Monte Carlo simulation was conducted, focusing on the scenario described in Section 4.1. In this simulation, the initial altitude of the CubeSat was varied randomly within the range of 700 to 800 km to assess the robustness of the system under varying initial conditions. Additionally, the pointing accuracy of the CubeSat was modeled as a normal distribution with a covariance of α degrees, simulating the uncertainties in the thrust direction.
The accuracy of the system was evaluated by measuring the miss distance, defined as the minimum distance between the CubeSat and the target orbit during the maneuvering period, as a function of α . The Monte Carlo simulation was performed for both the trained system, which combines the J 2 -optimized sequence with the GRU and Kalman filter, and for a system that relies solely on the J 2 -optimized sequence without the GRU (acting as the low-level controller).
Figure 10 presents the miss distance as a function of α for the system (including median, interquartile range (IQR), and outliers) using only the J 2 -optimized sequence. As shown in the figure, the miss distance increases significantly with α . For α = 4 degrees, the miss distance is already around 20 km. When α > 10 degrees, the miss distance exceeds 4000 km. The primary reason for this dramatic increase is that, due to uncertainties in the thrust direction, the semi-major axis of the orbit cannot be effectively controlled, leading to a gradual shift of the CubeSat away from the target. As α increases to 20 degrees, the CubeSat fails to approach the target in many cases, demonstrating the limitations of relying solely on the J 2 -optimized sequence under high uncertainty.
In contrast, Figure 11 illustrates the miss distance versus α for the proposed combined system that integrates the J 2 -optimized sequence with the GRU and Kalman filter. The results clearly demonstrate that the GRU, aided by the Kalman filter, effectively compensates for uncertainties in the thrust direction. Although the miss distance does increase with α , the system maintains a much lower miss distance even at higher values of α . For example, with α = 20 degrees, the average miss distance remains around 10 km, which is within acceptable limits for most missions. This stark contrast highlights the enhanced performance of the combined system, which not only leverages the fuel-saving benefits of the J 2 perturbation but also offers robust and fault-tolerant control through the GRU and Kalman filter.
The results of the Monte Carlo simulation underscore the advantages of integrating the J 2 -optimized sequence with advanced machine learning techniques. This combination not only capitalizes on the natural perturbations to reduce fuel consumption but also provides a robust solution capable of maintaining accuracy under significant uncertainties. The GRU’s ability to adapt to real-time data and the Kalman filter’s precise input estimation contribute to a system that is both efficient and resilient, making it highly suitable for CubeSat missions in dynamic and uncertain environments.
The performance of the two-level control architecture is influenced by the frequency of updates between the high-level J 2 -optimized sequence and the low-level GRU-based controller. Through sensitivity analysis, we observed that increasing the update frequency enhances the system’s ability to respond to disturbances in real time, improving positional accuracy. However, even with reduced update frequency, the GRU-based controller compensates for the delay, though with a slight decrease in accuracy under highly dynamic conditions. A moderate update frequency, such as once per orbital period, provides an optimal balance between computational demands and control precision.

5. Conclusions

This paper presents a novel and integrated two-level control architecture designed to enhance the accuracy and robustness of CubeSat orbital maneuvers, addressing the challenges posed by limited onboard fuel and the uncertainties inherent in space environments. By integrating a J 2 -optimized sequence for fuel-efficient maneuver planning with a GRU-based low-level controller for real-time adaptation, the proposed method significantly improves the performance of CubeSat orbital corrections. The results from our detailed simulations demonstrated the clear effectiveness of the combined J 2 -GRU approach. In the orbit correction scenario, the proposed system achieved a final positional accuracy that represents a 40% improvement in positional accuracy, highlighting the system’s enhanced capability to maintain precise orbital parameters under uncertainty. Fuel efficiency was another critical aspect evaluated in this study. The total Δ V required for the J 2 -optimized sequence resulted in a nearly 75% reduction in fuel consumption under optimal conditions.
The Monte Carlo simulations further emphasized the robustness of the proposed system. When evaluating the performance under varying pointing accuracies, the GRU-based system maintained a limited miss distance. In contrast, the system using only the J 2 -optimized sequence exhibited a dramatic increase in the miss distance. This demonstrates the GRU’s ability to effectively compensate for uncertainties in the thrust direction, resulting in a system that is not only fuel-efficient but also highly fault tolerant.
Moreover, the computational efficiency of the GRU was highlighted in the comparison with an LSTM-based approach. The GRU achieved similar levels of accuracy while reducing the training time by about 26% and prediction time by 39%, making it more suitable for onboard implementations where the processing power is limited. This finding underscores the importance of the GRU’s streamlined architecture in resource-constrained CubeSat platforms.
The proposed control methodology represents a significant advancement in CubeSat orbital maneuvering by combining the fuel-saving benefits of J 2 perturbation with the adaptability and robustness of machine learning. Its demonstrated ability to maintain high positional accuracy and low fuel consumption, even under considerable uncertainties, makes it a promising solution for future CubeSat missions, particularly in environments where resource constraints and operational uncertainties are prevalent. Future work will explore scaling the architecture for multi-satellite constellations and expanding its use in longer-duration CubeSat missions.

Author Contributions

Methodology, M.R. and M.A.; Formal analysis, M.A.; Investigation, M.R.; Writing—original draft, M.R. and M.A.; Supervision, M.A. and A.M.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Data is contained within the article.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Swartwout, M. The first one hundred cubesats: A statistical look. J. Small Satell. 2013, 2, 213–233. [Google Scholar]
  2. Nag, S.; Li, A.S.; Merrick, J.H. Scheduling algorithms for rapid imaging using agile Cubesat constellations. Adv. Space Res. 2018, 61, 891–913. [Google Scholar] [CrossRef]
  3. Alandihallaj, M.A.; Emami, M.R. Multiple-payload fractionated spacecraft for earth observation. Acta Astronaut. 2022, 191, 451–471. [Google Scholar] [CrossRef]
  4. Alandihallaj, M.A.; Hein, A.M. Exploring the potential of fractionated spacecraft for enhanced satellite connectivity: Application to the satellite-to-cell case. Acta Astronaut. 2024, 223, 58–76. [Google Scholar] [CrossRef]
  5. Wu, S.; Chen, W.; Cao, C.; Zhang, C.; Mu, Z. A multiple-CubeSat constellation for integrated earth observation and marine/air traffic monitoring. Adv. Space Res. 2021, 67, 3712–3724. [Google Scholar] [CrossRef]
  6. Duann, Y.; Chang, L.C.; Chao, C.-K.; Chiu, Y.-C.; Tsai-Lin, R.; Tai, T.-Y.; Luo, W.-H.; Liao, C.-T.; Liu, H.-T.; Chung, C.-J. IDEASSat: A 3U CubeSat mission for ionospheric science. Adv. Space Res. 2020, 66, 116–134. [Google Scholar] [CrossRef]
  7. Hakima, H.; Bazzocchi, M.C.; Emami, M.R. A deorbiter CubeSat for active orbital debris removal. Adv. Space Res. 2018, 61, 2377–2392. [Google Scholar] [CrossRef]
  8. Alandihallaj, M.; Emami, M.R. Monitoring and Early Detection of Wildfires Using Multiple-payload Fractionated Spacecraft. In Proceedings of the 73rd International Astronautical Congress (IAC), Paris, France, 18–22 September 2022. [Google Scholar]
  9. Westerhoff, J.; Earle, G.; Bishop, R.; Swenson, G.R.; Vadas, S.; Clemmons, J.; Davidson, R.; Fanelli, L.; Fish, C.; Garg, V. LAICE CubeSat mission for gravity wave studies. Adv. Space Res. 2015, 56, 1413–1427. [Google Scholar] [CrossRef]
  10. Kohout, T.; Näsilä, A.; Tikka, T.; Granvik, M.; Kestilä, A.; Penttilä, A.; Kuhno, J.; Muinonen, K.; Viherkanto, K.; Kallio, E. Feasibility of asteroid exploration using CubeSats—ASPECT case study. Adv. Space Res. 2018, 62, 2239–2244. [Google Scholar] [CrossRef]
  11. Villela, T.; Costa, C.A.; Brandão, A.M.; Bueno, F.T.; Leonardi, R. Towards the thousandth CubeSat: A statistical overview. Int. J. Aerosp. Eng. 2019, 2019, 5063145. [Google Scholar] [CrossRef]
  12. Alandihallaj, M.A.; Emami, M.R. Satellite replacement and task reallocation for multiple-payload fractionated Earth observation mission. Acta Astronaut. 2022, 196, 157–175. [Google Scholar] [CrossRef]
  13. Emami, M.R.; Alandihallaj, M.A. Performance Enhancement of Fractionated Spacecraft for Earth Observation. In Proceedings of the 44th COSPAR Scientific Assembly, Athens, Greece, 16–24 July 2022; Volume 44, p. 57. [Google Scholar]
  14. Jaffer, G.; Malik, R.A.; Aboutanios, E.; Rubab, N.; Nader, R.; Eichelberger, H.U.; Vandenbosch, G.A. Air traffic monitoring using optimized ADS-B CubeSat constellation. Astrodynamics 2024, 8, 189–208. [Google Scholar] [CrossRef]
  15. Gu, Y.; Chen, Y.; Zhang, Y.; Wu, G.; Bai, S. Extended 2D Map for Satellite Coverage Analysis Considering Elevation-Angle Constraint. IEEE Trans. Aerosp. Electron. Syst. 2024, 1–24. [Google Scholar] [CrossRef]
  16. Bai, S.; Wang, Y.; Liu, H.; Sun, X. Finite-Thrust Lambert Transfer Based on Multistage Constant-Vector Thrust Control. IEEE Trans. Aerosp. Electron. Syst. 2023, 59, 4947–4967. [Google Scholar] [CrossRef]
  17. Zhou, H.; Jiao, B.; Dang, Z.; Yuan, J. Parametric formation control of multiple nanosatellites for cooperative observation of China Space Station. Astrodynamics 2024, 8, 77–95. [Google Scholar] [CrossRef]
  18. Yost, B.; Weston, S. State-of-the-Art Small Spacecraft Technology; Ames Research Center: Moffett Field, CA, USA, 2024. [Google Scholar]
  19. Amin Alandihallaj, M.; Assadian, N.; Khorasani, K. Stochastic model predictive control-based countermeasure methodology for satellites against indirect kinetic cyber-attacks. Int. J. Control 2023, 96, 1895–1908. [Google Scholar] [CrossRef]
  20. Alandihallaj, M.A.; Assadian, N.; Varatharajoo, R. Finite-time asteroid hovering via multiple-overlapping-horizon multiple-model predictive control. Adv. Space Res. 2023, 71, 645–653. [Google Scholar] [CrossRef]
  21. London, H.S. Change of satellite orbit plane by aerodynamic maneuvering. J. Aerosp. Sci. 1962, 29, 323–332. [Google Scholar] [CrossRef]
  22. Omar, S. Using Differential Aerodynamic Forces for CubeSat Orbit Control, Auburn University, Auburn, AL, USA. 2013. Available online: https://digitalcommons.usu.edu/cgi/viewcontent.cgi?article=2969&context=smallsat (accessed on 23 September 2024).
  23. Shao, X.; Song, M.; Zhang, D.; Sun, R. Satellite rendezvous using differential aerodynamic forces under J2 perturbation. Aircr. Eng. Aerosp. Technol. Int. J. 2015, 87, 427–436. [Google Scholar] [CrossRef]
  24. Bevilacqua, R.; Romano, M. Rendezvous maneuvers of multiple spacecraft using differential drag under J2 perturbation. J. Guid. Control Dyn. 2008, 31, 1595–1607. [Google Scholar] [CrossRef]
  25. Shao, X.; Song, M.; Wang, J.; Zhang, D.; Chen, J. Satellite formation keeping using differential lift and drag under J2 perturbation. Aircr. Eng. Aerosp. Technol. 2017, 89, 11–19. [Google Scholar] [CrossRef]
  26. Varma, S.; Kumar, K.D. Multiple satellite formation flying using differential aerodynamic drag. J. Spacecr. Rocket. 2012, 49, 325–336. [Google Scholar] [CrossRef]
  27. Pérez, D.; Bevilacqua, R. Lyapunov-based adaptive feedback for spacecraft planar relative maneuvering via differential drag. J. Guid. Control Dyn. 2014, 37, 1678–1684. [Google Scholar] [CrossRef]
  28. Ivanov, D.; Kushniruk, M.; Ovchinnikov, M. Study of satellite formation flying control using differential lift and drag. Acta Astronaut. 2018, 152, 88–100. [Google Scholar] [CrossRef]
  29. Omar, S.R.; Bevilacqua, R. Spacecraft collision avoidance using aerodynamic drag. J. Guid. Control Dyn. 2020, 43, 567–573. [Google Scholar] [CrossRef]
  30. Mishne, D.; Edlerman, E. Collision-avoidance maneuver of satellites using drag and solar radiation pressure. J. Guid. Control Dyn. 2017, 40, 1191–1205. [Google Scholar] [CrossRef]
  31. Mishne, D. Collision Avoidance Maneuver of Propulsionless Satellite, Using Solar Radiation Pressure. Israel Soc. of Aeronautics and Astronautics Paper WeL2T3. In Proceedings of the 56th Israel Annual Conference on Aerospace Sciences, Tel-Aviv and Haifa, Israel, 9–10 March 2016. [Google Scholar]
  32. Villac, B.; Scheeres, D. New class of optimal plane change maneuvers. J. Guid. Control Dyn. 2003, 26, 750–757. [Google Scholar] [CrossRef]
  33. Prado, A.F. Orbital control of a satellite using the gravity of the moon. J. Braz. Soc. Mech. Sci. Eng. 2006, 28, 105–110. [Google Scholar] [CrossRef]
  34. Torres, K.D.S.; Prado, A. Changing inclination of Earth satellites using the gravity of the Moon. Math. Probl. Eng. 2006, 2006, 013690. [Google Scholar] [CrossRef]
  35. Ganesh, K. Controls Algorithm for A Satellite Using Earth’s Magnetic Field: Orbit Maneuvers and Attitude Positioning; University of Central Florida, Orlando, FL, USA. 2007. Available online: https://stars.library.ucf.edu/etd/3169/ (accessed on 23 September 2024).
  36. Streetman, B.; Peck, M.A. Gravity-assist maneuvers augmented by the Lorentz force. J. Guid. Control Dyn. 2009, 32, 1639–1647. [Google Scholar] [CrossRef]
  37. AlandiHallaj, M.; Assadian, N. Multiple-horizon multiple-model predictive control of electromagnetic tethered satellite system. Acta Astronaut. 2019, 157, 250–262. [Google Scholar] [CrossRef]
  38. Hallaj, M.A.A.; Assadian, N. Tethered satellite system control using electromagnetic forces and reaction wheels. Acta Astronaut. 2015, 117, 390–401. [Google Scholar] [CrossRef]
  39. Hallaj, M.A.A.; Assadian, N. Sliding mode control of electromagnetic tethered satellite formation. Adv. Space Res. 2016, 58, 619–634. [Google Scholar] [CrossRef]
  40. Sethi, A.; Thakurta, V.; Gajanur, N.; Cheela, B.S.; Sadasivan, K.S.; Hosangadi, R. Implementation of COTS components for CubeSat applications. In Proceedings of the 2017 IEEE Aerospace Conference, Big Sky, MT, USA, 4–11 March 2017; pp. 1–11. [Google Scholar]
  41. Curtis, H.D. Orbital Mechanics for Engineering Students: Revised Reprint; Butterworth-Heinemann: Oxford, UK, 2020. [Google Scholar]
  42. AlandiHallaj, M.; Assadian, N. Soft landing on an irregular shape asteroid using multiple-horizon multiple-model predictive control. Acta Astronaut. 2017, 140, 225–234. [Google Scholar] [CrossRef]
  43. AlandiHallaj, M.; Assadian, N. Asteroid precision landing via probabilistic multiple-horizon multiple-model predictive control. Acta Astronaut. 2019, 161, 531–541. [Google Scholar] [CrossRef]
  44. Abbasali, E.; Kosari, A.; Bakhtiari, M. Effects of oblateness of the primaries on natural periodic orbit-attitude behaviour of satellites in three body problem. Adv. Space Res. 2021, 68, 4379–4397. [Google Scholar] [CrossRef]
  45. Yu, Z.; Chen, W.; Yu, W. Analytical trajectory prediction of high-eccentricity spacecraft transfer orbits considering J2 perturbation. Aerosp. Sci. Technol. 2024, 153, 109462. [Google Scholar] [CrossRef]
  46. Vallado, D.A. Fundamentals of Astrodynamics and Applications; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2001; Volume 12. [Google Scholar]
  47. Montenbruck, O.; Gill, E.; Lutze, F. Satellite orbits: Models, methods, and applications. Appl. Mech. Rev. 2002, 55, B27–B28. [Google Scholar] [CrossRef]
  48. Hoots, F.R. Models for propagation of NORAD element sets. In Peterson AFB, CO, Spacetrack Report; Defense Technical Information Center: Fort Belvoir, VA, USA, 1980. [Google Scholar]
  49. Ramezani, M.; Atashgah, M.; Alandihallaj, M.; Hein, A. Reinforcement Learning for Planning and Task Coordination in a Swarm of CubeSats: Overcoming Processor Limitation Challenges. In Proceedings of the International Astronautical Congress, Baku, Azerbaijan, 2–6 October 2023. [Google Scholar]
  50. Alandihallaj, M.A.; Ramezani, M.; Hein, A.M. MBSE-Enhanced LSTM Framework for Satellite System Reliability and Failure Prediction. In Proceedings of the 12th International Conference on Model-Based Software and Systems Engineering, MODELSWARD, Rome, Italy, 21–23 February 2024; pp. 349–356. [Google Scholar]
  51. Ramezani, M.; Atashgah, M.; Sanchez-Lopez, J.L.; Voos, H. Human-Centric Aware UAV Trajectory Planning in Search and Rescue Missions Employing Multi-Objective Reinforcement Learning with AHP and Similarity-Based Experience Replay. In Proceedings of the 2024 International Conference on Unmanned Aircraft Systems (ICUAS), Chania, Greece, 4–7 June 2024; pp. 177–184. [Google Scholar]
  52. Ramezani, M.; Atashgah, M.A.A.; Rezae, A. A Fault-Tolerant Multi-Agent Reinforcement Learning Framework for Unmanned Aerial Vehicles–Unmanned Ground Vehicle Coverage Path Planning. Drones 2024, 8, 537. [Google Scholar] [CrossRef]
  53. Ramezani, M.; Habibi, H.; Sanchez-Lopez, J.L.; Voos, H. UAV path planning employing MPC-reinforcement learning method considering collision avoidance. In Proceedings of the 2023 International Conference on Unmanned Aircraft Systems (ICUAS), Warsaw, Poland, 6–9 June 2024; pp. 507–514. [Google Scholar]
  54. Ramezani, M.; Amiri Atashgah, M. Energy-Aware Hierarchical Reinforcement Learning Based on the Predictive Energy Consumption Algorithm for Search and Rescue Aerial Robots in Unknown Environments. Drones 2024, 8, 283. [Google Scholar] [CrossRef]
  55. Ramezani, M.; Alandihallaj, M.A.; Sanchez-Lopez, J.L.; Hein, A. Safe Hierarchical Reinforcement Learning for CubeSat Task Scheduling Based on Energy Consumption. arXiv 2023, arXiv:2309.12004. [Google Scholar]
  56. Dey, R.; Salem, F.M. Gate-variants of gated recurrent unit (GRU) neural networks. In Proceedings of the 2017 IEEE 60th International Midwest Symposium on Circuits and Systems (MWSCAS), Boston, MA, USA, 6–9 August 2017; pp. 1597–1600. [Google Scholar]
  57. Shewalkar, A.; Nyavanandi, D.; Ludwig, S.A. Performance evaluation of deep neural networks applied to speech recognition: RNN, LSTM and GRU. J. Artif. Intell. Soft Comput. Res. 2019, 9, 235–245. [Google Scholar] [CrossRef]
  58. Ramezani, M.; Alandihallaj, M.A.; Hein, A.M. PPO-Based Dynamic Control of Uncertain Floating Platforms in Zero-G Environment. In Proceedings of the 2024 IEEE International Conference on Robotics and Automation (ICRA), Yokohama, Japan, 13–17 May 2024; pp. 11730–11736. [Google Scholar]
  59. Roth, E. The gaussian form of the variation-of-parameter equations formulated in equinoctial elements—Applications: Airdrag and radiation pressure. Acta Astronaut. 1985, 12, 719–730. [Google Scholar] [CrossRef]
  60. Ruggiero, A.; Pergola, P.; Marcuccio, S.; Andrenucci, M. Low-thrust maneuvers for the efficient correction of orbital elements. In Proceedings of the 32nd International Electric Propulsion Conference, Wiesbaden, Germany, 11–15 September 2024; pp. 11–15. [Google Scholar]
  61. Alandihallaj, M.; Yalcin, B.C.; Ramezani, M.; Olivares Mendez, M.A.; Thoemel, J.; Hein, A. Mitigating fuel sloshing disturbance in on-orbit satellite refueling: An experimental study. In Proceedings of the International Astronautical Congress IAC, Baku, Azerbaijan, 2–6 October 2023. [Google Scholar]
  62. Welch, G.; Bishop, G. An Introduction to the Kalman Filter; The University of North Carolina at Chapel Hill, Chapel Hill, NC, USA. 1995. Available online: https://www.cs.unc.edu/~welch/media/pdf/kalman_intro.pdf (accessed on 23 September 2024).
Figure 1. Orbital elements’ definition.
Figure 1. Orbital elements’ definition.
Aerospace 11 00807 g001
Figure 2. The LVLH coordinate reference frame ( x y z L ) definition with respect to the Earth-centered inertial reference frame ( x y z I ).
Figure 2. The LVLH coordinate reference frame ( x y z L ) definition with respect to the Earth-centered inertial reference frame ( x y z I ).
Aerospace 11 00807 g002
Figure 3. The schematic block diagram of the system.
Figure 3. The schematic block diagram of the system.
Aerospace 11 00807 g003
Figure 4. The relative plane change error with respect to B t .
Figure 4. The relative plane change error with respect to B t .
Aerospace 11 00807 g004
Figure 5. Schematic diagram of the J 2 -optimized sequence.
Figure 5. Schematic diagram of the J 2 -optimized sequence.
Aerospace 11 00807 g005
Figure 6. The time histories of orbital elements’ errors using the classic and J 2 -optimized sequence.
Figure 6. The time histories of orbital elements’ errors using the classic and J 2 -optimized sequence.
Aerospace 11 00807 g006
Figure 7. The time histories of the miss distance using the classic and J 2 -optimized sequence.
Figure 7. The time histories of the miss distance using the classic and J 2 -optimized sequence.
Aerospace 11 00807 g007
Figure 8. Comparison of required Δ V using the classic and J 2 -optimized sequence.
Figure 8. Comparison of required Δ V using the classic and J 2 -optimized sequence.
Aerospace 11 00807 g008
Figure 9. Normalized loss vs. iterations for training and validation.
Figure 9. Normalized loss vs. iterations for training and validation.
Aerospace 11 00807 g009
Figure 10. Miss distance as a function of pointing accuracy α for the system using only the J 2 -optimized sequence.
Figure 10. Miss distance as a function of pointing accuracy α for the system using only the J 2 -optimized sequence.
Aerospace 11 00807 g010
Figure 11. Miss distance as a function of pointing accuracy α for the combined system using the J 2 -optimized sequence, GRU, and Kalman filter.
Figure 11. Miss distance as a function of pointing accuracy α for the combined system using the J 2 -optimized sequence, GRU, and Kalman filter.
Aerospace 11 00807 g011
Table 1. The orbital elements deviation between the initial and desired orbits.
Table 1. The orbital elements deviation between the initial and desired orbits.
Case δ Ω   ( D e g . ) δ i   ( D e g . ) δ a   ( k m ) δ u   ( D e g . )
A−0.50.1−10180
B0.10.05110
Table 2. Optimal hyperparameters for the GRU network.
Table 2. Optimal hyperparameters for the GRU network.
HyperparameterValue
Number of Layers3
Number of Neurons128 per layer
Learning Rate0.001
Batch Size64
Dropout Rate0.3
Activation FunctionReLU
OptimizerAdam
Table 3. Average of computational time comparison between GRU and LSTM networks for one epoch.
Table 3. Average of computational time comparison between GRU and LSTM networks for one epoch.
MethodTraining Time (s)Prediction Time (ms)
GRU74311
LSTM99518
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

Ramezani, M.; Alandihallaj, M.; Hein, A.M. Fuel-Efficient and Fault-Tolerant CubeSat Orbit Correction via Machine Learning-Based Adaptive Control. Aerospace 2024, 11, 807. https://doi.org/10.3390/aerospace11100807

AMA Style

Ramezani M, Alandihallaj M, Hein AM. Fuel-Efficient and Fault-Tolerant CubeSat Orbit Correction via Machine Learning-Based Adaptive Control. Aerospace. 2024; 11(10):807. https://doi.org/10.3390/aerospace11100807

Chicago/Turabian Style

Ramezani, Mahya, Mohammadamin Alandihallaj, and Andreas M. Hein. 2024. "Fuel-Efficient and Fault-Tolerant CubeSat Orbit Correction via Machine Learning-Based Adaptive Control" Aerospace 11, no. 10: 807. https://doi.org/10.3390/aerospace11100807

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