1 Introduction

In the past decades, several space missions were successfully completed using two spacecraft involved in close proximity operations, aimed at their mating. The Apollo and Salyut programs represent two major examples of manned missions that included rendezvous and docking of two space vehicles. For future robotic missions (about Earth, Moon, or Mars), autonomous rendezvous and docking represents a major challenge and a key operational technology.

Rendezvous missions include different phases [1], i.e. (i) orbit phasing, (ii) far range rendezvous, and (iii) close-range approach and mating. Close-range maneuvers are aimed at reaching simultaneously the correct relative trajectory and attitude that allow safe mating. Gurfil [2] investigated relative orbit motion between two elliptic Keplerian orbits, including nonlinearities and thus avoiding the use of linear orbit theory. The latter study is particularly useful for identifying proper final conditions of phase (ii), which represent the initial relative position and velocity for phase (iii). With regard to docking, Lopez and McInnes [3] proposed a guidance scheme based on Lyapunov stability theory and aimed at completing the rendezvous along a prescribed direction, using impulsive velocity changes. Kluever [4] addressed the same problem, through a feedback control scheme based on the dynamical framework provided by the Hill–Clohessy–Wiltshire equations, with the intent of identifying the continuous thrust (for a successful docking) along two orthogonal axes. More recently, Karlgaard [5] proposed a relatively simple guidance strategy based on the use of polar coordinates and feedback linearization. Sliding mode and adaptive control [6,7,8] represent alternative nonlinear approaches to close-range maneuvering.

This research is focused on the analysis, design, and numerical testing of a feedback guidance algorithm for autonomous (unmanned) close-range maneuvering of a chaser spacecraft, in the context of orbital rendezvous with a target vehicle. This research avoids the use of the Hill–Clohessy–Wiltshire equations of relative motion, which represent linear (approximate) equations referred to a circular orbit. Instead, the relative dynamics of the two vehicles, placed in nearby low Earth orbits, is modeled using the (exact) nonlinear BattinGiorgi equations, which assume a Keplerian elliptic orbit as the reference path. All the relevant perturbations, i.e. several harmonics of the geopotential, atmospheric drag, solar radiation pressure, and third body gravitational pull due to Moon and Sun, are included in the dynamical modeling. Hence, the main objectives of this paper are (i) the development of an accurate model for relative motion in a perturbed orbit, considering the perturbations acting on both vehicles, unlike several former contributions in the scientific literature [3,4,5], and (ii) the design of a guidance algorithm for close-range maneuvering. Feedback linearization [9, 10] provides the theoretical foundation for the definition and development of a guidance algorithm that is capable of driving the chaser vehicle toward the target spacecraft. Moreover, discrete-variable thrust is considered, as a representative model of modern hybrid propulsion systems, and an effective modulation scheme is proposed that includes adaptation of the control gains. Monte Carlo simulations are run to demonstrate that the guidance technique at hand is effective and accurate in driving the chaser spacecraft toward the target vehicle, in the presence of orbit perturbations and unpredictable displacements from the nominal initial conditions.

2 Relative Orbital Motion

Orbital rendezvous involves an actively controlled spacecraft, i.e. the chaser, and a passive spacecraft, the target. For a successful mission, the chaser must maneuver until it reaches an established position and velocity with respect to the target. When the target travels a Keplerian orbit, the nonlinear equations of relative motion [11, 12] provide an accurate description for the orbit dynamics. However, these equations can only include the accelerations that perturb the chaser spacecraft. In realistic scenarios, orbit perturbations affect the motion of both vehicles. Therefore, a dynamical framework that includes the perturbations on both spacecraft is much more appropriate, and can be obtained through the following steps: (a) definition of a virtual reference spacecraft moving along a Keplerian orbit, (b) use of the nonlinear equations of relative motion for both the chaser and the target, referred to the virtual vehicle, (c) derivation of the motion of the chaser relative to the target, employing the dynamics equations introduced at point (b). The virtual reference frame \(\underline{\underline{{\mathcal{V}}}} = [\begin{array}{*{20}c} {\hat{r}} & {\hat{\theta }} & {\hat{h}} \\ \end{array} ]\) has unit vectors aligned with those of the osculating orbit (at the initial time \(t_{0}\)) of the target vehicle (cf. Figure 1). This means that at time \(t_{0}\) the origin of the virtual frame is coincident with the centre of mass of the target spacecraft, while its axes point toward the radial, along-track and cross-track direction. The motion of a generic spacecraft with respect to \(\underline{\underline{{\mathcal{V}}}}\), is described by the following equations [11, 12]:

