Open access peer-reviewed chapter

Precise Attitude Control Techniques: Performance Analysis From Classical to Variable Structure Control

Written By

Elisa Capello and Matteo Dentis

Submitted: February 13th, 2019 Reviewed: October 4th, 2019 Published: January 15th, 2020

DOI: 10.5772/intechopen.90023

Chapter metrics overview

770 Chapter Downloads

View Full Metrics


Small satellites have begun to play an important role in space research, especially about new technology development and attitude control. The main objective of this research is the design of a robust flight software, in which the key feature is suitably designed control laws to guarantee the robustness to uncertainties and external disturbances. To accomplish the desired mission task and to design the robust software, a classical Proportional Integrative Derivative (PID) method and two robust control system technologies are provided, focusing on applications related to small satellites and on the real-time implementability. Starting from PID approach, simulations are performed to prove the effectiveness of the proposed control systems in different scenarios and in terms of pointing stability and accuracy, including uncertainties, measurement errors, and hardware constraints. Different control techniques are analyzed: (i) a tube-based robust model predictive control (MPC) and (ii) a variable gain continuous twisting (CT) sliding mode controller. Both controllers are compared with loop shaping PID controller.


  • precise attitude control
  • continuous twisting controller
  • model predictive control
  • pointing stability
  • variable structure control

1. Introduction

The attitude tracking of rigid bodies, i.e., spacecraft systems, is an active research area [1, 2], since every system works in a harsh environment far from direct human control. In detail, a space system requires a subsystem that can autonomously handle and control the attitude dynamics. This subsystem has the main purpose of controlling the orientation of the spacecraft with respect to an inertial reference frame. This subsystem includes sensors and actuators to measure the orientation and to apply the torques needed to change the orientation.

This research will focus on small satellites, i.e., object with mass lower than 500kg. The common features of these objects are the small volume and mass, and these features allow small satellites to be launched as cargo and later being deployed by an other spacecraft or as payload of a single launch vehicle. Since the cost of launch is heavily affected by the payload mass, small satellites offer a relatively low-cost solution to space access. However, reduced dimensions bring new difficulties, since small satellites are more sensitive to disturbances and perturbations than larger satellites. The attitude control problem of a spacecraft in the presence of disturbance and/or uncertainties has been extensively studied. Many different control strategies have been proposed in literature, including adaptive controllers [3, 4, 5], robust control methods [6, 7] or H2/Hcontroller [8]. The importance of robust controllers for attitude tracking and of the definition of the mathematical model is pointed out by Dasdemir [9], in which a quaternion-based control is proposed. Even if external disturbances are included, only sinusoidal variations of them are considered, and zero-tracking error is proposed. In [10] adaptive gains of a sliding mode controller are designed to counteract the presence of failures. Moreover, in [10] actuator limitations and dynamical constraints are also included.

Due to the presence of uncertainties and dynamical constraints, the main objective of this research is to design and compare different robustcontrol systems for attitude tracking. The two proposed control methodologies are based on model predictive control theory [11, 12] and on variable structure theory [13, 14]. A first definition of robustness, although not so rigorous, can be the capability of the control system to work well under sets of parameters different from the nominal one. For example, these parameters can be uncertainties within the system, not known but bounded.

Both of the proposed methods have advantages and drawbacks, briefly described in the following. As explained in [15], a model predictive control approach is able to effectively handle constraints on torque magnitude and attitude angles and can be more effective than other classical methods. However, a high computational effort is required to solve online the optimization problem. Focusing on robust approach, in this chapter, a tube-based robust MPC (TRMPC) is proposed, which focuses on two main goals: (i) the robustness to additive disturbances and (ii) the computational efficiency of a classical MPC, due to an offline evaluation of the constraints. Thanks to this control strategy, the uncertain future trajectories lie in sequence of sets, known as tubes, and the online MPC scheme is applied onlyto the nominal trajectories, representing the center of the tube itself as in [16].

The second proposed methodology is based on variable structure strategy [13], in which the control law is a function of the system state and changes among the possible structures according to some suitably defined rules. In particular, in sliding mode controller (SMC) systems, a switching function is designed, which implicitly defines a sliding surface corresponding to the points in the state space in which the switching function is zero. At any time, the structure applied by the control law depends on the position of the state with respect to the sliding surface. When a sliding motion is established, the closed-loop system is in sliding mode, and its trajectories are constrained on the sliding surface. Sliding mode methods provide controllers which can counteract uncertainties and disturbances, if the perturbations affecting the system are matched and bounded (first-order SMC) [17] or smooth matched disturbances with bounded gradient (second-order SMC) [14, 18]. One of the main drawbacks of SMC methods is the chattering phenomenon, which excites the high-frequency unmodeled dynamics in practical applications. Moreover, the performance of the control system is affected by the quality of the measurements and of the computation frequency of the system [19]. For this reason, our idea is to design a Continuous Twisting Sliding Mode Controller (CTSMC) with adaptive gains [20, 21]. The peculiarities of this controller are (i) adaptation of the gains, (ii) continuous control inputs, and (iii) the external disturbances which are included in the definition of the control gains.

For both the proposed controllers onboard, hardware limitations are included in the design and implementation. As clearly explained in [22], limited computational resources and reduced sampling time can be a problem in the design of robust controller. Moreover, the sample frequency reduction in the SMC design implies a residual chattering, which can be reduced with the introduction of a hyperbolic tangent [23]. A comparison with a Proportional Integrative Derivative (PD) controller, in which the gains are defined from loop shaping theory [24], is also proposed.

The chapter is structured as follows. In Section 2 mathematical models of the spacecraft are described, with an emphasis on the external disturbance definition. Section 3 is focused on the definition of mathematics and implementation of the two proposed control laws: (i) TRMPC and (ii) CTSMC. In this section the real-time implementability of both controllers is included. Simulation results are detailed in Section 4, in which a nadirpointing nominal attitude with an additional rollpointing is performed. Finally, concluding remarks are proposed in Section 5.


