#### Abstract

Most of the satellite missions require orbital maneuvers to accomplish its goals. An orbital maneuver is an operation where the orbit of a satellite is changed, usually applying a type of propulsion. The maneuvers may have several purposes, such as the transfer of a satellite to its final orbit, the interception of another spacecraft, or the adjustment of the orbit to compensate the shifts caused by external forces. In this situation it is essential to minimize the fuel consumption to allow a greater number of maneuvers to be performed, and thus the lifetime of the satellite can be extended. There are several papers and studies which aim at the fuel minimization in maneuvers performed by space vehicles. In this context, this paper has two goals: (i) to develop an algorithm capable of finding optimal trajectories with continuous thrust that can fit different types of missions and constraints at the same time and (ii) to study the performance of two propulsion devices for orbital maneuvers under development at the Universidade de Brasilia, including a study of the effects of the errors in magnitude of these new devices.

#### 1. Introduction

The present paper is concerned with the optimization of spacecraft trajectories with minimum fuel consumption that uses a low thrust as a propulsion system. This type of propulsion system is the most economical type available in aerospace technology. It assumes that a force with a low magnitude is applied during a certain time to change the trajectory of the spacecraft.

This type of maneuver has been studied in the literature by several researches with different goals. Lawden [1, 2] was one of the first to use this idea and showed a maneuver between two points spending minimum fuel. He defined the concept of “primer vector,” the Lagrange multiplier associated with the velocity, which is used to provide the conditions for optimal trajectories.

After that, several researches were performed on this topic. A series of analytical methods considering the power-limited (PL) low-thrust transfer optimization using the two-body dynamics started with Beletsky and Egorov [3]. They solved the point-to-point transfer using linearization around a reference orbit. After that, this method was changed, and new versions appeared in the literature to solve the optimal transfer orbit between two given state vectors, like in Sukhanov [4, 5] and Sukhanov and Prado [6]. In particular, Sukhanov [4] shows an interesting case where some orbital elements of the final orbit are specified while some others are free. A generalization of that method to cover the three-body problem and considering a generic force field is also available in Sukhanov and Prado [7]. Situations where there are constraints imposed on the thrust direction are considered in Sukhanov and Prado [8, 9]. A related study using the same PL system can be found in Fernandes and Carvalho [10], who consider analytical first-order solutions for transfers using limited power between arbitrary elliptical coplanar orbits.

Another important application that uses the low-thrust propulsion system is the problem of station keeping of satellites. Any satellite moves away from its position due to perturbations or to the launch errors. So, station-keeping maneuvers are required to keep a satellite in its desired position. Geostationary satellites and constellations of satellites are good examples where this type of maneuver is required. Papers studying this problem are found in Boucher [11], using electric propulsion; Bowditch [12], using magnetic plasma thrusters; Oleson et al. [13], performing studies for geostationary satellites; Ely and Howell [14], studying how to compensate the effects of the resonant tesseral harmonics; Circi [15], using solar sails for the maneuvers; Romero et al. [16], using feedback control techniques; and Gomes and Prado [17], who studied how to control perturbations that change the plane of the orbit of the spacecraft.

Applications of transfers from the Earth to the Moon can also be studied under this model, like done by Pierson and Kluever [18], which consider the existence of three stages for the mission; Song et al. [19], who allow the flexibility of a low thrust with variable magnitude; Fazelzadeh and Varzandian [20], who use an approach involving the time-domain finite element method; or Mingotti et al. [21], who use an interesting approach involving dynamical system theory. Objects that are at larger distances from the Earth can also be reached with low thrust. Brophy and Noca [22], Santos et al. [23], Santos et al. [24], and Santos and Prado [25] show some options, including asteroids and planets, with emphasis on the asteroid Apophis, which is in a trajectory with a close approach with the Earth.

The first contribution of the present paper is a formulation and description of an algorithm developed to solve this problem, which has many important features to increase the number of maneuvers that get convergence and to increase the velocity of convergence in those situations. This problem is very sensible to small variation of parameters, so several actions are required to increase the efficiency of the convergence. This algorithm is based in Biggs [26, 27], Prado [28], and Oliveira [29]. It has several important features combined in a single algorithm, which makes it very interesting for use in real missions.