$$\ddot{x}_{{\text{s}}} = 2\omega \dot{y}_{{\text{s}}} + \dot{\omega }y_{{\text{s}}} + \omega^{2} x_{{\text{s}}} - \frac{{\mu (r + x_{{\text{s}}} )}}{{[(r + x_{{\text{s}}} )^{2} + y_{{\text{s}}}^{2} + z_{{\text{s}}}^{2} ]^{\frac{3}{2}} }} + \frac{\mu }{{r^{2} }} + a_{{{\text{P}}_{{{\text{s}}_{x} }} }} ,$$
(1)
$$\ddot{y}_{{\text{s}}} = - 2\omega \dot{x}_{{\text{s}}} - \dot{\omega }x_{{\text{s}}} + \omega^{2} y_{{\text{s}}} - \frac{{\mu y_{{\text{s}}} }}{{[(r + x_{{\text{s}}} )^{2} + y_{{\text{s}}}^{2} + z_{{\text{s}}}^{2} ]^{\frac{3}{2}} }} + a_{{{\text{P}}_{{{\text{s}}_{y} }} }} ,$$
(2)
$$\ddot{z}_{{\text{s}}} = - \frac{{\mu z_{{\text{s}}} }}{{[(r + x_{{\text{s}}} )^{2} + y_{{\text{s}}}^{2} + z_{{\text{s}}}^{2} ]^{\frac{3}{2}} }} + a_{{{\text{P}}_{{{\text{s}}_{z} }} }} ,$$
(3)

where subscript s can be used to represent either the coordinates of the chaser (\(x_{{\text{c}}} ,\,y_{{\text{c}}} ,\,z_{{\text{c}}}\)) or the ones of the target (\(x_{{\text{t}}} ,\,y_{{\text{t}}} ,\,z_{{\text{t}}}\)); (\(a_{{{\text{PS}}_{x} }} ,\,a_{{{\text{PS}}_{y} }} ,\,a_{{{\text{PS}}_{z} }}\)) are the perturbing accelerations affecting the motion of the spacecraft, while r and \(\omega\) are, respectively, the radial position and the angular velocity of the virtual vehicle. Equations (1)–(3), written for the target, subtracted from those of the chaser yields the relative equations of the latter with respect to the former vehicle. As result, the relative dynamics equations

$$\ddot{x}_{{\text{R}}} = 2\omega \dot{y}_{{\text{R}}} + \dot{\omega }y_{{\text{R}}} + \omega^{2} x_{{\text{R}}} - \frac{{\mu (r + x_{{\text{R}}} + x_{{\text{t}}} )}}{{[(r + x_{{\text{R}}} + x_{{\text{T}}} )^{2} + (y_{{\text{R}}} + y_{{\text{t}}} )^{2} + (z_{{\text{R}}} + z_{{\text{t}}} )^{2} ]^{\frac{3}{2}} }} + \frac{{\mu (r + x_{{\text{t}}} )}}{{[(r + x_{{\text{t}}} )^{2} + (y_{{\text{t}}} )^{2} + (z_{{\text{t}}} )^{2} ]^{\frac{3}{2}} }} + (a_{{{\text{Pc}}x}} - a_{{{\text{Pt}}x}} ) + u_{x} ,$$
(4)
$$\ddot{y}_{{\text{R}}} = - 2\omega \dot{x}_{{\text{R}}} - \dot{\omega }x_{{\text{R}}} + \omega^{2} y_{{\text{R}}} - \frac{{\mu (y_{{\text{R}}} + y_{{\text{t}}} )}}{{[(r + x_{{\text{R}}} + x_{{\text{T}}} )^{2} + (y_{{\text{R}}} + y_{{\text{t}}} )^{2} + (z_{{\text{R}}} + z_{{\text{t}}} )^{2} ]^{\frac{3}{2}} }} + \frac{{\mu y_{{\text{t}}} }}{{[(r + x_{{\text{t}}} )^{2} + (y_{{\text{t}}} )^{2} + (z_{{\text{t}}} )^{2} ]^{\frac{3}{2}} }} + (a_{{{\text{Pc}}y}} - a_{{{\text{Pt}}y}} ) + u_{y} ,$$
(5)
$$\ddot{z}_{{\text{R}}} = - \frac{{\mu (z_{{\text{R}}} + z_{{\text{t}}} )}}{{[(r + x_{{\text{R}}} + x_{{\text{t}}} )^{2} + (y_{{\text{R}}} + y_{{\text{t}}} )^{2} + (z_{{\text{R}}} + z_{{\text{t}}} )^{2} ]^{\frac{3}{2}} }} + \frac{{\mu z_{{\text{t}}} }}{{[(r + x_{{\text{t}}} )^{2} + (y_{{\text{t}}} )^{2} + (z_{{\text{t}}} )^{2} ]^{\frac{3}{2}} }} + (a_{{{\text{Pc}}z}} - a_{{{\text{Pt}}z}} ) + u_{z} ,$$
(6)