2. Mathematical models

Section 2 introduces in detail all the mathematical models, designed and implemented for the design of an orbital simulator. Attitude dynamics and quaternion kinematics are introduced to identify the system. Moreover, a detailed description of all the external disturbances is provided, with a focus on LEO maneuvers. Finally, a complete description of the different actuation configurations is included, starting from NASA configuration to tetrahedral.

2.1 Spacecraft attitude dynamics

In the present section, the mathematical model of the rigid body attitude dynamics is described. The rigid body attitude dynamics are described by Euler’s equation:


where ω̇BR3is the angular acceleration in body frame, ωBR3is the spacecraft angular velocity in body frame, J=JxJyJzTR3×3is the inertia matrix of the spacecraft, HrwsR3is the total angular momentum of the reaction wheel system expressed in body frame, TrwsR3is the torque provided by reaction wheels to the spacecraft in body frame, and TextR3is the external torque applied to the spacecraft. This torque may be the sum of the external disturbance torque plus the torque provided by the thrusters of the reaction control system (RCS) and/or the torque provided by magnetic torquers (MGT). The torque provided by RCS or MGT is usually applied in order to slow down the reaction wheels (the main actuation system for attitude control) once the maximum angular momentum of the wheels is reached. This so-called momentum desaturation will be deeply discussed in Section 2.3. Note the “-” sign applied to Trws: since the torque applied to the spacecraft body by the reaction wheels is a reactiontorque, i.e., the torque applied to the spacecraft structure has opposite sign with respect to the torque generated by the electric motors of the wheels, this torque has to be considered internal, and hence the minussign is considered. Torque is achieved by momentum exchange between the reaction wheels and the rest of the spacecraft body. Eventually, the spacecraft angular velocity, ωB, is obtained by time-integrating Eq. (1).

The attitude of the spacecraft is expressed in quaternionform. The use of quaternions is very common in space applications. The advantages of using the quaternion notation are that singularities that may occur using the classical Euler angles2 are completely eliminated, since the quaternion expresses a specific attitude unambiguously. In the following, some fundamentals required to understand the use of quaternions will be provided, while for a more detailed discussion, please refer to [25].

A quaternion is basically a vector of four elements:


where the vectorial part, qv=q1q2q3T, represents a scaled form of the eigenvector, i.e., the axis of rotation, and the scalar component, q4, represents the magnitude of the rotation. A fundamental property for an attitude quaternion is that


A quaternion of the form


is the unitaryquaternion, and it represents an attitude which is perfectly aligned with the selected reference frame.

The quaternion kinematics is described by


where qR4is the current attitude quaternion and ωBis the spacecraft angular velocity. Time-integrating Eq. (5) allows the determination of the true attitude of the spacecraft in terms of quaternion. For attitude control purposes, there are two main quaternion mathematical operations that must be known: the quaternion product and the quaternion inverse. The quaternion product is defined as


The quaternion inverse is defined as the normalization of the conjugate quaternion, i.e.,


2.2 External disturbances

In the low Earth orbit (LEO) environment, four main sources of orbital disturbances which affect the attitude and orbit dynamics of a spacecraft can be found: residual atmospheric drag, gravitational disturbances, solar radiation, and electromagnetic disturbances. The last two sources of disturbances present a lower magnitude with respect to the other sources, so they are described but not detailed in the following. A brief summary of LEO disturbances is presented in [26].

2.2.1 Atmospheric drag

The drag disturbance is due to the residual atmospheric gases which impact on the surface of the spacecraft. At high altitude, above 100 km, the residual atmosphere cannot be considered a continuum medium anymore, and a discrete medium model must be considered: the free molecular flow model. Indeed, the residual atmospheric drag is computed by considering the momentum exchange between the gas particles and the spacecraft. When hitting the surface of the spacecraft, some particles may be completely or partially reflected, depending on the number of factors, such as surface and incident flow temperature, molecular weight of particles, speed of the spacecraft, and more. To consider such effects, the accommodation coefficient has been introduced in order to compute the spacecraft drag coefficient by Cook [27]. The analysis of Cook shows that in some cases it may be useful to accurately compute the drag coefficient of a spacecraft; however, there are other uncertainties in the atmospheric models (determination of the exact temperature, density, magnetic flux, and more) such that the computation of the total drag force is affected by uncertainties higher than uncertainties which affect the computation of the drag coefficient. The work of Koppenwallner [28] analyze the real data of three spacecraft (CHAMP, GRACE, and GOCE) in order to derive a method to determine the drag coefficient of slender spacecraft. In this method, the effect of the accommodation coefficient is evaluated and compared with the results of CFD analysis. This method allows an easy computation of the drag coefficient depending on the ratio between the frontal and side areas. As already mentioned, this method can be applied only to spacecraft with simple shape. The work of Huges [29] proposes the computation of the drag force and torque integrating the incident flow on the surface of the spacecraft, without computing the drag coefficient. In this case, the accommodation coefficient is always required to compute the normal and tangential drag force applied to the surface. To compute the drag torque, the computation of the center of pressure is required. For simple shape, e.g., a plate with constant mass density, the center of pressure is located in the center of the plate area. For complex shapes, the total center of pressure can be computed by summing the contribution of the number of plates used to discretize the whole spacecraft surface.

For the purpose of this work, the computation of the residual drag force is carried out using the easiest method:


where Fdis the total drag force acting on the center of pressure of the spacecraft and aligned with the spacecraft inertial velocity VSC, ρis the atmospheric density, Sfrontis the exposed frontal area perpendicular to the direction of motion, and CDis the drag coefficient. According to the analysis of Cook, the value of CDis set equal to 2.2. In order to consider uncertainties in both computation of the drag coefficient and estimation of the center of pressure, the value of CDmay be increased up to 10–20%, considering a worst-case scenario.

The drag torque is eventually computed:


where rcpis the distance between the center of pressure and the center of mass of the spacecraft. As already mentioned, the center of pressure may be estimated by discretizing the spacecraft in a number of simple plates and summing the contribution of each plate. It has to be remarked that the estimation of the center of pressure is subjected to uncertainties.

2.2.2 Gravity gradient

Gravitational torque is due to the differential gravitational force which acts on the spacecraft. As shown in Figure 1, two equal masses morbiting the Earth linked together by a mass-less rigid beam of length lare subjected to two forces F1and F2equal to

Figure 1.

Simple gravity gradient torque example.


where G=6.671011Nm2/kg2 is the universal gravitational constant, MEis the mass of the Earth, and R1and R2are the distances from the center of the Earth of the two masses, respectively. The minussign in Eq. (10) is due to the fact that the force is directed to the center of the central body. Since R1<R2, it follows that F1>F2; hence a torque Mggis generated:


Extending this behavior to the whole body of a spacecraft, the following result is obtained:


where Ris the distance of the spacecraft from the center of the Earth, Jis the inertia matrix of the spacecraft, and o3is the third column of the direction cosine matrix from the body to local vertical frame. As an alternative, ô3=rECI/rECI, considering rECIR3as the position of the spacecraft with respect to the inertial frame.

Equation (12) has been obtained applying Eq. (10) to the infinitesimal mass element dmof the spacecraft, computing the cross product between the infinitesimal force dfggand the distance dlof dmfrom the center of mass of the spacecraft and integrating over all the spacecraft volume. The volume integration results in the computation of the inertia matrix. Since the gravity gradient torque tends to align the minimum inertia axis of the spacecraft with respect to the local vertical frame, gravity gradient stabilization has also been used as passive stabilization method. This method ensures a two-axis stabilization, since only roll and pitch axes with respect to the local vertical frame are affected by gravity gradient torque, while the yaw axis is torque-free. The equilibrium stability of gravity gradient stabilization is ensured only if the nadir inertia axis of the spacecraft is the smallest inertia axis: if this condition is not satisfied, the equilibrium condition may be unstable, and an active stabilization of the spacecraft is required. For a deeper analysis, the reader can refer to [25].

2.2.3 Other disturbance torques

As mentioned at the beginning of Section 2.2, there are other sources of torque disturbances which affect the attitude dynamics of a spacecraft. The first is a magnetic torque due to the residual magnetic dipole that can affect the spacecraft. This torque is due to the interaction between the residual magnetic dipole dand the magnetic field Bgenerated by the Earth such that Mmag=d×B. This is the same phenomenon that aligns the needle of a compass with the magnetic North of the Earth. Spacecraft are usually designed in order to minimize, up to neutralize, its residual magnetic dipole. However, the use of magnetic torquers (as described in Section 2.3) generates a desired magnetic dipole in order to obtain a desired torque, which can be used to control the attitude of very small spacecraft (usually CubeSats), or to desaturate momentum actuators (reaction wheels and gyroscopes). In general, since the spacecraft designer is able to properly cope with the magnetic dipole, this disturbance can be neglected.

An additional disturbance torque is due to solar radiation. This torque is produced by photons emitted by the Sun which exchange momentum with the surface of the spacecraft. Clearly, this disturbance is present only if the orbit of the spacecraft is in the sunlight. When the orbit of the spacecraft is shadowed by the eclipse of the Earth, this disturbance is not present. The magnitude of this torque depends on the activity of the Sun, which presents seasonal variations according to the Sun’s cycles. For spacecraft with a compact shape and without long appendages, the magnitude of this torque is usually lower than the effect of drag and gravity; hence, this disturbance may be neglected.

Other disturbances are due to internal torques, due to fuel sloshing, and/or due to flexible modes which are present for spacecraft with flexible solar arrays or appendages [30]. In particular, the attitude control of a flexible spacecraft must be properly designed, since a bad-designed closed-loop attitude control may excite flexible modes of the spacecraft instead of damping them, causing a catastrophic failure of the mission.

2.3 Actuators

To control and stabilize the attitude of a spacecraft, it is necessary to apply torques to the spacecraft structure in order to reorient it and/or to maintain the desired attitude counteracting external disturbances. There exist a number of actuators which are able to accomplish this task, with different working principles and application scope:

  • Reaction control thrusters (RCT)

  • Magnetic torquers (MGT)

  • Control moment gyroscopes (CGM)

  • Reaction wheels (RWS) and/or momentum wheels

Reaction control thrustersare basically small rocket motors (chemical thrusters). The simplest RCT is composed of a combustion chamber and an expansion nozzle. Both fuel and oxidizer are introduced in the combustion chamber, and they are ignited (with a capaciitive discharge, torch ignition, or using hypergolic propellants), and then the exhaust flows in the nozzle3 accelerating and exchanging linear momentum, producing thrust. To produce torque, RCT are grouped in a RCS, and they are commanded coupled: two thrusters, installed at a certain distance from each other and firing in opposite direction, are activated simultaneously, producing a defined torque. If thrusters are throttable, i.e., the amount of thrust can be regulated, also the produced torque can be regulated; differently, if they are not throttable, only a fixed amount of thrust, and consequently torque, is generated, then other modulation techniques should be used to obtain a throttable torque (e.g., pulse-width modulation (PWM) modulation). For large spacecraft, e.g., Space Shuttle, chemical thrusters are used, since they produce a high amount of thrust. For smaller spacecraft, cold gas thrusters may also also be used: in this actuators the combustion chamber is eliminated, and the thrust is produced by the gas flowing from the storage tank to the nozzle by opening (or closing) the flow control valve (FCV). Such type of thrusters is not throttable.

RCTs may be used for two different purposes. The main use is to desaturate reaction wheels and/or control moment gyros: they are activated in order to provide the external torque which contrasts the torque due to the wheel deceleration or gyros reorientation. An additional method is that they are used combined with a different main actuator system (RWS or CGM) when the required torque is too high to be provided by the main system. RCT are also used to generate the force required to accomplish the orbit control task (execution of orbital maneuvers or station-keeping).