The conditions imposed on the final orbit must be at least in one of its Keplerian elements, but can be in more elements, depending on the goals of the mission. The algorithm also allows the consideration of restrictions, like forbidding thrusting in certain parts of the orbits, specified by the interval between the true longitudes. This restriction implies that both the start and the stop of the thrust have to occur inside this interval. This is an important characteristic of the algorithm, because it is possible to avoid turning on the propulsion system when the satellite is not under direct observation from the ground. In addition, restrictions in the direction of the thrust can also be considered. This is important in order to accommodate propulsion systems that have limits in the pointing of the thrust. The present algorithm can also perform maneuvers with several arcs of propulsion, so it is possible to accommodate constraints of forbidden regions of burn that repeat along the orbit, like the restriction of turning off the propulsion system when the satellite is not under tracking from the ground. This is one of the most important and desired characteristics of the algorithm, because the operation of turning on the engine when the satellite is not under tracking is very risk, in particular when a new propulsion system is used. These constraints and considerations make the algorithm more complex but capable of finding optimal trajectories with realistic constraints. Another important point is the use of nonsingular variables, so equatorial and circular orbits can be used for the satellite.

Regarding the propulsion system, it is assumed that the thrust has a constant magnitude of any level, from very low to very high; its direction can be fully controlled, and it can be turned on and off at any time. In this way, to find the optimal maneuver, it is necessary to find the time to start and to stop the engine and the direction of the thrust at every instant of time, specified by the values of the pitch and yaw angles. So, it is applicable to transfers of large amplitudes or station-keeping maneuvers. It is also possible to include coasting arcs, which gives even more flexibility to the method.

The second task of this work is to simulate the optimal maneuver found by the algorithm described previously in a realistic system that can consider errors in the propulsion device with embedded closed loop PID (proportional, integral, and derivative) controller. This task is very important because one of the goals of the present paper is to test the performance of a new propulsion system under development at the Universidade of Brasilia, and the effects of its errors have to be considered.

The propulsion system developed at the Plasma Laboratory of the Universidade de Brasilia (Ferreira et al. [30]) is an electric propulsion called permanent magnet hall thruster. The hall thruster is an electromagnetic propulsion, which accelerates an ionized propellant gas by the application of both electric and magnetic fields as defined by Stuhlinger [31] and Jahn [32]. The advantage of choosing electric propulsion is to reduce the fuel consumption of the maneuver, since it has a high exhaust velocity.

The electric propulsion is already recognized as a successful technology for long-duration space missions (Ferreira et al. [30]). It has been used as primary propulsion system on Earth-Moon orbit transfer missions, for trajectories to comets and asteroids, and on commercially geosynchronous satellite attitude control systems.

In this way, the present paper has the intention of showing an algorithm that is very flexible and realistic regarding constraints and other specific conditions and then using this algorithm to verify the performance of a new propulsion system that is under development, taking into account errors in magnitude of the thrust.

#### 2. Mathematical Model

First of all it is necessary to introduce the notation for the orbital elements used in this paper and other important definitions. The notation is = semimajor axis of the orbit of the spacecraft; = eccentricity of the orbit of the spacecraft; = inclination of the orbit of the spacecraft; = argument of the ascending node of the orbit of the spacecraft; = argument of the perigee of the orbit of the spacecraft; = true anomaly of the spacecraft; = range angle of the spacecraft; and .

The range angle “” is the independent variable of this work and, it is the angle between the radius position vector of the satellite and a reference arbitrary line, which lies in the plane of the orbit, as shown in Figure 1. It replaces the time in the equations of motion.

There are also two important angles, pitch and yaw, which are used to define the direction of the thrust. The angle of pitch is designated by , while the angle yaw is designated by . The pitch is the angle between the thrust direction and the perpendicular to the radius of the spacecraft, while yaw is the angle between the thrust direction and the orbital plane. The state variables used here are defined as follows [26–29]: where is the gravitational constant of the Earth and is the initial mass of spacecraft.

The advantage of using these state equations is to avoid singularities if the inclination or the eccentricity is zero. The equations of motion and the control variables used here are shown in [26–29]. The true longitude, which can be used as a constraint to define the prohibit region to apply the thrust, is given by
The constraints on the final Keplerian orbital elements are given by (3). All the orbital elements are scaled. The desired values are given by the index “*”, while the suffix “_{0}” denotes the initial value. The element without suffix or index is the current value of the element. The constraints on the final orbital elements are given by
The Pontryagin’s maximum principle is used to find the optimal control that determinates the optimal trajectory. In this case, it is desirable to find the maximum final mass of the spacecraft, given by the functional . This is equivalent of minimizing the fuel consumption, because the expenditure of fuel is the only way that the satellite has to lose mass. More details of this process can be found in [26–29]. The formulation of the problem is given by (4) to (6).
where are the constraints stated in (2) and (3) or any other type.