(with \(x_{{\text{R}}} = x_{{\text{c}}} - x_{{\text{t}}} ,\,\,y_{{\text{R}}} = y_{{\text{c}}} - y_{{\text{t}}} ,\,\,z_{{\text{R}}} = z_{{\text{c}}} - z_{{\text{t}}}\)) govern the position of the chaser relative to the target, whereas \(u_{x,} ,\,\,u_{y} ,\,{\text{ and }}\,u_{z}\) are the chaser thrust accelerations. The equations that describe the time evolution of r and \(\omega\) complete the set of equations that model the relative motion in the presence of orbit perturbations on both vehicles. To improve accuracy of the model, the following perturbing accelerations are considered: atmospheric drag, third body gravitation pull due to the Sun and the Moon, and harmonics of the geopotential. Figure 1 illustrates the geometry of the rendezvous, i.e. the positions of the two spacecraft relative to the virtual frame \(\underline{\underline{{\mathcal{V}}}}\), as well as the relative position \({{\varvec{\uprho}}}_{{\text{R}}}\).

Fig. 1
figure 1

Chaser and target position with respect to the Keplerian reference orbit (respectively, \({{\varvec{\uprho}}}_{{\text{c}}}\) and \({{\varvec{\uprho}}}_{{\text{t}}}\)) and target position in the inertial ECI reference frame, \({\mathbf{r}}_{{\text{t}}}\)

Once the time histories of \(x_{{\text{R}}}\), \(y_{{\text{R}}}\), and \(z_{{\text{R}}}\) are available, the relative distance, \(\rho_{{\text{R}}}\), the azimuth angle, \(\vartheta_{{\text{R}}}\), and the heading angle, \(\varphi_{{\text{R}}}\), can be retrieved, by inverting the following relations:

$$x_{{\text{R}}} = \rho_{{\text{R}}} \cos (\varphi_{{\text{R}}} )\,\,\cos (\vartheta_{{\text{R}}} )\quad y_{{\text{R}}} = \rho_{{\text{R}}} \cos (\varphi_{{\text{R}}} )\,\,\sin (\vartheta_{{\text{R}}} )\quad z_{{\text{R}}} = \rho_{{\text{R}}} \sin (\varphi_{{\text{R}}} )\,$$
(7)

3 Orbit Perturbations

To improve accuracy of the model, the following perturbing accelerations are considered: atmospheric drag, third body gravitation pull due to the Sun and the Moon, and harmonics of the geopotential with coefficients |\(J_{{{\text{lm}}}}\)|> \(10^{ - 6}\). Harmonics with lower magnitudes are assumed to have negligible effects.

The acceleration due to drag is

$${\varvec{a}}_{{\text{d}}} = - \frac{1}{2}\sigma_{{\text{A}}} v_{{{\text{rel}}}}^{2} \frac{{C_{{\text{d}}} S}}{{m_{{\text{S}}} }}\;\hat{\varvec{v}}_{{{\text{rel}}}} ,$$
(8)

where \(\sigma_{{\text{A}}}\) is the atmospheric density, \(\hat{\varvec{v}}_{{{\text{rel}}}}\) is the unit vector aligned with the velocity of the spacecraft relative to the atmosphere, \(C_{{\text{d}}}\) is the drag coefficient, \(S\) is the aerodynamics surface, while \(m_{{\text{S}}}\) is the mass of the spacecraft of interest, which can be either the chaser or the target.

The perturbing acceleration caused by deviations of the Earth’s gravitational field from that of a spherical mass distribution is