Magnetic torquersproduce force, and torque, by generating an electromagnetic field which interact with the magnetic field of the Earth. Since their performance is linked to the electromagnetic field of the Earth, their effectiveness decreases with the orbit altitude, and they cannot be used during interplanetary missions. For these reasons, they are mainly used in small or all-electric spacecraft for desaturation of momentum accumulation devices (RWS or CGM). Examples of application are found in the Hubble Space Telescope [31].

Control moment gyroscopesconsist in an assembly of gyroscopes spinning about an axis which can be tilted and consequently change the angular momentum vector of the devices. Differently from RCT and MGT, which are mostly on/off actuators, CMG allows to control the attitude of a spacecraft reaching a very high accuracy, since they can generate a continuous torque by changing the CMG angular momentum. Compared to reaction wheels, CMG are more effective and efficient, since they can produce a higher torque: indeed, they are used to control the attitude of the International Space Station [32]. For mechanical reasons, they are subjected to saturation: when they reach the gimbal lock, they are stuck, and they cannot provide further angular momentum change (i.e., torque). When this condition is reached, an external torque must be applied in order to allow CMG to reorient themselves in the original configuration, making them able to provide torque again and restore the attitude control capabilities of the system.

Reaction wheelsare basically disk masses which rotate about a fixed spin axis driven by an electric motor. By varying the rotation speed, i.e., applying a torque to the wheel, by reaction the same amount of torque is transmitted to the spacecraft structure, and it starts moving. These devices are the most commonly used actuators for fine attitude control due to its simplicity and lower complexity than the CMG, even though they are able to provide less torque and less accuracy than CMGs. RWS are also subjected to two different types of saturation: torque saturation, due to the maximum current that flows into the wires of the electric motor, and momentum saturation, due to the maximum spin velocity before breaking bearings. Once the momentum saturation is reached, RWS must be desaturated in a similar way as for CMG, and external torque, usually provided by RCT or MGT, is applied to counteract the deceleration of the wheels. Once the original condition is reached, RWS starts to provide torque again.

To fully control the three-axis attitude, there are necessarily three reaction wheels, but for redundancy issues, there are usually installed four reaction wheels: in this way, if a wheel failure occurs, a three-axis attitude control is always ensured, even though pointing accuracy may be degraded. The reaction wheel system configuration can be installed using a number of different wheel accommodation, mostly depending on the specific mission since a main control axis may be required. The mostly used configurations are:

  • NASA 3 + 1: three wheels are aligned with the spacecraft main inertia axis, while the fourth wheel is inclined by 45 deg. with respect to all planes. During nominal operations, only the wheels aligned with the body axis are used, while the fourth wheel is used only during wheel failure.

  • Pyramidal: the wheels’ spin axes are pointing toward the faces of a pyramid with square base. This means that wheels are inclined with a fixed angle with respect to the base of the pyramid, generating torque along the height of the pyramid, and the projections of the wheel momentum lie in the pyramid base, generating torque along the last two directions.

  • Tetrahedral: as for the pyramid, in this configuration the spin axes of the wheels are pointing to the faces of a tetrahedron. Hence, a wheel generates torque only along the height of the tetrahedron, while the other three wheels generate torque both in the tetrahedron base and along the height.

Note that, except for the NASA configuration, it is necessary to allocate the three-axis control torque to the four wheel assembly. To do this, it is common to use the Moore-Penrose pseudo-inverse matrix, A+, since the non-square control allocation matrix AR3×4cannot be inverted. The three reaction wheel configuration yet presented is depicted in Figure 2. For the NASA 3 + 1 configuration, angles αand βare both equal to 45 deg.; for the pyramidal configuration, βis selected by the designer (and angle of 35.26 deg. maximizes the volume of the control envelope), while α, not depicted in Figure 2, is equal to 90 deg.; for the tetrahedral configuration, angle αis equal to 120 deg., in order to obtain a symmetric tetrahedron, while angle βis set by the designer (a value of 19.47 deg. ensure the most regular envelope).

Figure 2.

Reaction wheel configurations. (a) NASA 3+1. (b) Pyramidal. (c) Tetrahedral.

In the following of this chapter, reaction wheels are considered as the main actuation system for attitude control accommodated according to the pyramidal configuration.


3. Attitude control laws

The objective of Section 3 is related to mathematics and design of two robustcontrol strategies for attitude tracking. As detailed in Introduction, two control systems are considered in this chapter: (i) a robust MPC strategy, based on the concept of tube, and (ii) a continous SMC strategy, based on the method of twisting algorithm. Both controllers are compared with a PID controller, in which the gains are based on the theory proposed by [24].

3.1 Tube-based robust model predictive control

Tube-based model predictive control (TRMPC) is a class of robust controllers, i.e., controllers which are able to cope external disturbances and uncertainties which affect the system. The concept of tubehas been introduced in classical MPC in order to improve robustness of such controllers and in order to force the perturbed system dynamics to converge to the center of it. This tubeis generated by propagating the unperturbed system dynamics. The outer-bounding tube is generated in order to take into account all possible realization of the disturbances w, which are assumed to be included in a set W(i.e., wW). Starting from a classical MPC problem, implemented with respect to the nominal unperturbed system dynamics, the TRMPC is subject to tighten constraints, which ensure robustness of the TRMPC to external disturbances w. For the control algorithm design, let us consider the following discrete time-invariant state-space system in which persistent disturbances wkare included:


where xkand ukrepresent the discrete-time state vector and the control signal at time k, respectively.

Let us assume that the system is required to satisfy hard constraints on both state and input:


where XRnand URmare compact and convex polytopes [citaz]. For the definition of the disturbance, wkis considered as a realization of a stochastic process, an independent and identically distributed (i.i.d.) zero-mean random variable, with a convex and bounded support WRncontaining the origin.

As already introduced before, the TRMPC approach is based on the concept of tube. The center of this tubecorresponds to the nominal undisturbed trajectory, which dynamics is defined as