Some of the initial variables that should be guessed are the initial adjoint multipliers . A good initial guess for those variables is very important to assist convergence and to reduce the time the algorithm needs to obtain the solution. Unfortunately, the Lagrange multipliers do not have any physical meaning, so it is hard to find a good initial guess for them. To solve this problem, the adjoint-control transformation ([26–29]) is used to attribute a good estimative for from variables that have physical meaning. Those variables are the angles and and the values of and (Biggs [26], Prado [28]).

#### 3. Steps of the Algorithm

The final complete algorithm has the following steps [28, 29].(i)It starts from an initial guess for the set of variables (, , , , , ). With these initial values, the initial guess for the control is obtained.(ii)The “adjoint-control” transformation is used to obtain the initial values of the Lagrange multipliers required for the numerical integrations.(iii)Now, with all the initial values needed to solve the problem, the equations of motion and the adjoint equations are simultaneously numerically integrated during the propulsion arc. The values of the pitch and yaw angles are obtained, at every step of the integration, by the principle of maximum of Pontryagin. At the end, the value of the final state after the propulsion arc is obtained.(iv)The Keplerian elements of the orbit achieved are then obtained from the final state using (1).(v)At this point, the satisfaction of the constraints is verified. If the magnitude of the vector that represents the constraints satisfaction is smaller than a specified tolerance provided by the user (the numerical zero), the algorithm proceeds to step (vii). On the other hand, if it is bigger, the algorithm proceeds to step (vi).(vi)At this step, the gradient of the constraints equations () is obtained by perturbing the elements of the control vector and performing a new set of numerical integrations, in order to obtain the numerical derivatives of the constraints equations with respect to the vector . Then, a new set of values for the vector is found by (7) (Luemberger [33]) as follows:
and then the algorithm goes back to step (i), with the new value of the vector .(vii)Once the constraints satisfaction is achieved, the next step is to search for the minimum of the fuel consumed. The direction of the search **,** using the gradient method (Bazaraa et al. [34]), is
where the vector is
(viii)At this step, the magnitude of the vector is verified. If it is smaller than a value specified by the user as a direction search tolerance (numerical zero), the algorithm goes to step (x) and if it is bigger, the algorithm proceeds to step (ix).(ix)In order to get better results, the initial data “ratio of contraction” and the direction search tolerance are reduced as gets closer to the minimum. The magnitude for the direction search is then given by
So, the complete step is given by
and then the algorithm goes back to step (i).(x)At this step, the possibility of the control to be a Kuhn-Tucker point is verified. To check this condition, the vector **VT** is built, formed by the first elements of the vector given by (Bazarra et al. [34]) as follows:
where is the number of active constraints. If **VT** is not positive definite, the line , which causes **VT**_{j} to be negative on the matrix , is deleted. And then the algorithm returns to step (v).(xi)The current step is verified and, if it is not the last one, the algorithm goes to a new search for the minimum fuel consumption with a smaller direction search tolerance for the objective function. If this step is the last one, the algorithm is finalized.

#### 4. Extensions of the Algorithm

There are several extensions of the algorithm that can be considered, in order to make it more flexible. The first one is the possibility to perform maneuvers with more than one arc of propulsion. Increasing the number of propulsion arcs means that the number of optimization variables is increased. For example, for one thrust arc there are to control variables. For two thrust arcs, similarly, there is a set of to control variables and so on. In addition, by adding more than one thrust arc, the inclusion of constraints to prevent the overlap of thrust arcs becomes necessary.

Another extension is the possibility to consider forbidden regions to apply the propulsion as a constraint. These regions are defined by the true longitude, as shown in (2). Both values of the initial and final true longitudes of the prohibit region have to be specified.

In some situations, the initial range angles can be less than zero. It means that when the thrust is started, the time is negative. To avoid negative time, it is added a constraint that imposes to , the time, to be equal or bigger than zero. This constraint is only active if .