$${\varvec{a}}_{{\text{H}}} = {\mathbf{\nabla }}U_{1}$$
(9)

where \(U_{1}\) is given by

$$U_{1} { = } - \frac{\mu }{r}\sum\limits_{l = 2}^{\infty } {\left( {\frac{{R_{{\text{e}}} }}{r}} \right)^{l} } J_{l} P_{l0} (\sin \phi ) + \frac{\mu }{r}\sum\limits_{l = 2}^{\infty } {\sum\limits_{m = 1}^{l} {\left( {\frac{{R_{{\text{e}}} }}{r}} \right)^{l} } } J_{{{\text{lm}}}} P_{{{\text{lm}}}} (\sin \phi )\cos \left[ {m(\lambda_{{\text{g}}} - \lambda_{{{\text{lm}}}} )} \right],$$
(10)

Symbol \(R_{{\text{e}}}\) denotes the Earth equatorial radius, \(J_{{\text{l}}}\),\(J_{{{\text{lm}}}}\), and \(\lambda_{{{\text{lm}}}}\) are the coefficients associated with the harmonics of the geopotential, \(\phi\) and \(\lambda_{{\text{g}}}\) are, respectively, the spacecraft latitude and geographical longitude, while \(P_{{{\text{lm}}}}\) is a polynomial described by the associated Legendre function.

The photons emitted by the Sun can transfer momentum to a spacecraft, causing a pressure that can alter its orbit. As a result, the solar radiation pressure yields the perturbing acceleration

$${\varvec{a}}_{{{\text{SR}}}} = - \nu \frac{{P_{{{\text{SR}}}} {\mkern 1mu} A}}{{m_{{\text{S}}} }}C_{{\text{R}}} {\mkern 1mu} \, \hat{\varvec{r}}_{{{\text{sun}}}} ,$$
(11)

where \(P_{{{\text{SR}}}}\) is the solar radiation pressure, with a reference value of 4.56 μPa, \(C_{{\text{R}}}\) is the solar radiation pressure coefficient, \(\hat{\varvec{r}}_{{{\text{sun}}}}\) is the unit vector that points from the spacecraft to the Sun, A is the illuminated surface, and \(\nu\) is the shadow function, whose value is either 0, if the spacecraft is in shadow, or 1, if it is illuminated.

The pull of the Moon and the Sun can be treated as a third body perturbation. For the Moon, the perturbing acceleration is given by

$${\varvec{a}}_{{\text{M}}} = - \mu_{{\text{m}}} \left[ {\frac{{{\varvec{r}}_{{\text{m}}} }}{{r_{{\text{m}}}^{3} }} + \frac{{{\varvec{r}}_{{{\text{mS}}}} }}{{r_{{{\text{mS}}}}^{3} }}} \right],$$
(12)

where \(\mu_{{\text{m}}}\) is the gravitational parameter of the Moon, \({\varvec{r}}_{{\text{m}}}\) is the position of the moon relative to Earth and \({\varvec{r}}_{{{\text{mS}}}}\) is the position of the Moon relative to the spacecraft. Similarly, for the Sun

$${\varvec{a}}_{{\text{S}}} = - \mu_{ \odot } \left[ {\frac{{{\mathbf{r}}_{ \odot } }}{{r_{ \odot }^{3} }} + \frac{{{\mathbf{r}}_{{ \odot {\text{S}}}} }}{{r_{{ \odot {\text{S}}}}^{3} }}} \right]$$
(13)

where \(\mu_{ \odot }\) is the gravitational parameter of the Sun, \({\mathbf{r}}_{ \odot }\) is the position of the Sun relative to Earth and \({\mathbf{r}}_{{ \odot {\text{S}}}}\) is the position of the Sun relative to the spacecraft. The position vectors of both the Moon and the Sun are evaluated through the planetary ephemeris, using the approach described in Ref. [13]. The reference epoch is set to January 10, 2021 at 5:00 UTC.

For both vehicles, all orbit perturbations are projected into the virtual reference frame \(\underline{\underline{{\mathcal{V}}}}\), to obtain the components that appear in Eqs. (4)–(6).

4 Nonlinear Orbit Control Through Feedback Linearization

Feedback linearization leads to finding an effective nonlinear control law that drives the chaser toward the target. This section develops and applies the feedback control law to the rendezvous maneuver. The mission scenario of interest involves a chaser vehicle that uses a propulsion system with discrete thrust levels.