where zkand vkare the discrete-time nominal state and input, respectively. Figure 3 provides a representation of the outer-bounding tube at the k-th time step centered on the nominal trajectory at each i-th step over a Nprediction horizon [33].

Figure 3.

Outer-bounding tube representation at the k-th time step over a prediction horizon of N.

Two features of this controller are (i) the TRMPC which allows to steer the uncertain trajectories to the nominal one via a classical MPC approach and (ii) the robustness which ensured tightening the constraints with respect to the initial ones in Eq. (14), as detailed in [12]. Then, the following time-varying feedback control law related to the i-th step ahead kis defined:


in which Kis defined such that AK=Ad+BdKis robustly stable and Kquadratically stabilizes the system (17) with respect to the parametric uncertainty q. Finally, the closed-loop dynamics can be rewritten as follows:


Moreover, to stabilize the system with respect to parametric uncertainty q, due to, for example, neglected nonlinearities, a linear matrix inequality (LMI) approach is applied.

In the next paragraph, the definition of the feedback gain matrix (summarized in Algorithm 1 is analyzed in detail. First, the terminal state constraint set XN(given any xkXN), a matrix PRn×n, P0, exists such that


QRn×n, Q0, and RRm×m, and R0are diagonal positive definite matrices. As proposed in [33], solving the following LMI system allows to obtain the feedback gain matrix K:


in which the following edge-uncertain system matrices are defined: Ad=Adq, Ad+=Adq+, Bd=Bdq, and Bd+=Bdq+. The proposed LMIs are based on the well-known edge theorem, which is an extension of Kharitonov theorem, as explained in [34, 35].

Algorithm 1Feedback Gain Evaluation

1: procedure

2: foreach i-th vertex AiqBiqdo

3: sysi=Q+XAiT+AiTXϒTBiTBiTϒ

4: end for

5: Solve X0sysi0

6: Get Xand ϒ

7: Get K=ϒX1

8: end procedure

Since bounded disturbance wikis included in the system dynamics, the deviation of the actual state xikwith respect to the nominal one zikistep ahead time kcan be defined as


As anticipated before, tightened constraint sets shall be considered for the nominal system, properly designed starting from an outer approximation of the minimal robust positively invariant (mRPI) set [36] for (20):


in compliance with the guidelines provided in [12]. The set is mRPI for (20) because onlyadditive disturbance has been considered affecting the system dynamics as in Eq. (13). It is important to highlight that the parametric uncertainty is included only for evaluating the feedback gain matrix Kthat quadratically stabilizes the closed-loop disturbed dynamics, but no uncertainty has been included in the control design.

Hence, if the time-invariant control law (16) is employed and the nominal system (15) satisfies the tightened constraint sets,


the initial constraints xikXand uikUare robustly satisfied at each time step k, only for restricted disturbances[12].

Since xik=zik+eik, where eikSK, it follows that Hxxikhxif


with Φ=maxeikHxeikeikSK. Thus,


represents a suitable constraint set for the nominal state zikin order to obtain an inner approximation Zof Ẑ, where Ẑ=XSK. To evaluate Φ, it is possible to compute an upper bound of this set solving a simple linear programming [33]. We should define Φ1β1ΦT, with β01, where


is the solution of a linear programming problem. Hence, it is possible to obtain an upper bound of Φproperly selecting βas close as desired to 1. Then, the constraint set Zcan be defined by


In a similar way, the constraint set on the control input Vcan be approximated as


starting from the initial control input constraint set Uand being V̂=UKSK. More details can be found in [12, 33].

Then, the finite horizon optimal quadratic cost can be defined for the nominal dynamics in terms of nominal state zikand nominal control input vikas


where vkrepresents the control sequence over a N-step prediction horizon. PRn×nis the solution of the discrete Algebraic Riccati Equation [37]. Thus, the nominal finite horizon optimal control problem can be stated as follows:


with ZNXNSK. The first control action v0kof the optimal sequence vksolution of Eq. (29a) (29b) represents the optimal control applied to the nominal system, while the correspondent control on the uncertain system is defined according to Eq. (16). The final TRMPC algorithm can be summarized as shown in Algorithm 2.

Algorithm 2TRMPC Algorithm

1: procedure

2: Offline: Evaluate the feedback gain matrix Kand the nominal constraint sets Z(Eq. (26) and Vfrom Eq. (27).

3: Online: Initialization: for k=0, set z0k=xk=x0.

4: At current time k, evaluate xk,zk.

5: fori=0:N1do

6: Solve Eq. (29) (30)

7: end for

8: Get v0and extract the first control action v0.

9: Evaluate ukaccording to (16).

10: Evaluate zk+1applying v0on (15) and xk+1applying ukon Eq. (13).

11: end procedure

Summarizing, the TRMPC control scheme consists in a classical MPC controller applied to the nominal unperturbed dynamics z subjected to the tightened constraints Zand V. Then, to the computed control v, it has been added a second control Kxzwhich steers the perturbed dynamics xto converge to the nominal one. The feedback matrix Kshould be designed properly in order to ensure that the perturbed dynamics satisfy the original constraints Xand U.

3.1.1 Comments on real-time implementability

For the implementation of the TRMPC controller on a real hardware, it is necessary to linearize the equation of motion in order to obtain a linear time-invariant system in the classical form:


In the case of attitude control of a spacecraft, the state and control vectors are assumed to be x=qe1qe2qe3ωe1ωe2ωe3TR6, where qe1,qe2, and qe3are the vectorial components of the quaternion error qe=qqdes1R3, where the symbol is referred to the quaternion multiplication, while ωiis the body angular velocity. Matrix A has been obtained by linearizing kinematics and Euler’s equations of motion, which results in




with k1=JyJzJx, k2=JzJxJy, and k3=JxJyJz. All the parameters are computed in an equilibrium point x0. The other matrices of the state-space formulation in Eq. (31) are


where Iand are, respectively, the identity and null matrices of proper dimensions. The unperturbed MPC optimization problem is


where W=WvWzare the system constraints and VRmNis the optimal control vector sequence. Finally, the other matrices are defined as


in which


where Ris the weighing matrix related to the control and Pis the terminal weighing matrix.

The online optimization problem is solved with the Quad-Wright solver, which is an improved version of the quadprogMatlab solver. The solver returns the optimal control sequence V according to the inputs H, F, L, and W. The first mcomponents of the control vector sequence are then translated into the control vto compute the final control uand to propagate the nominal unperturbed dynamics z. The feedback gain matrix Kis computed offline. Solving the LMI is possible to compute the matrix Kwhich stabilizes the uncertain system and the terminal weighing matrix Pwhich ensures satisfaction of the terminal constraints. This is a derivation of the edge theorem, as discussed in [38]. If no uncertainties are considered, the gain Kcan be computed using LQR design techniques.

3.2 Variable gain continuous twisting sliding mode controller

Sliding mode control (SMC) found its origin as discontinuous nonlinear controller for nonlinear variable structure systems (VSS). The basic principle of SMC is to steer the system state to lie on a sliding manifold: once the system state reaches the sliding manifold, the sliding mode condition holds by applying a discontinuous high-frequency control, despite the external disturbance affecting the system dynamics. One of the advantages of using SMC is that such control law is robust with respect to the so-called matched uncertainties, i.e., uncertainties which affect the control channel of the system. The basic assumption is that such uncertainties must be bounded. The classical first-order SMC is the following:


The gain ρis selected such that the uncertainty dis bounded by the value of ρ, i.e., d<ρ. σis the sliding variableand it is designed considering the system state. For an SMC as Eq. (34), the sliding variable is selected as σ=x2+Kx1when a two-state system is considered and ẋ1=x2is considered. The working principle of SMC is to steer to zero the variable σin finite time. A critical issue is the proper design of the sliding variable: for different and more advanced controllers, for example, the twisting SMC (TSMC), the sliding variable can be defined in a different way. In [20] a summary of different sliding mode controllers can be found.

Since the classical SMC stabilize a dynamic system by applying a high-frequency—theoretically infinite—discontinuous control, such type of controller cannot be used with actuators that must be controlled with a continuous signal, such as reaction wheels. To adapt SMC to continuous actuators, some smoothing techniques can be introduced in order to compute a continuous signal: for example, the “sign” function can be smoothed in the neighborhood of the origin by using the hyperbolic tangent or other similar functions. A more advanced technique is to use a higher-order SMC, as the case of the super-twisting SMC (STWSMC) or the continuous twisting SMC (CTSMC): using such techniques, a discontinuous control is applied as virtualcontrol, while the physicalcontrol will result in as continuous. In the present work, the CTSMC will be further investigated. Let us consider the system:


which represents a linearized attitude dynamics. qeand ωeare the quaternion error and the angular velocity error, respectively, uis the control torque, Jis the spacecraft inertia, and Δtis the external disturbance. The external disturbance is assumed to be Lipschitz, i.e., it is differentiable with bounded derivative: Δ̇tμ. According to the system (35), a continuous twisting SMC can be designed as


According to this control design, it results in σ=qeand σ̇=ωe. Control gains kican be designed as [21]


Such gains ensure robustness against Lipschitz disturbances Δtbounded by μ=1. Since in practical cases the Lipschitz disturbances are usually bounded by Δ̇tμ=1, control gains can be scaled as


The controller of Eq. (36) can be redesigned by substituting gains kiwith gains kpi. The adaptation mechanism of the continuous twisting SMC consists in varying the scaling gain Lsuch as


where ϵis a threshold value, introduced since it is not possible to consider the exact zerovalue of qeand ωe(in practical applications), and Tetis a timer which is reset while the value of qeand ωeis within ϵfor at least a defined time span. The value of lmust be chosen in order to reject the increase of Δ̇. In addition, a similar discharge strategy, i.e., considering l<0, can be introduced if the values of control gains are higher than required and an excessive chattering is induced.

3.2.1 Comments on real-time implementability

A brief discussion about finite-time controllers is provided. In general, SMC controllers, if properly designed, ensure the convergence σ=0if the controller frequency is infinite. In practical applications, this is obviously not feasible, and only a high but finite controller frequency can be realized. Considering the controller sample time ΔTcon, as stated in [21], with the current set of gains (37), it is possible to achieve an accuracy of qe19ΔTcon3and ωe19ΔTcon2. A consequence of using a finite-time frequency controller is that, even though the CTSMC control computes theoretically a continuous command, a residual chattering is always observed. As mentioned before, the use of smoothing techniques may mitigate, or even eliminate, residual chattering. It has to be highlighted that for very low controller frequency (<10Hz), gains computation (37) and (38) may fail and a more empirical tuning may be required, as well as the accuracy considerations may not be applicable anymore.


4. Simulation results

Both control algorithms, described in Section 3, have been applied in an Earth observation mission scenario. The considered spacecraft has a total mass of 500kg and principal tensor of inertia (i.e., “diagonal” inertia matrix) with Ixx=Iyy=Izz=100kgm2. The spacecraft has a cubic shape with a frontal area of 2m2. For the drag torque computation, a drag coefficient of CD=2.2is considered, and the center of pressure is supposed to be located in 00.05,0.01Tm with respect to the center of mass of the spacecraft. The reference orbit is an equatorial orbit of 600km of altitude. The desired quaternion and angular velocity with respect to the inertial reference frame are depicted in Figure 4: the mission scenario consists in a nadirpointing nominal attitude with an additional rollpointing of 10deg. after 1000s. The rollpointing phase lasts about 500s, and then the reference attitude returns to nadirpointing. The maneuver is propagated for half an orbital period.

Figure 4.

Desired inertial quaternion and angular velocity.

The pointing errors for the three proposed controllers (PID, CTSMC, and TRMPC controllers) are depicted in Figures 5, 6, 7. From these figures, the maximum angular error obtained with the CTSMC (Figure 7) is more than one order of magnitude lower than the maximum error obtained with the other two controllers. In a similar way, the angular error obtained during the pointing phase (zoomed figures) is close to 105deg. for the SMC controller. This is due to the fact that the CTSMC tries to regulate exactly the state variables to zero, while PID and TRMPC, in general, allow a small but finite pointing error, unless a proper integral action is introduced in the controllers: in the presented PID controller, the integral action is negligible with respect to the proportional and derivative actions.

Figure 5.

Attitude tracking in terms of Euler angles with PID controller. (a) Euler Angle error. (b) Zoom of Euler Angle error.

Figure 6.

Attitude tracking in terms of Euler angles with TRMPC controller. (a) Euler Angle error. (b) Zoom of Euler Angle error.

Figure 7.

Attitude tracking in terms of Euler angles with CTSMC controller. (a) Euler Angle error. (b) Zoom of Euler Angle error.

In Figure 8 the computed inputs are depicted, in terms of reaction wheel torque and momentum for each control law. For the TRMPC, the computed input (i.e., torque in body frame) has been derived as Tcmd=ArwsTMPC,rws, where Arwsis the torque allocation matrix and TMPC,rwsis the optimal control already allocated to each wheel and directly computed by the control system. Indeed, one advantage of using an MPC controller is that the reaction wheel configuration can be taken into account in the controller design, computing directly the required reaction wheel torque. In a different way, for PID and CTSMC, the output of the control system is the required torque in body axis, Tcmd, and then the required torque is allocated to each reaction wheels by the pseudo-inverse matrix Arws+=ArwsTArwsArwsT1, i.e., Trws=Arws+Tcmd. As highlighted in Figure 8, PID and TRMPC show a similar torque profile, while CTSMC presents higher peaks. As already explained in Section 3, the CTSMC control system regulates exactly the state variables to zero.

Figure 8.

Computed torque, reaction wheel torque, and momentum. (a) PID torque. (b) PID momentum.(c) TRMPC torque. (d) TRMPC momentum.(e) CTSMC torque. (f) CTSMC momentum.

In Figure 9, the chattering effect, observed in the sliding mode controller, is highlighted. Even if some chattering mitigation strategy is proposed [23], the chattering can be observed due to the low controller update frequency (10Hz).

Figure 9.

Chattering effects of CTSMC control system.

Eventually, the pointing stability performance index has been evaluated for all the three proposed control algorithms. Pointing stability is defined as the time-varying effects on science instrument pointing caused by the dynamic interactions between spacecraft structure and mechanisms, attitude control and determination errors, structural thermal distortion, and other environmental disturbances[39]. For the mathematical evaluation of the pointing stability, the guidelines expressed in [40] have been followed:


where Eis the expected value, Δtsis the stability time, and etis the instantaneous angular error. The pointing stability has been evaluated only during the roll pointing maneuver, since it is the most critical mission phase. The pointing stability has been evaluated over a time span of 10s. The pointing stability is defined as degrees over a time period, which represents the variation of the angular error over the defined time period. A summary of the pointing stability results is reported in Table 1. It can be observed that for each controller the pointing stability never exceed to 5.5102deg. over 10s. If a drawback should be evaluated, the lower is the pointing error, the lower is the value of pointing stability, which implies a higher stability. Indeed, the CTSMC shows the higher pointing stability performance, since it causes the lower pointing error. In addition, the oscillating pointing error induced by the chattering torque command is mostly canceled, considering the relatively long stability time of 10s.

ControllerRoll [deg]Pitch [deg]Yaw [deg]

Table 1.

Pointing stability results: 3σvalues.


5. Conclusions

In the proposed research, small spacecraft attitude tracking with two advanced robust control laws has been developed: (i) a tube-based robust model predictive control and (ii) a continuous twisting sliding mode controller. A detailed mathematical model, with an emphasis on the external disturbances and the actuation systems, is included. Quaternion-based kinematics is proposed, even if Euler angle kinematics is also described, as more intuitive. Mathematics and some implementation details are also described, including the real-time implementability of both controllers. The performance of both controllers are compared with a PID controller. The advantages of using SMC have been presented, highlighting the lower pointing error over the whole considered mission. Moreover, chattering effects of using SMC have been observed, even though they are strongly reduced with respect to classical SMC. It has been also observed that the use of an optimal and robust control, TRMPC, causes an increment in the pointing performance as well, including the advantage of computing directly the optimal control torque for a complex reaction wheel configuration, instead of allocating the reaction wheel torque with the classical pseudo-inverse allocation.


Conflict of interest

The authors declare no conflict of interest.


  1. 1. Wen JY, Kreutz-Delgado K. The attitude control problem. IEEE Transactions on Automatic Control. 1991;36(10):1148-1162
  2. 2. Chaturverdi NA, Sanyal AK, McClamroch NH. Rigid-body attitude control. IEEE Control Systems Magazine. 2011;31(3):30-51
  3. 3. Bai Y, Biggs JD, Bernelli Zazzera F, Cui N. Adaptive attitude tracking with active uncertainty rejection. Journal of Guidance, Control, and Dynamics. 2018;41(2):550-558
  4. 4. Thakur D, Srikant S, Akella MR. Adaptive attitude-tracking control of spacecraft with uncertain time-varying inertia parameters. Journal of Guidance, Control, and Dynamics. 2015;38(1):41-52
  5. 5. Sands T. Nonlinear adaptive mathematical system identification. Computation. 2017;5(4):1-12
  6. 6. Alvi BA et al. Robust controller design for satellite attitude determination, stabilization and control using LQG/LTR. Wireless Personal Communications. 2015;85:329344
  7. 7. Safa A, Baradarannia M, Kharrati H, Khanmohammadi S. Robust attitude tracking control for a rigid spacecraft under input delays and actuator errors. International Journal of Control. 2019;92(5):1183-1195
  8. 8. Yang C-D, Sun Y-P. MixedH2/Hstate-feedback design for microsatellite attitude control. Control Engineering Practice. 2002;10:951970
  9. 9. Dasmedir J. Quaternion-based robust satellite attitude tracking control. Balkan Journal of Electrical and Computer Engineering. 2018:53-61
  10. 10. Bai Y, Biggs JD, Wang X, Cui N. Attitude tracking with an adaptive sliding mode response to reaction wheel failure. European Journal of Control. 2018;42:67-76
  11. 11. Bemporad A, Morari M. Robust model predictive control: A survey. In: Robustness in Identification and Control. 1999. pp. 207-226
  12. 12. Mayne DQ, Rawlings JB. Model Predictive Control: Theory and Design. Madison, WI: Nob Hill Publishing; 2009
  13. 13. Utkin VI. Variable structure systems with sliding mode. IEEE Transactions on Automatic Control. 1977;22(2):212-222
  14. 14. Bartolini G, Ferrara A, Usai E. Chattering avoidance by second-order sliding mode control. IEEE Transactions on Automatic Control. 1998;43(2):241-246
  15. 15. Luo Y, Zhang J, Tang G. Survey of orbital dynamics and control of space rendezvous. Chinese Journal of Aeronautics. 2014;27(1):1-11
  16. 16. Kouvaritakis B, Cannon M. Model Predictive Control: Classical, Robust and Stochastic, Advanced Textbooks in Control and Signal Processing. London: Springer; 2015
  17. 17. Utkin VI. Sliding Modes in Optimization and Control Problems. New York: Springer; 1992
  18. 18. Levant A. Sliding order and sliding accuracy in sliding mode control. International Journal of Control. 1993;58(6):1247-1263
  19. 19. Utkin VI, Guldner J, Shi J. Sliding Mode Control in Electromechanical Systems. PA, Philadelphia; 1999
  20. 20. Shtessel Y et al. Sliding Mode Control and Observation. New York: Springer New York; 2014
  21. 21. Torres-González V et al. Design of continuous twisting algorithm. Automatica. 2017;80:119-126
  22. 22. Behal A, Dixon W, Dawson DM, Xian B. Lyapunov-Based Control of Robotic Systems. Boca Raton, Florida: CRC Press. p. 2010
  23. 23. Leśniewski P, Bartoszewicz A. Hyperbolic tangent based switching reaching law for discrete time sliding mode control of dynamical systems. In: IEEE International Workshop on Recent Advances in Sliding Modes (RASM). Institute of Electrical and Electronics Engineers, Inc; 2015. pp. 1-6
  24. 24. Capello E, Sartori D, Guglieri G, Quagliotti F. Robust assessment for the design of multi-loop proportional integrative derivative autopilot. IET Control Theory and Applications. 2012;6(11):1-10
  25. 25. Markley FL, Crassidis JL. Fundamentals of Spacecraft Attitude Determination and Control. Vol. 33. New York: Springer; 2014
  26. 26. Zagrski P. Modeling disturbances influencing an Earth-orbiting satellite. Pomiary Automatyka Robotyka. 2012;16:98-103
  27. 27. Cook GE. Satellite drag coefficients. Planetary and Space Science. 1965;13(10):929-946
  28. 28. Koppenwallner G. Satellite aerodynamics and determination of thermospheric density and wind. In: AIP Conference Proceedings. Vol. 1333. No. 1. AIP; 2011
  29. 29. Hughes PC. Spacecraft Attitude Dynamics. Chelmsford, Massachusetts, Stati Uniti: Courier Corporation; 2012
  30. 30. Sidi MJ. Spacecraft Dynamics and Control: A Practical Engineering Approach. Vol. 7. Cambridge, UK: Cambridge University Press; 1997
  31. 31. Hur-Diaz S, Wirzburger J, Smith D. Three axis control of the hubble space telescope using two reaction wheels and magnetic torquer bars for science observations. 2008:08-279
  32. 32. Gurrisi C, Seidel R, Dickerson S, Didziulis S, Frantz P, Ferguson K. Space station control moment gyroscope lessons learned. 2010. NASA CP-216272
  33. 33. Mammarella M, Capello E, Park H, Guglieri G, Romano M. Tube-based robust model predictive control for spacecraft proximity operations in the presence of persistent disturbance. Aerospace Science and Technology. 2018;77:585-594
  34. 34. Bartlett AC, Hollot CV, Huang L. Root locations of an entire polytope of polynomials: It suffices to check the edges. Mathematics of Control, Signals, and Systems. 1988;1:61-71
  35. 35. Barmish BR. New Tools for Robustness of Linear Systems. New York: Macmillan Publishing Company; 1994
  36. 36. Blanchini F, Miani S, editors. Set-Theoretic Methods in Control. Switzerland: Springer International Publishing; 2008
  37. 37. Stoorvogel AA, Ali S. The discrete algebraic Riccati equation and linear matrix inequality. Linear Algebra and its Applications. 1998;276(1–3):317-365
  38. 38. Mammarella M, Capello E. A robust MPC-based autopilot for mini UAVs. In: 2018 International Conference on Unmanned Aircraft Systems (ICUAS); Dallas, TX; 2018. pp. 1227-1235
  39. 39. Pilinski EB, Lee AY. Pointing-stability performance of the Cassini spacecraft. Journal of Spacecraft and Rockets. 2009;46(5):1007-1015
  40. 40. ESSB-HB-E-003 Working Group. ESA Pointing Error Engineering Handbook. Ref. ESSB-HB-E-003, Issue 1, 19 July 2011


  • For example, in the rotation sequence 3-2-1, known as Yaw-Pitch-Roll sequence, the singularity occurs for a pitch angle of 90 deg.
  • Mainly convergent-divergent nozzles are used: the flow accelerates up to supersonic velocity in the convergent part, and then it continues to expand in the divergent segment.

Written By

Elisa Capello and Matteo Dentis

Submitted: February 13th, 2019 Reviewed: October 4th, 2019 Published: January 15th, 2020