The last extension is the possibility to consider constraints restricting the pitch and yaw angles. In this case the bounds considered on and are the ones given by Biggs [27]: and , where the suffix “” represents the maximum angle and the suffix “” represents the minimum angle. If these constraint are active after finding the optimal angles and , and this problem is solved as follows [26–29]: , , . Those equations are similarly applied to the optimal yaw angles .

#### 5. The Permanent Magnet Hall Thruster

As defined by Jahn [32], the electric propulsion is the gas acceleration to generate thrust via electric heating, electric body forces, or both electric and magnetic body forces. The greatest advantage of the electric propulsion is the very high exhaust velocities, resulting in a reduction of the fuel consumption. Although electric propulsion has low thrust, the high specific impulse guarantees a reduced burned fuel along the maneuver.

The hall thruster, used in this work as the propulsion system, was fundamentally envisaged in Russia in 1960, and the first successful space mission with this thrust propulsion with 60 mN was used in the Meteor satellite series in 1972 (Zhurin et al. [35]). After that, this kind of propulsion system has been studied and developed in several countries, such as France, USA, Japan, and Brazil.

The working principle of the hall thrusters is the use of an electromagnet to produce the main magnetic field responsible for the plasma acceleration and generation (Ferreira et al. [30]). This configuration requires the use of energy to produce the magnetic field. Nevertheless, the permanent magnet hall thruster (PMHT) developed at the Plasma Laboratory of the Universidade de Brasilia uses an array of permanent magnets, instead of an electromagnet, to produce a radial magnetic field inside the cylindrical plasma drift channel of the thruster (Ferreira et al. [30]). The use of permanent magnets instead of electromagnet guarantees low-power consumption, and it can be used in small- and medium-size satellites (Ferreira et al. [30]).

In the Plasma Laboratory of the Universidade de Brasília, it has been developed two kinds of hall thruster, called Phall I and Phall II. The first one to be constructed was the Phall I. It has a stainless steel chamber with 30 centimeters of diameter. Its magnetic field is produced by two concentric cylindrical arrays of ferrite permanent magnets: 32 bars in the outer shell and 10 bars in the inner shell. The magnetic field in the middle line of the plasma source’s channel is 200 Gauss (Ferreira et al. [30]). On the other hand, the second thruster Phall II has an aluminum plasma chamber and it is smaller, with 15 cm diameter, and contains neodymium-iron magnets to produce the magnetic field (Ferreira et al. [30]). Table 1 gives the parameters of the performance of both Phall I and Phall II thrusters (Ferreira et al. [30]).

In this paper, it was found first the optimal maneuvers with the thrust parameters shown in Table 1. Then, these optimal maneuvers were simulated with a PID control for a long period of time, based on the continuous monitoring of the thrust in a real-time performance, correcting any possible failure.

#### 6. Spacecraft Trajectory Simulator

The maneuver simulator used to simulate the optimal maneuvers in a more realistic way is the spacecraft trajectory simulator (STRS). The STRS can consider constructional features and operation, such as nonlinearities, failures, errors, and external and internal disturbances, in order to determine the deviation in the reproduction of the optimal solution previously found.

Furthermore, maneuvers with continuous thrust are used during a long period of time. This kind of maneuvers requires a PID control system to guarantee the achievement of the final conditions of the maneuver. The operating structure of the STRS can be described as follows (Rocco [36]).(a)The simulation occurs in a discrete way, that is, at every simulation step, the state of the vehicle (position and velocity) must be computed. For all purposes, the disturbances, nonlinearities, errors, and failures must be considered.(b)Since a closed loop system was used to control the trajectory, the reference state is determined by applying the optimal maneuver. Then, the current state follows the reference but considers the effects of disturbances and the constructive characteristics of the vehicle.(c)The difference between the reference state and the current state creates an error signal that is inserted into a PID control.(d)The controller produces a control signal according to the PID control law and the gains that have been set.(e)The control signal is inserted into the actuator model (propellant thrusters), where the nonlinearities inherent to the construction of the actuator can be considered. Thus, the behavior of the propellant thrusters can be reproduced by the appropriate adjustment of the model parameters, which are supplied by the manufacturer of the thrust actuator.(f)Finally, an actuation signal is sent to the dynamical model of the orbital motion. At this signal the velocities increments due to the disturbances can be added.(g)With the actuation signal added with the possible disturbances, the model of the orbital dynamics provides the state (position and velocity) after the application of the propulsion.(h)Through the use of sensors that were modeled considering its constructive aspects, the current state is determined and compared with the reference state in order to close the control loop.