4.1 Feedback Control Law

The thrust direction and magnitude can be identified through a feedback linearization control law. The set of differential Eqs. (4)–(6) can be written in a compact form as

$$\ddot{\varvec{X}} = f\left( {{\varvec{X}},\dot{\varvec{X}}} \right) + {\varvec{U}}$$
(14)

where \(\varvec{X} = \left[ {\begin{array}{*{20}l} {x_{{\text{R}}} } & {y_{{\text{R}}} } & {z_{{\text{R}}} } \\ \end{array} } \right]^{{\text{T}}}\), \(f\left( {{\varvec{X}},\dot{\varvec{X}}} \right)\) is the term collecting the nonlinearities in the system and \({\varvec{U}} = [\begin{array}{*{20}c} {u_{x} } & {u_{y} } & {u_{z} } \\ \end{array} ]^{T}\) is the control vector. The desired trajectory can be planned through the definition of the desired Cartesian coordinates of the relative position, collected as components of \({\mathbf{X}}^{{({\text{C}})}} (t)\), which is a prescribed function of time. Defining the feedback control as

$${\varvec{U}} = - f({\varvec{X}},\dot{\varvec{X}}) - K_{{\text{p}}} ({\varvec{X}} - {\varvec{X}}^{{({\text{C}})}} (t)) - K_{{\text{d}}} (\dot{\varvec{X}} - \dot{\varvec{X}}^{{({\text{C}})}} (t)) + \ddot{\varvec{X}}^{{({\text{C}})}} (t)$$
(15)

and choosing the gains \(K_{{\text{p}}}\) and \(K_{{\text{d}}}\) as diagonal matrices, one obtains a system of equations that are decoupled and describe a second-order system,

$$\ddot{x}_{{\text{R}}} - \ddot{x}_{{\text{R}}}^{{({\text{C}})}} (t) + K_{{{\text{d}}_{1} }} (\dot{x}_{{\text{R}}} - \dot{x}_{{\text{R}}}^{{({\text{C}})}} (t)) + K_{{{\text{p}}_{1} }} (x_{{\text{R}}} - x_{{\text{R}}}^{{({\text{C}})}} (t)) = 0,$$
(16)
$$\ddot{y}_{{\text{R}}} - \ddot{y}_{{\text{R}}}^{{({\text{C}})}} (t) + K_{{{\text{d}}_{2} }} (\dot{y}_{{\text{R}}} - \dot{y}_{{\text{R}}}^{{({\text{C}})}} (t)) + K_{{{\text{p}}_{2} }} (y_{{\text{R}}} - y_{{\text{R}}}^{{({\text{C}})}} (t)) = 0,$$
(17)
$$\ddot{z}_{{\text{R}}} - \ddot{z}_{{\text{R}}}^{{({\text{C}})}} (t) + K_{{{\text{d}}_{3} }} (\dot{z}_{{\text{R}}} - \dot{z}_{{\text{R}}}^{{({\text{C}})}} (t)) + K_{{{\text{p}}_{3} }} (z_{{\text{R}}} - z_{{\text{R}}}^{{({\text{C}})}} (t)) = 0.$$
(18)

For second-order systems such as the one associated with Eqs. (16)–(18), closed-loop stability and satisfactory transient behavior is guaranteed through the appropriate choice of the diagonal elements of the gain matrices (\(\left( {K_{{{\text{p}}_{1} }} ,\,K_{{{\text{p}}_{2} }} ,\,K_{{{\text{p}}_{3} }} } \right)\) and \(\left( {K_{{{\text{d}}_{1} }} ,\,K_{{{\text{d}}_{2} }} ,\,K_{{{\text{d}}_{3} }} } \right)\)). In particular, \(K_{{{\text{p}}_{1} }} ,\,K_{{{\text{p}}_{2} }} ,\,K_{{{\text{p}}_{3} }} > 0\,\) and \(K_{{{\text{d}}_{1} }} ,\,K_{{{\text{d}}_{2} }} ,\,K_{{{\text{d}}_{3} }} > 0\,\) represent necessary conditions for asymptotic stability. These gains are closely related to the natural frequency \(\omega_{n}\) and damping coefficient \(\zeta\) of a second-order system. In fact, for a generic component among \(\left( {x_{{\text{R}}} ,y_{{\text{R}}} ,z_{{\text{R}}} } \right)\), \(\omega_{n,i} = \sqrt {K_{{{\text{p}}_{i} }} }\) and \(\zeta_{i} = {{K_{{{\text{d}}_{i} }} } \mathord{\left/ {\vphantom {{K_{{{\text{d}}_{i} }} } {\left( {2\omega_{n,i} } \right)}}} \right. \kern-\nulldelimiterspace} {\left( {2\omega_{n,i} } \right)}}\).

Unlike other contributions in the scientific literature [3,4,5], the feedback control law proposed in this work has two major advantages: (i) it is based on a dynamic model that includes the orbit perturbations on the target spacecraft, and (ii) it is expressed in Cartesian coordinates, thus any given trajectory can be pursued without encountering singularities.

4.2 Adaptive Gains for Discrete, Variable Thrust

In this study, the chaser spacecraft is assumed to be equipped with a propulsive system that supplies discrete thrust levels. In particular, the thrust magnitude is assumed to be variable, but only a limited number of discrete values are available, i.e. 20 equally spaced levels. Level 0 corresponds to zero thrust, while level 20 corresponds to the maximum thrust, which is set to 13 N. This value is selected as the result of numerical search for the minimum value of thrust magnitude capable of guaranteeing a successful rendezvous maneuver. Discrete thrust levels are used to model hybrid propulsion devices [14,15,16,17], which recently emerged as a very interesting technology, particularly in applications that may require time-varying thrust magnitude, such as orbital rendezvous. The number of thrust levels is the minimum number that allows achieving satisfactory results, and represents an indication for selecting an adequate propulsion technology.

The feedback law (8) turns out to require adaptation to be used in the current scenario. The solution adopted in this research consists in (i) obtaining the required thrust acceleration in each time interval \(\left[ {t_{k} ,t_{k} + \Delta t_{S} } \right]\) (where \(\Delta t_{S}\) is the minimum ignition time), using Eq. (14), (ii) retrieving the required thrust (magnitude and direction), and (iii) selecting the closest value of the thrust magnitude among the available thrust levels. In addition, to improve accuracy of the maneuver, a gain adaptation strategy is employed,