#### 7. Results

Before performing tests with the propulsion system Phalls I and II, that is one of the goals of the present paper, it is important to test some of the particular characteristics of the algorithm developed here. Those tests are performed in maneuvers that have similar results available in the literature, so a comparison to validate the algorithm and the software developed can be made. After that, the results of the optimal maneuvers using the new propulsion devices, as well as the simulations of them in the STRS, are presented.

##### 7.1. Optimal Maneuvers to Validate the Algorithm

###### 7.1.1. Maneuver 1

This first maneuver described has a constraint at the pitch angle, in order to test this capability of the proposed algorithm.

Initial orbital elements: = 99000 km; = 0.7; = 10°; = 55°; = 105°; = −105°. Vehicle mass = 300 kg; thrust = 1.0 Newton, initial position = 0°. Condition on the final orbit: = 104000 km. Other constraints: 5°5° (pitch constraint).

Final orbital elements obtained after the maneuver: = 103999.21 km; = 0.7143; = 10°; = 55°; = 105°; = 30.24°.

Fuel consumption: 2.4235 kg; fuel consumption in Biggs [27]: 2.44 kg; fuel consumption in Prado [28]: 2.45 kg.

Figure 2 shows the direction of the thrust.

Now, with the constraint in the direction of propulsion, the fuel consumption was increased when compared with a maneuver without this constraint [27, 28]. The extra fuel needed due to this constraint is 3.8 10^{−3} kg. It is possible to view clearly that the pitch angle is confined to 5° at the end of the maneuver. In any case, the algorithm developed here obtains better results when compared to Biggs [27] and Prado [28].

###### 7.1.2. Maneuver 2

This maneuver has the constraint of a region prohibited for thrusting. This is one of the most important capabilities of the algorithm developed here.

Initial orbital elements: = 99000 km; = 0.7; = 10°; = 55°; = 105°; = −105°. Vehicle mass = 300 kg; thrust = 1.0 Newton, initial position = 0°. Condition on the final orbit: = 104000 km. Other constraints: no thrust between the true longitudes 120° and 180°.

Final orbital elements: = 103999.85 km; = 0.7134; = 10°; = 55°; = 105°; = 320.80°.

Fuel consumption: 2.7852 kg; fuel consumption in Biggs [27]: 2.81 kg; fuel consumption in Prado [28]: 2.81 kg.

Figure 3 shows the direction of the thrust.

In Figure 3 it is possible to note that the solution has the thrust arc ending in = 120°. The true longitude is defined here as °, that is similar to 65.80°, that is the result shown in Figure 3. In this way, the region prohibit of thrust was obeyed and, compared with the maneuver that is free of this constraint, the extra fuel needed to reach the final semimajor axis required was 0.3655 kg. Once again, the algorithm proposed here obtained better results when compared to Biggs [27] and Prado [28].

###### 7.1.3. Maneuver 3

This maneuver has the requirements of changing three orbital elements of the orbit at the same time.

Initial orbital elements: = 41904.1 km; = 0.018; = 0.688°; = −29.8°; = 7°; = −97.2°. Vehicle mass = 300 kg; thrust = 1.0 Newton, initial position = 0°. Condition on the final orbit: = 42164.2 km; = 0; = 0°.

Final orbital elements: = 42164.55 km; = 0.00130; = 0.0419°; = 300.60°; = 100.47°; = 143.64°.

Fuel consumption: 5.565 kg; fuel consumption in Biggs [27]: 5.621 kg; fuel consumption in Prado [28]: 5.579 kg.

Figures 4, 5, 6, and 7 show the direction of the thrust.

In this maneuver there are three Keplerian elements fixed on the final orbit: semimajor axis, eccentricity, and inclination. Since the maneuver includes a change in the orbital plane, the yaw angle is not zero. The final conditions were satisfied and the fuel consumption was reduced by 0.014 kg, when compared to Prado [28].

##### 7.2. Optimal Maneuvers Using the Phalls I and II