$$K_{{\text{p}}} = \left\{ {\begin{array}{*{20}l} {K_{{{\text{p}}_{0} }} } \hfill & {{\text{if}}{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} t < t_{1} } \hfill \\ {K_{{{\text{p}}_{0} }} + K_{{{\text{p}}_{0} }} (t - t_{1} ) \times 0.02} \hfill & {{\text{if}}{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} t \ge t_{1} } \hfill \\ \end{array} } \right.,{\text{ with }}K_{{{\text{p}}_{0} }} = \left[ {\begin{array}{*{20}l} {2.55 \times 10^{ - 6} \,} & 0 & 0 \\ 0 & {2.55 \times 10^{ - 4} } & 0 \\ 0 & 0 & {3.28 \times 10^{ - 5} } \\ \end{array} } \right]$$
(19)

where \(t_{1}\) is the time instant (sufficiently close to the end of the maneuver) when the required thrust magnitude (yielded by the feedback linearization) starts oscillating between the two lowest discrete thrust levels. Numerical search (assuming nominal flight conditions) led to finding 2800 s as an appropriate value, corresponding to a distance of 157 m of the chaser from the target. Equation (19) provides a simple but effective solution to update the gains, in a way that prevents the thrust from switching off during the final phase. Matrix \(K_{d}\) has diagonal elements \(\left\{ {K_{d} } \right\}_{jj} = 2\sqrt {\left\{ {K_{p} } \right\}_{jj} } \, \left( {j = 1,2,3} \right)\).

5 Numerical Simulations

The two spacecraft of interest are assumed to have the following characteristic parameters:

$$\begin{gathered} {\text{Chaser: }}m_{{\text{c}}} = 1000{\text{ kg, }}S_{{\text{c}}} = A_{{\text{c}}} = 19.4{\text{ m}}^{2} , \, c_{{\text{d}}} = 2.2 \hfill \\ {\text{Target: }}m_{{\text{t}}} = 4333\,\,{\text{kg, }}S_{{\text{t}}} = A_{{\text{t}}} = 7.3{\text{ m}}^{2} , \, c_{{\text{d}}} = 2.2 \hfill \\ \end{gathered}$$

For both vehicles (identified with subscripts c and t), the drag coefficient is set to 2.2, which is a typical value for spacecraft that travel in rarefied hypersonic flow regimes. Moreover, the aerodynamics surfaces are assumed to equal the respective cross sections subject to solar radiation pressure (denoted with A).

It is apparent that the two spacecraft have different surface-to-mass ratios, thus they are expected to experience a differential perturbing action due to drag and solar radiation pressure. Moreover, because they have different initial positions, also the remaining perturbations (third body pull due to Sun and Moon and harmonics of the geopotential) yield a differential perturbing action. Next subsection is devoted to investigating this dynamical behavior through numerical simulations.

Numerical propagations were performed using the Matlab ode45 solver, after splitting all the time interval in subarcs of duration of 1 s, which is the minimum ignition time of the thruster at a specific discrete thrust level.

5.1 Nominal Rendezvous

As a preliminary analysis, the differential actions related to each perturbing action are obtained along a typical rendezvous trajectory, obtained in nominal flight conditions. More specifically, the nominal initial relative position and velocity are selected in accordance with the energy-matching condition [2], and are reported in Table 1, together with the desired final conditions. The differential effects (in magnitude) due to the perturbing action on each spacecraft is illustrated in Fig. 2. It is apparent that the geopotential harmonics have a dominating effect in the early phases of the rendezvous maneuver. This is due to the different positions of the two spacecraft. Later, as the two vehicles approach, differential drag prevails. For the entire time of flight, the differential action due to third bodies and solar radiation pressure appears negligible if compared to the dominating contributions associated with geopotential harmonics and aerodynamic drag. Moreover, the terms associated with the aerodynamic drag and the solar radiation pressure are nearly constant for the entire time of flight. It is worth noticing that the differential effect due to solar radiation is not portrayed in the central trajectory arc, where both spacecraft are eclipsed.

Table 1 Initial and final conditions for the rendezvous maneuver
Fig. 2
figure 2

Differential acceleration magnitudes related to different orbit perturbations

Further simulations were performed, for the purpose of proving that orbit perturbations must be considered on both spacecraft, for an accurate analysis of the rendezvous. With this regard, Fig. 3 portrays a comparison between the time evolution of the relative distance \(\rho_{{\text{R}}}\), in two cases: (a) when the feedback control law is based on a dynamical model that neglects the perturbations on the target, and (b) when the feedback control law is based on the dynamical model formulated in Sect. 2, which considers the perturbations affecting both the chaser and the target. It is apparent that compensating for the perturbations that affect the target is crucial for the maneuver to succeed. In fact, from inspection of Fig. 3, it is apparent that the relative distance in case (a) remains always well over 10 m, and the rendezvous maneuver fails as a result.

Fig. 3
figure 3

Time histories of relative distance for dynamical model a (yellow) and b (blue)

5.2 Monte Carlo Simulations

The control strategy with discrete-variable thrust is tested in the presence of nonnominal flight conditions through a Monte Carlo campaign, composed of 100 simulations. A stochastic error on each component of the initial relative position and velocity is introduced. This error is characterized by zero mean and a standard deviation \(r_{0}^{\left( \sigma \right)} = 0.310{\text{ km}}\) for the relative position components, and \(v_{0}^{\left( \sigma \right)} = 0.126 \, {{\text{m}} \mathord{\left/ {\vphantom {{\text{m}} {\text{s}} }} \right. \kern-\nulldelimiterspace} {\text{s}} }\) for the relative velocity components.

Figures 4 and 5 present the complete three-dimensional trajectory and its time evolution in terms of relative distance \(\rho_{{\text{R}}}\), relative azimuth \(\theta_{{\text{R}}}\), and relative elevation \(\phi_{{\text{R}}}\). Despite the discrete thrust, which introduces a difference between the commanded and the actual thrust acceleration, the feedback control law successfully drives the chaser toward the target. Table 2 reports the statistics for the relative position and velocity at the end of the maneuver, i.e. when the chaser spacecraft reaches the target. Overall, the desired final conditions are met for all the variables, to a great accuracy, as it is also shown in Figs. 4, 5 and 6, in which the desired final values are represented with dotted lines. In particular, Fig. 4 portrays the entire relative trajectory (left) and a zoom on the final approaching phase (right). The initial relative positions are rather dispersed, yet it is apparent that while approaching the target all the trajectories group and become aligned with the prescribed approaching direction. Figure 5 shows the relative distance and the two angles that identify the relative path. Both \(\theta_{{\text{R}}}\) and \(\phi_{{\text{R}}}\) correctly tend to zero, for all the approaching paths. In particular, the values of \(\theta_{{\text{R}}}\) and \(\phi_{{\text{R}}}\) approach zero at times not exceeding 2400 s, and this corresponds to convergence toward the approaching direction. Figure 6 depicts the relative position coordinates and the respective velocity components. Components \(y_{{\text{R}}}\) and \(z_{{\text{R}}}\) converge to 0 when the correct approaching direction is reached, i.e. at times not exceeding 2400, similarly to what occurs for \(\theta_{{\text{R}}}\) and \(\phi_{{\text{R}}}\). On average, the relative velocity along \(x_{{\text{R}}}\) has a greater error, which is nevertheless still modest and therefore insufficient to compromise the maneuver. This is completed along the desired direction, corresponding to the docking port. Finally, Fig. 7 compares the required control thrust magnitude with the discrete thrust provided by the propulsion system, in nominal flight conditions. The effect of the gain modulation is noticeable after time \(t_{1} = 2800\,\,{\text{s}}\), when the required thrust increases and the actual thrust oscillates between the two lowest levels, without switching off. In conclusion, this gain modulation turns out to be fundamental to ensure a successful maneuver, because it avoids loss of control and therefore a divergence from the desired final conditions.

Fig. 4
figure 4

Rendezvous trajectories, obtained in the Monte Carlo campaign

Fig. 5
figure 5

Rendezvous trajectories and time histories of relative distance (with zoom in the upper right figure), azimuth and elevation, obtained in the Monte Carlo campaign

Table 2 Statistics for the final relative position and velocity (\(\overline{{\Delta \chi_{f} }}\) = mean value of the error on the desired final value of \(\chi\); \(\chi_{f}^{\left( \sigma \right)}\) = standard deviation of the final value of \(\chi\)). Geopotential with harmonics |\(J_{lm}\)|> \(10^{ - 6}\)
Fig. 6
figure 6

Time histories of the components of the relative position and velocity, obtained in the Monte Carlo campaign

Fig. 7
figure 7

Time history of the modulated thrust magnitude, compared to the required value (single simulation)

The same simulations were repeated by including only the \(J_{2}\) term of the geopotential in the guidance algorithm. The numerical results yield the statistics reported in Table 3, which prove that the action of higher order harmonics is modest. This circumstance corroborates the preceding assumption on negligibility of higher order harmonics, and the inclusion of those with coefficients |\(J_{{{\text{lm}}}}\)|> \(10^{ - 6}\).

Table 3 Statistics for the final relative position and velocity (\(\overline{{\Delta \chi_{{\text{f}}} }}\) = mean value of the error on the desired final value of \(\chi\); \(\chi_{{\text{f}}}^{\left( \sigma \right)}\) = standard deviation of the final value of \(\chi\)). Geopotential with \(J_{2}\) harmonic only (in the guidance algorithm)

6 Concluding Remarks

This research deals with the analysis, design, and numerical testing of a feedback guidance algorithm for autonomous close-range maneuvering of two spacecraft placed in nearby low Earth orbits. The nominal initial relative position and velocity are identified using an energy-matching condition. The relative dynamics of the two vehicles is modeled using the (exact) nonlinear BattinGiorgi equations of relative motion, with the inclusion of all the relevant perturbations, i.e. several harmonics of the geopotential, atmospheric drag, solar radiation pressure, and third body gravitational pull due to Moon and Sun. This research considers the perturbing actions on both vehicles, proving that this is crucial for a successful maneuver. Feedback linearization is applied with the use of local Cartesian coordinates, which identify the relative position and velocity of the chaser with respect to the target, projected onto a virtual Keplerian trajectory. Discrete variable thrust is considered, and an effective modulation scheme is proposed that includes adaptation of the control gains. The latter strategy is proven to be crucial for the successful completion of the rendezvous maneuver. Monte Carlo simulations demonstrate that the guidance technique at hand is effective and accurate in driving the chaser spacecraft toward the target vehicle, in the presence of orbit perturbations and even when unpredictable displacements from the nominal initial conditions occur.