In this section we present the optimal maneuvers found by the algorithm presented in the present paper when using Phalls I and II. The optimal thrust angles are presented, and the specific impulse considered for each maneuver is given in Table 1. Figures 8–23 present the optimal angles for the proposed maneuvers given by the initial and final range angle and the pitch angle at each arc of propulsion. The yaw angle is always zero, because all the maneuvers simulated are planar.

All the maneuvers considered here have the same initial orbital elements and final condition imposed for the final orbit. Only the number of arcs and the propulsion system is different at each maneuver. The parameters of the maneuver proposed are as follows. Initial orbital elements: = 7130.865 km; = 0.0035; = 98.5054°; = 0°; = 0; = 220°. Vehicle mass = 300 kg. Condition imposed on the final orbit: = 7200 km; = 0.004.

###### 7.2.1. Maneuver 4

For this maneuver it was considered the existence of three Phall I thrusters. The propulsion force of each one is assumed to be the average measured value. The parameters considered in this maneuver are as follows. Total thrust = 0.252 Newton; specific impulse: 1083 s.

Solution: Final orbital elements: = 7200.00 km; = 0.004. Fuel consumption: 1.046346 kg. Duration of the maneuver: 44066.96 s.

###### 7.2.2. Maneuver 5

This maneuver has the same conditions of maneuver 4, but now two thrust arcs are used, instead of one. The parameters considered in this maneuver are as follows. Total thrust = 0.252 Newton; specific impulse: 1083 s.

Solution: Final orbital elements after the first arc: = 7165.30 km; = 0.0039. Final orbital elements after the second arc: = 7200.00 km; = 0.0040. Fuel consumption: 1.013402 kg. Duration of the maneuver: 42679.54 s.

Note that the use of two arcs generates savings in the fuel consumption, as expected.

###### 7.2.3. Maneuver 6

For this maneuver it was considered the existence of three Phall II thrusters. The propulsion force of each one is assumed to be the average measured value. The parameters considered in this maneuver are as follows. Total thrust = 0.360 Newton; specific impulse: 1600 s.

Solution: Final orbital elements: = 7200.00 km; = 0.004. Fuel consumption: 0.697930 kg. Duration of the maneuver: 30398.73 s.

Note that the use of the Phall II generates savings in the fuel consumption since it has better parameters when compared to the Phall I device.

###### 7.2.4. Maneuver 7

This maneuver has the same conditions of maneuver 6, but now with two thrust arcs instead of one. The parameters considered in this maneuver are as follows. Total thrust = 0.360 Newton; specific impulse: 1600 s.

Solution: Final orbital elements after the first arc: = 7167.77 km; = 0.0039. Final orbital elements after the second arc: = 7200.00 km; = 0.0040. Fuel consumption: 0.686314 kg. Duration of the maneuver: 29892.85 s.

Note that the use of two arcs generates savings in the fuel consumption one more time, as expected.

##### 7.3. Optimal Maneuvers Simulations Using the STRS

Now, with the help of the optimal maneuvers found previously, we shall simulate those maneuvers in the STRS using the optimal angles. Some different aspects of the propulsion system were considered to simulate a more realistic environment, and also the PID control was considered.

In this section, for the propulsion system, it was considered that at each inertial direction , , has an error on the actuator signal (m/s) with mean equal to zero and variance equal to 10^{−10}, that is, it was inserted an error in the velocity of the satellite. This error has amplitude approximately close to 5 × 10^{−3} N for each thrust, which corresponds to the error of the PMHT (Ferreira et al. [30]). There is a PID control to correct the errors due the actuator, but it is still possible to analyze the deviations and the increase of the fuel consumption due to the errors.

###### 7.3.1. Maneuver 4 in STRS

In this case it is considered maneuver 4, including the solution found there. Final orbital elements: = 7199.85 km; = 0.004. Fuel consumption: 1.0470 kg. Propellant mass difference from the optimal maneuver: 6.66 × 10^{−4} kg.

The error inserted in the propulsion system resulted in a deviation of the orbital elements, as we can see in Figures 14 and 15 for the semimajor axis and eccentricity. If there was not any error at the propulsion system, the deviation would be zero all the time for the orbital elements. In Figures 16 and 17 we can see also the effect of the error in the velocity and position, as a function of these parameters. Finally, the thrust error is shown in Figure 18.

###### 7.3.2. Maneuver 5 in STRS

In this case maneuver 5 is considered, including the solution found. Final orbital elements after the first arc: = 7165.23 km; = 0.0039. Final orbital elements after the second arc: = 7199.80 km; = 0.0040. Fuel consumption: 1.013362 kg. Propellant mass difference from the optimal maneuver: 6.384 × 10^{−4} kg.

###### 7.3.3. Maneuver 6 in STRS

Now maneuver 6 is considered. Final orbital elements: = 7199.82 km; = 0.004. Fuel consumption: 0.6979 kg. Propellant mass difference from the optimal maneuver: 2.19 × 10^{−4} kg.

The same analysis for the figures made in Section 7.3.1 fits here. Figures 19, 20, 21, 22, and 23 show the deviations and the error that occurred on the propulsion system.

###### 7.3.4. Maneuver 7 in STRS

Maneuver 7 is now studied. Final orbital elements after the first arc: = 7167.70 km; = 0.0039. Final orbital elements after the second arc: = 7199.83 km; = 0.0040. Fuel consumption: 0.686279 kg. Propellant mass difference from the optimal maneuver: 2.1469 × 10^{−4} kg.

###### 7.3.5. Maneuver 8 in STRS

This maneuver uses the optimal angles given in maneuver 4 but includes the errors proposed for the propulsion system. In addition, it was considered other nonlinearities for the actuator: two seconds delay to respond the control signal; a rate limiter for the variation of the satelite velocity, which the absolute limit of the rate is 0.00025 m/s; dead zone where the propulsion system is not turned on if the required velocity increment is lower than 0.0002 m/s. Considering these nonlinearities for the propulsion system, the PID control was able to achieve the maneuver although the fuel consumption was slightly increased. The results for this simulation are as follows. Final orbital elements: = 7199.86 km; = 0.004. Fuel consumption: 1.1276322 kg. Propellant mass difference from the optimal maneuver: 0.081429 kg.

###### 7.3.6. Maneuver 9 in STRS

The maneuver simulated here uses the optimal angles given in maneuver 6, with the errors proposed for the propulsion system. In addition, it was proposed the same nonlinearities (rate limiter, dead zone, and time delay) of maneuver 8. Considering these nonlinearities for the propulsion system, the PID control was able to achieve the maneuver although the fuel consumption was increased. The results for this maneuver are as follows. Final orbital elements: = 7199.84 km; = 0.0040. Fuel consumption: 0.721921 kg. The propellant mass difference from the optimal maneuver: 0.02402 kg.

#### 8. Conclusion

Primarily, this paper established an algorithm to solve the problem of orbital maneuvers using a low-thrust control for a spacecraft that is travelling around the Earth. Then, all the maneuvers studied in this paper were successfully solved with the final conditions and constraints proposed and with reasonable fuel consumptions.

It was possible to verify that maneuvers with more thrusting arcs consume less fuel, as expected. This occurs because the algorithm has more variables to optimize, so it is possible to reduce the fuel consumption.

The second part of this work was to simulate the optimal maneuvers found by the algorithm proposed here in a more realistic environment, which can consider errors on the actuator that was not considered in the search for the optimal maneuver.

The maneuvers simulated in the STRS were coherent with the optimal maneuvers, validating the integration of both softwares.

The error considered in the propulsion system opens the possibility to study how the system would react to those nonlinearities. Although errors were inserted in the propulsion system, the PID control was able to correct and accomplish the maneuver.

It is possible to analyze the shifts caused by the error as well as the deviations in semimajor axis and eccentricity. It is also possible to see that the propulsion thrust was not linear.

For the maneuvers shown in Sections 7.3.5 and 7.3.6, some nonlinearities of the propulsion system, such as a response time, a rate limiter and a dead zone for the actuator signal were considered. All these errors occur in real systems. With the help of the STRS it was possible to simulate these errors and analyze the maneuvers studied with more accuracy. The STRS has shown to be an efficient simulator, capable of simulating and studying optimal maneuvers in a more realistic environment and to analyze many nonlinearities not considered in the calculation of the optimal maneuver.

Evidently, the phall II was more efficient than the phall I, as noticed by comparing maneuver 4 with maneuver 6 and maneuver 5 with maneuver 7. This was expected, since the phall II has a higher specific impulse and a higher average propulsion thrust as well. Nevertheless, the PID control was able to control all the maneuvers and reaches the final orbital constraints.