# Adaptive Neural Network-Based Satellite Attitude Control by Using the Dynamic Inversion Technique and a VSCMG Pyramidal Cluster

Authors: Mihai Lungu; Romulus Lungu
Journal: Complexity
 (2019)

---

## Abstract

The paper presents an adaptive system for the control of small satellites’ attitude by using a pyramidal cluster of four variable-speed control moment gyros as actuators. Starting from the dynamic model of the pyramidal cluster, an adaptive control law is designed by means of the dynamic inversion method and a feed-forward neural network-based nonlinear subsystem; the control law has a proportional-integrator component (for the control of the reduced-order linear subsystem) and an adaptive component (for the compensation of the approximation error associated with the function describing the dynamics of the nonlinear system). The software implementation and validation of the new control architecture are achieved by using the Matlab/Simulink environment.


---

## Body

## 1. Introduction

Small satellites (mass < 500 kg) are becoming popular due to their low cost of development and shorter realization time; as a result, there has been a lot of effort to push satellite technology to smaller sizes/mass which would enable the small satellites to accomplish different missions as larger satellites; therefore, the modern control architectures’ design for small satellites is a continuing challenge. The two major components of a satellite’s attitude control system (ACS) are theactuator and thecontrol algorithm.Various types of actuators include the reaction wheels, magnetic rods, torque coils, thrusters, and Control Moment Gyroscopes (CMGs). A CMG acts as a torque amplifier, being suitable for three-axis slew maneuvering by providing the necessary torques via gambling a spinning flywheel [1]. Their main components are theflywheel (the spinning rotor) and thegimbal (the pivot about which the flywheel assembly is rotated); the produced torque’s magnitude is directly proportional to the inertia of the flywheel, the angular speed of the flywheel, and the rate of gimbal’s rotation. The three main advantages of CMGs are the large torque amplification, the momentum storage capacity, and the light weight; these advantages make the control moment gyros better for agility maneuvers than the other widely used actuators, the reaction and the momentum wheels. Depending on the gimbal axes, a CMG can be distinguished to a Single Gimbal CMG (SGCMG), Variable-Speed CMG (VSCMG), and Double Gimbal CMG (DGCMG). SGCMG is a CMG with a constant speed momentum wheel, gimbaled in one axis only; from the torque point of view, the most powerful CMGs are the VSCMGs since these can generate significant control couples (up to 3000 Nm); this kind of actuators can generate much greater torque with less energy when compared to ordinary reaction wheels, normally used on small satellites.A VSCMG is a hybrid actuator combining a reaction wheel with a SGCMG; in contrast to a classical CMG, the wheel speed of a VSCMG is allowed to vary continuously. A reaction wheel or a conventional SGCMG can only generate a torque along a single direction, while a VSCMG can generate a torque that lies anywhere on a plane perpendicular to the gimbal axis [2, 3]. Thus, the second advantage of VSCMGs with respect to classical CMGs is an additional degree of freedom due to the available rotor torque; this is a useful for continuous CMG singularity avoidance and VSCMG cluster reorientation. DGCMGs offer two control axes compared to SGCMGs but they are mechanically more complex and expensive and have not the same capability in one axis because the total torque output on one axis is dependent on two gimbal axes for the DGCMG while for the SGCMG it is only dependent on one [2]. Thirdly, research has shown that the practical benefits of VSCMGs are readily available using conventional CMGs with alterations to CMG cluster steering and CMG rotor motor control laws. Another advantage of the VSCMGs is their possibility of storing the energy in the same time with the control of the satellite’s attitude. Moreover, the extra degree of freedom of a VSCMG can be used for additional purposes, for instance, for combined attitude and power tracking control and/or singularity avoidance.A minimum of three VSCMGs is needed to practically demonstrate the 3-axis control for a small satellite (S), but, in many cases, a performing ACS utilizes four of these actuators (positioned in the form of a pyramidal cluster [2, 3]) to avoid performance inefficiencies known as internal singularities (no torque can be produced for certain sets of gimbal angles) [1]; if a pyramidal cluster of four CMGs is not used, to solve the problem of internal singularities, some avoidance techniques (null motion, singular value decomposition, differential geometry, topology, etc.) have been developed [2, 4, 5].In most works, only one pyramidal configuration [6] is used, each pyramid face being inclined at an angle of β=54.73 deg from the horizontal; a first innovative element of this paper is related to the fact that the pyramidal cluster presented in the next section has been never used to small satellites’ attitude control. For the pyramidal cluster used here, the following will be achieved: (1) the determination of the rotations for the CMGs’ gyroscopic frames, directions of the kinetic moments, angular rates, and gyroscopic torques (vector diagram); (2) the determination of the projection for CMGs’ gyroscopic torques on the axes of the satellite tied frame, as well as the obtaining of the expressions for the equivalent kinetic moment and resultant gyroscopic torque of the cluster; (3) the determination of the expression of cluster’s cosine matrix for the angles made by the CMGs’ spin axes, transversal axes, and gyroscopic frames’ axes with the minisatellite tied frame’s axes.The tasks of an ACS are to make the spacecraft (satellite) achieve fine pointing, rapid maneuvering, accurate tracking, and other desired performances. The control problem of small satellites’ attitude in the presence of uncertainties has been investigated in many research papers [7–14]. One possible solution to the problem of attitude control with limited communication is to utilize signal quantization with recently proposed quantizer [7]. Using this idea, a new control architecture for spacecraft attitude stabilization with control torque was quantized by a logarithmic quantizer, and a guideline to choose the quantizer parameters has been proposed in [15]. In [8], an output feedback structured model reference adaptive controller is developed for spacecraft rendezvous and docking problems, but no frictional effects were assumed to be present in the actuator model. The aim of the paper [9] was the design of an attitude tracking controller for CMG-actuated satellites, which is shown to achieve accurate attitude tracking in the presence of unmodeled external disturbance torques, parametric uncertainty, and nonlinear CMG disturbances. To handle the disturbances and the nonlinearities that do not obey the linear-in-the-parameters assumption, fuzzy control or neural network-based control methods have been used [16, 17]; in [16], an approximation-based adaptive fuzzy control architecture is designed for the compensation of nonlinear strict-feedback systems’ unmodeled dynamics; here, the fuzzy logic technique is employed to approximate the unknown nonlinearities, while the compensation of the time-delays is achieved via a Lyapunov–Krasovskii functional. A steering law is designed in [6] to perform the multifunction of satellites’ attitude control and energy storage at the same time, the singularity avoidance being achieved by using the method of the inner product. Reference [18] proposes an effective method to determine the desired spacecraft attitude command through the proper choice of the reference frame for the small satellites, while the papers [11–13] are concentrated on the attitude tracking problem in the Earth staring work mode by means of iterative learning control [11], adaptive fault tolerant control [12], and robust adaptive control with unknown actuator nonlinearity [13]. A model-error control synthesis approach was used in [19] to cancel the effects of modeling errors and external disturbances on the system, but the designed control law requires a model-error term to cancel the effects of a time delay. An adaptive control law is designed in [20], but the controller assumes no dynamic uncertainty in the control torque. Thus, it can be concluded that the development of robust attitude controllers, using different pyramidal clusters of VSCMGs, is still an open issue. Bearing in mind this, and, taking into account the fact that, till now, there is no report on the design of an adaptive ACS using a pyramidal cluster of variable-speed control moment gyros, a feed-forward neural network (NN), a reference model, a linear dynamic compensator, and the dynamic inversion approach, another key goal and innovative element of this paper is the design of such an adaptive ACS, with good tracking performances and robust stability with respect to disturbances. The adaptive control law of the new ACS will consist of four components: (1) a signal provided by the reference model; (2) a signal provided by the linear dynamic compensator (useful for stabilization); (3) an adaptive command (modeled by a feed-forward neural network) which should compensate the inversion error (approximation error of the dynamic model’s nonlinear functions); (4) a signal depending on the NN’s weights, on the Frobenius norm of the neural network’s ideal matrix, and on the observer’s estimation error.Concluding, the two main goals of our work are as follows: (i) the use for satellites’ stabilization/control of a new pyramidal configuration of four VSCMGs, configuration that has been never used till now in any satellite’s ACS; (ii) the design of a neural network-based ACS using the dynamic inversion control technique. This work has the following innovative elements: (a) the usage for the first time of the pyramidal cluster from Figure1(b); (b) for the chosen VSCMG cluster, the matrix expressing the dependence between the variation velocity of the cluster’s resultant kinetic moment and the vector of the gyroscopic frames’ angular rates, as well as the satellite’s matrix of the inertia moments have been calculated; (c) the obtaining of the control law consisting of the vector of the gyroscopic frames’ angular rates and the vector of gyros’ angular accelerations, as well as the structure of the adaptive architecture which uses a pyramidal cluster of VSCMGs, a feed-forward neural network, a reference model, a dynamic compensator, and the dynamic inversion approach.Figure 1
Two pyramidal configurations with four variable-speed control moment gyros.
(a) (b)The rest of the paper is organized as follows: the dynamic model of a VSCMG-based pyramidal cluster is presented in Section2; in Section 3 the dynamics of the ensemble satellite-pyramidal cluster is deduced, having as input the command vector of the gyroscopic frames’ angular rates and as output, the attitude of S described by means of the quaternion vector and Euler angles. In the next section, the adaptive control law of the new ACS consisting of a proportional-integrator signal and an adaptive component for the compensation of the nonlinear functions’ inversion error is obtained. The software validation of the new ACS is achieved in Section 5 for the case of a small satellite; finally, some conclusions are shared in Section 6.


## 2. Model of the Pyramidal Cluster with Variable-Speed Control Moment Gyros

As one already stated above, only one type of pyramidal configuration [6, 21] (Figure 1(a)) has been used for the design of ACSs; for this configuration, the gyros’ rotation axes (the kinetic moments K→i,i=1,4¯) are initially oriented parallel to the sides of the pyramid’s base; the axes of the gyroscopic gimbals (the gimbals’ angular rates γ˙→i,i=1,4¯) are perpendicular to the planes of the pyramid’s side faces, while the VSCMGs’ transversal axes are perpendicular to the axes of gyros and gimbals.In this paper, the pyramidal cluster from Figure1(b) is used for the control of satellite’s attitude. OcXcYcZc is the satellite tied frame (trihedral) while the initial trihedrals tied to the gyroscopic frames are oixiyizi,i=1,4¯. The gyros’ rotation axes (the kinetic moments K→i,i=1,4¯) are initially oriented parallel to the sides of the pyramid base (three of them, i=1,3¯), while K→4⊥CC′K→4BYc; the axes of the gyroscopic frames (the angular rates associated with the frames’ rotations γ˙→i,i=1,4¯) are situated in the side faces of the pyramid, while the transversal axes of the frames o1x1,o2y2,o3y3,o4z4 are perpendicular to the side faces of the pyramid.In Figure2, the rotations of the gyroscopic frames, the angular variables γi and γ˙i, the kinetic moments Ki and their orientations with consequence of the gyroscopic frames’ rotation with the angle γi, and the generated gyroscopic couples Mgi are presented. The gyroscopic tied frames are oixi′yi′zi′,i=1,4¯; initially (in the absence of the gyroscopic frames’ rotations, i.e., γi=0), these frames were oixiyizi. i→i,j→i,k→i,i=1,4¯, represent the axes’ versors of the frames oixiyizi.Figure 2
The rotations of the gyroscopic frames, angular variables, kinetic moments, and gyroscopic couples.
(a) (b) (c) (d)For the beginning, let us consider that the pyramid base is fixedω→=0 and, by rotation of the gyroscopic frames with the angular rates γ˙→i,i=1,4¯, the gyros react by the gyroscopic torques (couples) [21, 22]: (1)M→gi=-K˙→i=K→i×γ˙→i,i=1,4¯,(2)K˙→i=∂K→i∂t+γ˙→i×K→i.Indeed, because ∂K→i/∂t=0, one gets K˙→i=γ˙→i×K→i=-M→gi (equation describing one of the most important gyroscopic phenomenon, i.e., the gyroscopic torque).According to Figure2 and (1), the following four gyroscopic moments are obtained: (3)M→g1=-K˙→1=K→1×γ˙→1=i→1j→1k→1K1sin⁡γ1-K1cos⁡γ1000γ˙1=-K1cos⁡γ1·γ˙1i→1-K1sin⁡γ1·γ˙1j→1=M→g1x1+M→g1y1=M→g1x′1;(4)M→g2=-K˙→2=K→2×γ˙→2=i→2j→2k→2K2cos⁡γ2K2sin⁡γ2000γ˙2=K2sin⁡γ2·γ˙2i→2-K2cos⁡γ2·γ˙2j→2=M→g2x2+M→g2y2=M→g2y′2;(5)M→g3=-K˙→3=K→3×γ˙→3=i→3j→3k→3K3cos⁡γ3K3sin⁡γ3000γ˙3=K3sin⁡γ3·γ˙3i→3-K3cos⁡γ3·γ˙3j→3=M→g3x3+M→g3y3=M→g3y′3;(6)M→g4=-K˙→4=K→4×γ˙→4=i→4j→4k→40K4cos⁡γ4K4sin⁡γ4γ˙400=K4sin⁡γ4·γ˙4j→4-K4cos⁡γ4·γ˙4k→4=M→g4y4+M→g4z4=M→g4z′4.For the first VSCMG, the component M→g1x1 acts upon the gyroscopic frame without rotating it and, thus, it acts on the base (satellite), while the component M→g1y1 acts upon the gyro-frame ensemble and, thus, on the base. For the second VSCMG, the component M→g2x2 acts on the gyroscopic frame, while M→g2y2 acts on the gyro-frame ensemble and, thus, both components act on the base (satellite). The same conclusion can be drawn regarding the components M→g3x3 and M→g3y3 which are the third VSCMG and for the components M→g4y4 and M→g4z4 which are the fourth VSCMG. According to Figure 1(b), the projections of the gyroscopic couples M→g1, M→g2, M→g3, and M→g4 on the axes of the satellite tied frame OcXcYcZc are (7)Mg1X=-Mg1x1sin⁡β=-K1cos⁡γ1sin⁡β·γ˙1,Mg1Y=-Mg1y1=-K1sin⁡γ1·γ˙1,Mg1Z=-Mg1x1cos⁡β=-K1cos⁡γ1cos⁡β·γ˙1;(8)Mg2X=Mg2x2cos⁡30°=K2sin⁡γ2cos⁡30°·γ˙2,Mg2Y=-Mg2y2sin⁡β=-K2cos⁡γ2sin⁡β·γ˙2,Mg2Z=-Mg2y2cos⁡β=-K2cos⁡γ2cos⁡β·γ˙2;(9)Mg3X=Mg3x3cos⁡30°=K3sin⁡γ3cos⁡30°·γ˙3,Mg3Y=-Mg3y3sin⁡βcos⁡30°=-K3cos⁡γ3sin⁡βcos⁡30°·γ˙3,Mg3Z=-Mg3y3cos⁡β=-K3cos⁡γ3cos⁡β·γ˙3;(10)Mg4X=0,Mg4Y=-Mg4y4=-K4sin⁡γ4·γ˙4,Mg4Z=Mg4z4=-K4cos⁡γ4·γ˙4.We denote withKc and Mg the resultant kinetic and gyroscopic moments, respectively; these are expressed as vectors having the components upon the three axes of the satellite tied frame, i.e., (11)Kc=KXcKYcKZcT,Mg=MgXcMgYcMgZcT,and verify the equation (12)K˙c=-Mg⇔K˙XcK˙YcK˙ZcT=-MgXcMgYcMgZcT,where (13)MgXc=Mg1Xc+Mg2Xc+Mg3Xc+Mg4Xc,MgYc=Mg1Yc+Mg2Yc+Mg3Yc+Mg4Yc,MgZc=Mg1Zc+Mg2Zc+Mg3Zc+Mg4Zc.Replacing (7)-(10) in (13), (12) becomes (14)K˙c=Qcγ˙c,with [21, 23](15)γ˙=γ˙1γ˙2γ˙3γ˙4Tand(16)Qc=JgΩ·sin⁡βcos⁡γ1-cos⁡30°sin⁡γ2-cos⁡30°cos⁡γ30sin⁡γ1sin⁡βcos⁡γ2cos⁡30°sin⁡βcos⁡γ3sin⁡γ4cos⁡βcos⁡γ1cos⁡βcos⁡γ2cos⁡βcos⁡γ3cos⁡γ4,with JgΩ being the module of each gyro’s kinetic moment Ki, Jg being the inertia moment of each gyro with respect to its own rotation axis, and Ω being the angular velocity of each of the four control moment gyros. Furthermore, taking into account the base’s rotation with the angular velocity ω→, the equation of the pyramidal cluster (containing 4 VSCMGs; Figure 1(b)) can be written as [21, 22] K˙→c+ω→×K→c=-M→g or, under an algebraic form, (17)K˙c+ω×Kc=-Mg,with Kc and Mg of forms (11) and [2]:(18)ω×=0-ω3ω2ω30-ω1-ω2ω10,where ω1, ω2, ω3 are the components of the satellite’s angular rate upon its axes (axes of the frame OcXcYcZc).By means of the above notations and equations, the following can be expressed: (1) matrixBs is the cosine rotation matrix of the angles formed by the spin axes (gyros’ proper rotations axes: o1y1′,-o2x2′,o3y3′,o4z4′); (2) matrix Bt is the cosine rotation matrix of the angles formed by the transversal axes (normal to the proper rotation axes of the gyros and to the axes of the gyroscopic frames: o1x1′,o2y2′,o3y3′,o4z4′); (3) matrix Bg is the cosine rotation matrix of the angles formed by the axes of the gyroscopic frames (o1x1,o2y2,o3x3,-o4y4) with the satellite tied frame OcXcYcZc; these matrices are (19)Bs=Bsγ=-o1y1′o2x2′o3x3′o4y4′sin⁡βsin⁡γ1-cos⁡γ1cos⁡βsin⁡γ1cos⁡30°cos⁡γ2cos⁡30°sin⁡βsin⁡γ2cos⁡βsin⁡γ2cos⁡30°cos⁡γ3-cos⁡30°sin⁡βsin⁡γ3cos⁡βsin⁡γ30-cos⁡γ4sin⁡γ4OXcOYcOZc,(20)Bs0=Bs0=0cos⁡30°cos⁡30°0-100-10000;(21)Bt=Btγ=o1x1′o2y2′o3y3′o4z4′sin⁡βcos⁡γ1sin⁡γ1cos⁡βcos⁡γ1-cos⁡30°sin⁡γ2cos⁡30°sin⁡βcos⁡γ2cos⁡βcos⁡γ2-cos⁡30°sin⁡γ3-cos⁡30°sin⁡βcos⁡γ3cos⁡βcos⁡γ30sin⁡γ4cos⁡γ4OXcOYcOZc,(22)Bt0=Bt0=sin⁡β0000cos⁡30°sin⁡β-cos⁡30°sin⁡β0cos⁡βcos⁡βcos⁡β1;(23)Bg=Bg0=o1z1o2z2o3z3o4z4-cos⁡β0sin⁡βcos⁡30°cos⁡β-cos⁡30°cos⁡βsin⁡βcos⁡30°cos⁡βcos⁡30°cos⁡βsin⁡β001OXcOYcOZc.For any vector having the formx=x1x2x3x4T, let us consider the diagonal matrix: xd=diagx1x2x3x4; by customizing x=cos⁡γ=cos⁡γ1cos⁡γ2cos⁡γ3cos⁡γ4T and x=sin⁡γ=sin⁡γ1sin⁡γ2sin⁡γ3sin⁡γ4T, from (19) and (23), one gets (24)Bs=Bs0cos⁡γd+Bt0sin⁡γd,Bt=-Bs0sin⁡γd+Bt0cos⁡γd;by time derivation of the matrices (24), we have B˙s=-Btγ˙d, B˙t=-Bsγ˙d.


## 3. Dynamics of the Satellite by Using Pyramidal Clusters withN VSCMGs

The general form of the control law isu=uc=γ˙Ω˙T, where γ˙ is the vector of the gyroscopic frames’ angular rates, while Ω˙ is the vector of gyros’ angular accelerations. To describe the dynamics of the satellite having a cluster consisting of N VSCMGs, the following vectors and matrices are defined: γ=γ1γ2⋯γNT, Ω=Ω1Ω2⋯ΩNT, Ig∗=diagIg1∗Ig2∗⋯IgN∗ is the diagonal matrix of the inertia moments associated with the gyroscopic frames, Ir∗=diagIr1∗Ir2∗⋯IrN∗ is the diagonal matrix of the inertia moments associated with the gyros’ rotors, Ic∗=Ig∗+Ir∗ is the diagonal matrix of the inertia moments associated with the ensembles formed by gyroscopic frames and gyros’ rotors; the sign “∗” is g, s, or t and it signifies the axes in relation to which the moment of inertia is expressed (g is the axis of the gyroscopic frame, s is the axis of gyro’s proper rotation, and t is the axis normal to the axes g and s); the 3×N matrix B∗ has on each column three elements representing the directional cosines of the angles formed by the axis ∗ of the VSCMG no. N and the axes of the satellite tied frame. It should be mentioned that matrices Bs and Bt depend on the vector γ; i.e., Bs=Bsγ, Bt=Btγ. With these, the satellite’s matrix of the inertia moments has the form [24]: J=Jb+BsIcsBsT+BgIcgBgT+BtIctBtT, where the constant matrix Jb is the matrix of the inertia moments associated with satellite except the clusters; Ics=Igs+Irs, Icg=Igg+Irg, Ict=Igt+Irt. The resultant kinetic moment vector of the cluster consisting of N VSCMGs Kc relative to the platform of the satellite is expressed with respect to kinetic moment vectors of each VSCMG relative to the proper rotation axes of the gyroscopic rotors IrsΩ and to the axes of the gyroscopic frames Icgγ˙ by means of the transformation matrices Bs and Bg; i.e., (25)Kc=BsIrsΩ+BgIcgγ˙=BgIcgBsIrsγ˙ΩT.Thus, the modification of the resultant kinetic moment vector of the cluster consisting of N VSCMGs is achieved by modifying the angular rates γ˙ and Ω˙.The absolute kinetic moment of the satellite (K) is the resultant of the kinetic moment of the satellite’s platform Jω and the relative kinetic moment Kc as follows: (26)K=Jω+Kc=Jω+BsIrsΩ+BgIcgγ˙,where ω=ω1ω2ω3T is the vector of the satellite’s absolute angular rates with respect to its axes.The dynamics of the satellite a described by the equations,(27)K˙+ω×K=u,u=uk+ug+up,where K has form (26), K˙=∂K/∂t, u is the satellite’s vector of external applied moments, uk is the vector of command moments, and up is the vector of disturbing moments. ug is the gravity-gradient torque since any nonsymmetrical object of finite dimensions in orbit is affected by a gravitational torque because of the variation in the Earth’s gravitational force over that object; this gravity-gradient torque is a result of the inverse square gravitational force field [25]; there would be no gravitational torque in a uniform gravitational field. Moreover, the general expressions for the gravity-gradient torque on a satellite of arbitrary shape have been calculated for both spherical and nonspherical Earth models [25].By time derivation of (26) and taking into consideration that J depends on a small extent on γ, i.e., J˙=J˙γγ˙≅0, we have K˙≅Jω˙+K˙c and (27) becomes (28)Jω˙+K˙c+ω×K=uk+ug+up;the component uk is expressed as a sum of the gyroscopic moments; i.e., uk=K˙c+ω×Kc; as a consequence, Jω˙=ug+up.Becauseγ˙dΩ=Ωdγ˙, by time derivation of (25), the next one is obtained: (29)K˙c=BsIrsΩ˙+B˙sIrsΩ+BgIcgγ¨≅BtIrsΩdγ˙+BsIrsΩ˙=Cγ˙+DΩ˙,where C=BtIrsΩd, D=BsIrs; one has taken into account that Irs≅ct., Icg≅const., BgIcgγ¨-neglijible, and Bg=Bg0≅const.With (29), by omitting ug and up, the equation associated with the satellite’s dynamics (28) gets the form (30)Jω˙+ω×K+Cγ˙+DΩ˙=0⇔Jω˙+ω×K=Mc,with Mc=uk being the command couple (moment) applied to the cluster Mc=-Cγ˙+DΩ˙=-CDγ˙Ω˙T or (31)Mc=-Quc,uc=γ˙Ω˙T,Q=CD;C and D are 3×N and 3×2N matrices, respectively.By means of the first equation in (31), the command vector of the cluster is obtained: (32)uc=-Q+Mc,with Q+ being the pseudo-inverse of the matrix Q, calculated with the formula [21–24] (33)Q+=QTQQT+λE-1,where E=1ε3ε2ε31ε1ε2ε11; εi=0.01sin⁡π/2t+Φi,i=1,3¯; λ=0.01exp⁡-10detQQT; Φ1=0, Φ2=π/2, Φ3=π.In the absence of the external moments and the moment applied to the satellite by the cluster, the dynamics of the satellite are described by the equation(34)K˙=-ω×K.The satellite’s attitude (the Euler attitude angles –θ, φ, and ψ) may be defined by means of two quaternion vectors (q=q1q2q3T and q^=q1q2q3q4T); the significance of the three attitude angles is as follows: θ is the rotation angle of S around the axis normal to the orbit’s plane; φ is the rotation angle of S around the axis normal to the plane formed by 2 axes, the one normal to the orbit’s plane and the one oriented towards the Earth’s centre; ψ is the rotation angle of S around the axis oriented towards the Earth’s centre. The differential equations of the quaternion vectors are [21, 26] (35)q˙=-12ω×q+12q4ω,q˙4=-12ωTq,(36)q=q1q2q3T=isin⁡ϕ2,where i=i1i2i3T is the vector containing the three-directional cosines of the angles formed by the Euler axis (the axis around which the satellite rotates) and the inertial frame; i12+i22+i32=1 and q12+q22+q32+q42=1.The correlation formulas between the components of the quaternion vectorq^ and the satellite’s attitude angles are [21, 27] (37)θ=atan⁡2q1q3+q2q4-q12-q22+q32+q42,φ=asin⁡2q1q4-q2q3,ψ=atan⁡2q1q2+q3q4-q12+q22-q32+q42.The dynamics of S and the model of the cluster are two subsystems of the automatic control system from Figure4; for the pyramidal cluster presented in Figure 1(b), the number of VSCMGs is N=4. To limit the angular rates vector γ˙ and the angular accelerations vector Ω˙, the components of the command (calculated) vector uc are limited by means of nonlinear elements with saturation zone. To avoid the fast variations of the gyroscopic frames’ angular rates, the command signals applied to the engines that act the gyroscopic frames using mechanical reducers are applied firstly to some lowpass filters (filtering networks) having the transfer matrix: (38)Hfs=ωf02s2+2ξf0ωf0s+ωf02I4,with ωf0 being the undamped natural frequency, ξf0 the damping ratio, and I4 the (4x4) identity matrix.


## 4. Adaptive Control of Satellite’s Attitude by Using the Dynamic Inversion Method and Neural Networks

The dynamics of ensemble satellite-pyramidal cluster (the system (30)) can be described by the general equation: (39)x˙=fx,uc,y=hx,with x being the state vector (particularized in this work as the quaternion vector q), uc=γ˙Ω˙T the input vector, f and h nonlinear unknown functions or linear functions obtained through linearization, and y=Jω=K-Kc the output vector. The dynamics of the system (39) satisfy the hypothesis from [27] (40)yr=hrx,uc,hr=Δdrhdtr=hr,∂hi∂uc=0,0≤i<r,∂hr∂uc≠0;i.e., all the derivatives y(i),0≤i<r, do not depend on uc, while y(r)=hr depend on uc; r≤n represents the relative degree of system (39) with respect to the output y.In this paper, to control the attitude of S, one designs a pseudo-control lawv^=M^c (with the significance of a moment applied to the pyramidal cluster) which express the best approximation of the function hr; M^c represents the best approximation of the couple (moment) Mc. The control architecture to be obtained includes a neural network NNc which models a function depending on the pseudo-control law v^ and the output y at different time moments such that yt tracks the bounded and desired signal ydt; this pseudo-control law should also be time derivable r times; therefore, (41)v^=h^ru^c,y,where h^ru^c,y represents the best approximation of the function hruc,x=hruc,xy=hruc,y. As a consequence, (42)uc=hr-1v,y=hr-1Mc,y,u^c=h^r-1v^,y=h^r-1M^c,y.If h^r=hr, according to (40) and (42), (43)yr=v=v^=Mc=M^c;otherwise, (44)yr=v=v^+ε=Mc=M^c+ε,where ε=εuc,y=hruc,y-h^ru^c,y is the approximation error (inversion error) of the function hr which acts as a disturbance.Now, using the Taylor series expansion of the functionuc=hr-1v,y, we have (45)uc=hr-1v,y=h^r-1v^,y+ddvhr-1v,yv=v^v-v^=h^r-1v^,y+ddv^h^r-1v^,y·ε=u^+ddv^h^r-1v^,y·ε.Thus, (46)uc=u^c+ddv^h^r-1v^,y·ε.By identification of (30), where Mc becomes M^c, with (44), we have the relative degree r=1 and (47)v^=M^c=h^r=25-Qu^c,ε=-ω×K+ug+up;the inverse function u^c=h^r-1M^c,y=-Q+M^c, replaced in (46), leads to the equation, (48)uc=h^r-1Mc,y=-Q+M^c+ε=-Q+Mc;the disturbances ug and up have been included in (47), but omitted in calculations.In Figure3 the simplified block diagram of the adaptive system for the control of the satellite’s attitude is presented, while, in Figure 4, the complete form of the control system (based on the usage of the dynamic inversion method, neural networks, and using a pyramidal cluster with VSCMGs) is given. In Figures 3 and 4, the signal va is an adaptive component (output of the neural network) for the compensation of the approximation error ε associated with the function hruc,y which describes the nonlinear subsystem of the dynamics associated with the ensemble satellite-pyramidal cluster (actuators) in series with the linear system having the relative degree r with respect to the output of the system. Also, vpi is the output vector of the linear dynamic compensator (for the stabilization of the linear dynamics) and vr the component provided by the reference model, while v- is a robustness signal.Figure 3
The simplified block diagram of the new ACS.Figure 4
Block diagram of the ACS using the dynamics inversion, neural networks, and a cluster of four VSCMGs.Becauser=1, the reference model of the adaptive control system has been chosen as first-order type with the transfer matrix Hms=ωn/s+ωnI3×3. In steady regime, the adaptive control system (Figure 4) should assure the convergence y→yd (yd is the desired value of the output vector y, being also provided by a reference model) and the convergence y˙→y˙d when va=ε and v=v^ (the approximation error is compensated by the adaptive component); also, the presence of the ideal compensator leads to the conclusion that vpi=0 in steady regime. Furthermore, if the robustness signal v- tends to zero, according to (47), (49)y˙=y˙d=vr=Jω˙d.Thus, the role of the component vr is to assure the convergence y˙→y˙d.Taking into account the approximation errorε, on the direct way of the loop having unitary negative feedback after y, h^r-1 compensates hr and, as a consequence, the transfer matrix of the direct way is Hds=kp+ki/s1/s, with kp and ki being 3×3 diagonal matrices. According to Figure 3, the convergence error y~ and its derivative y~˙ are expressed as (50)y~=yd-y;(51)vpi+y˙d+v--va+ε=y˙,y~˙=y˙d-y˙=-vpi+va-v-+ε=-ki∫y~-kpy~+va-v-+ε,where v- is a robustness signal.Denoting withe=e1e2T=∫y~y~T, the error state vector of the system with the input va-v-+ε, the state equations are (52)e˙1=e2,e˙2=-ki∫y~-kpy~+va-v-+ε,or (53)e˙=Ae+Bva-v-+ε,with the matrices A=0I3×3-kikp and B=0I3×3. The characteristic equation associated with the matrix A is λ2+kpλ+ki=0, with λ being the vector of eigenvalues; kp and ki are chosen, for example, as kp=diag2ξ1ω012ξ2ω022ξ3ω03, ki=diagω012ω022ω032, with ξi∈0,1,i=1,3¯.The state vectore is estimated by a linear state observer which provides the signal e^; the observer uses the error of the system (54)y~=e2=03×3I3×3︸Ce=Ce.The equation of the observer is e^˙=Ae^+Ly~-y~c, y~c=Ce^ or (55)e^˙=A-e^+Ly~,where A-=A-LC; the gain matrix L will be calculated such that the matrix A- is asymptotically stable.The feed-forward neural networks are the quintessential deep learning models, their main purpose being to approximate some function. There are no feedback connections in which the outputs of the model are fed back into itself. The leftmost layer in this network is called the input layer, and the neurons within the layer are calledinput neurons; the rightmost oroutput layercontains theoutput neurons. The middle layer is called ahidden layer, since the neurons in this layer are neither inputs nor outputs. A feed-forward network with a linear output layer and at least one hidden layer with any activation function (such as the sigmoid activation function) can approximate any measurable function from one finite-dimensional space to another with any desired nonzero amount of error, provided that the network is given enough hidden units.The training of the neural networkNNc is achieved by the state vector E=e^TPB with Pr×r being solution of the Lyapunov equation: A-TP+PA-=-Q-, Qr×r is a positive defined matrix. The adaptive control law has the form [28] (56)va=WTσVTηwhere W and V are the weights of a NNc neural network, their dimensions being n2+1×n3 and n1+1×n2, respectively; the elements of W are the weights of the links between the n2 neurons of the hidden layer and the n3 neurons of the output layer; V has as elements the weights of the links between the n1 neurons of the input layer and the n2 neurons of the hidden layer. NNc is chosen as feed-forward neural network having three layers: an input layer, a hidden layer, and an output one. The vector η is the input vector of the neural network, its equation being [29] (57)η=1v^dTy^dT,v^dT=v^tv^t-d⋯v^t-n1-r-2dT,y^dT=ytyt-d⋯yt-n1-r-3dT;with d being the sample time; σz=σVTη is a sigmoid function having the form: σz=1+e-az-1, a=a1⋯an1+1, with aj being the activation potentials whose values are different for each neuron.The matricesW and V are the solutions of the differential equations’ system [30] (58)W˙=-ΓW2σ-σ′VTηE+kW-W0,W0=W0,V˙=-Γv2ηEWTσ′+kV-V0,V0=V0,with σ′=dσ/dzz=z0 and kW, kV, k being positive constants.To calculate the robustness component of the control law, the following formula is used [31, 32]: (59)v-T=kzFf+F-e^EE+keE,with kz and ke being positive gains, F=W00V, Ff2=traceFTF≤F-; Ff is the Frobenius norm of the matrix F, while F- is the ideal matrix of the neural network. The role of this robustness component is to limit the values of the neural network’s matrices W and V. Equation (59) has been deduced by Calise et al. [29, 30, 33] for applications involving adaptive control laws based on dynamic inversion technique and neural networks.Regarding the stability of the inner loop (the system having the inputyd=Jωd and the output y=Jω), the adaptive control law va and the robustness component v- compensate the approximation error ε (signal which can include parametric uncertainties and/or unmodeled external disturbances); the form of the adaptive control law resulted from the condition that the system is global asymptotically stable; i.e., V˙a<0, where the chosen Lyapunov function has the form Va=eTPe+fW,V. The system having the input va-v-+ε and the state e is described by (53), with the function fW,V borrowed from [34] imposing that f˙W,V=0; thus, (56) and V˙a=-eTQe<0 have been obtained. By composing the function hr with h^r-1 and by introducing the approximation error ε, the inner loop system (having the input va-v-+ε and unitary negative feedback after y=Jω) become linear. Imposing negative roots for the afferent characteristic equation λ2+kpλ+ki=0, one obtains the coefficients of the linear dynamic compensator; therefore, the synthesis (design) of the adaptive system for the control of satellite’s attitude involves the calculation of the dynamic compensator’s coefficients in conditions of stability.


## 5. Numerical Simulation Results

In this section, the satellite’s attitude control system (Figure4) using a cluster consisting of four VSCMGs (Figure 1(b)) is software implemented and validated in Matlab/Simulink environment, for the case of a small satellite. For the control system from Figure 4, the following matrices, vectors, or coefficients are considered:(60)J=15.053-13.086.52-1211.2kg·m2,ω0=000rad/s,ω˙0=000rad/s2,qe0=qe10qe20qe30=q0=0.450.5-0.5,γ0=π2-π2-π2π2rad,γ˙0=0000rad/s,Ω0=133.33113.3310086.66rad/s,N=4, β=55grd, cos⁡β≅0.6, sin⁡β≅0.8; the matrices Bs and Bt have the forms from (19) and (21), Irs=diag0.70.70.70.7kgm2, Irg=Irt=diag0.40.40.40.4kgm2, Igs=Igg=Igt=diag0.10.10.10.1kgm2, Ics=Igs+Irs=diag0.80.80.80.8kgm2, Icg=Igg+Irg=Ict=diag0.50.50.50.5kgm2; with these, the matrix J is obtained. The vector K(0) is calculated with (26); i.e., K0=J0ω0+Bs0IrsΩ0+Bg0Icgγ˙0. To control the attitude of S, Q+ is calculated with (33). The vector of the angular rates γ˙ is applied to the gyroscope drive motors via the dynamic correction filter having the transfer matrix (38).The matriceskp and ki are obtained as kp=diag2ξ1ω012ξ2ω022ξ3ω03, ki=diagω012ω022ω032, where ξi=0.7 and ω0i=2.5rad/s,i=1,3¯; the matrix Q- from the Lyapunov equation is chosen as the identity matrix. For the neural network NNc, the following structure has been chosen: n1=9, n2=10, n3=3, d=0.1; the coefficients from (58) and (59) are ΓW=Γv=0.5, k=2, kz==0.01, ke=0.05, F-=10; the matrices W and V have the dimensions n2+1×n3=11×3 and n1+1×n2=10×10, respectively.The new obtained ACS has been software implemented and validated in Matlab/Simulink environment through numerical simulation for two kinds of VSCMG clusters, the traditional cluster presented in Figure1(a) and the pyramidal cluster from Figure 1(b) being interesting to see if the new configuration of VSCMG cluster provide better results for the same type of attitude control system; the Matlab/Simulink model associated with the architecture from Figure 4 is given in Figure 5. We choose a desired attitude of the satellite by means of qd=0.440.51-0.48, the desired (imposed) value of the quaternion q. By using (35) and (37) there are obtained the desired values of the satellite’s attitude angles θ=60.24deg,φ=80.35deg,ψ=-29.6deg, as well as the desired values of the angular rates’ components ω1=ω2=ω3=0deg/s. The matrix expressing the dependence between the variation velocity of the cluster’s resultant kinetic moment and the vector of the gyroscopic frames’ angular rates, as well as the satellite’s matrix of the inertia moments have been borrowed from [21]. In Figure 6(a) one presents the time histories of the satellite’s attitude angles θ,φ,ψ, the components of the angular rates ωω1,ω2,ω3, the components of the absolute kinetic moment of the satellite KK1,K2,K3, and the components of the signal v; in Figure 6(b) the time histories associated with the components of the quaternion q^q1,q2,q3,q4, the components of the vector γ, and the components of the gyros’ angular accelerations Ω˙ are given, while in Figure 6(c) the time histories associated with the control signals vpi, v-, va, v^a, and ε are provided; the time characteristics associated with the cluster from Figure 1(a) are presented with solid line, while the time characteristics associated with the cluster from Figure 1(b) are plotted using dashed line.Figure 5
Matlab/Simulink model associated with the architecture from Figure4.Figure 6
Time histories of the main variables associated with the satellite’s ACS for two kinds of VSCMG pyramidal clusters.
(a) (b)  (c)The attitude of the satellite (described by the Euler anglesθ, φ, and ψ) is controlled by means of the quaternion vectors (q=q1q2q3T and q^=q1q2q3q4T) and of the gyroscopic moment Mc (the output signal of the adaptive controller, Figures 3 and 4); Mc (the command couple applied to the pyramidal cluster) modifies the general control law uc and, as a consequence, the vector of the gyroscopic frames’ angular rates γ˙, as well as the vector of gyros’ angular accelerations Ω˙. According to (25) and (29), the modification of the angular rate vectors γ˙ and Ω˙ is equivalent with the modification of the resultant kinetic moment vector Kc of the cluster consisting of four VSCMGs; because the absolute kinetic moment of the satellite (K) depends on the relative kinetic moment Kc and the kinetic moment of the satellite’s platform Jω (26), taking into account the equation associated with the dynamics of the satellite (see (34)), one obtains a new value for the satellite’s angular rate vector ω. The modification of the vector ω leads to new expressions of the quaternion vectors (q and q^) (35); the modification of the quaternions is equivalent to the change of the satellite’s attitude (see (37)). According to Figure 6, the control of the satellite’s attitude is achieved by modifying the angular rate vector ω and the quaternion q^; the closed-loop adaptive control system is characterized by good convergence, global asymptotically stability, and ωt→0, this being equivalent to the cancel of the difference (deviation) between the desired vector of angular rates ωd (provided by the reference model) and its real value, i.e., with the convergence ω→ωd. On the other hand, as it resulted from Figure 4 and was confirmed by the graphics from Figure 6, the cancel of the error yd-y=Jωd-ω leads to the cancel of other vectors and variables: the vector of the gyroscopic frames’ angular rates γ˙, the vector of gyros’ angular accelerations Ω˙, the vectors v, vpi, v-, va, v^a, and ε. Bearing in mind that the ACS from Figure 4 has been software implemented and validated for both clusters given in Figure 1 we can also make a brief comparison between the two simulation cases; thus, from Figure 6 one remarks that the ACS using the cluster from Figure 1(b) is characterized by better convergence to the imposed values of different variables (see the time histories of the attitude angles and of the quaternion’s components) and by smaller overshoots.The design of ACSs for satellites is complicated because of external disturbances, parametric uncertainty, and nonlinearities, which can inevitably appear in the dynamics of satellites and actuators. To control the attitude of satellites in the presence of parametric uncertainties and unmodeled external disturbances, the adaptive control techniques are the best solutions. Since the external disturbances are assumed to be unknown, standard adaptive control techniques cannot be applied to compensate their effects. Therefore, another advantage of the NN-based control method used in this paper was the compensation of unknown or partially known nonlinearities from the dynamics of satellites and actuators, this bringing advantage over classical and fuzzy control techniques; one can conclude that the adaptive control method based on neural networks and the dynamic inversion technique has applicability to problems involving multivariate systems with cross-coupling between channels. The advantage of the method presented in this work is related to the introduction of an adaptive component in the control law for the compensation of the dynamic inversion errorε (associated with the function hr), error that can be interpreted as an external disturbance of the system.The obtained results can be compared with the ones from [35] where a Lyapunov function-based attitude controller has been designed, the overall stability of the attitude control being always guaranteed; however, the closed-loop control performance is not discussed in detail. In [21], a cascade PD attitude controller was developed for spacecraft eigenaxis rotation with consideration of angular velocity and control torque constraints, but the computation of the controller gains and the rigorous proof of the closed-loop system’s stability are very difficult tasks. Other major difficulties of the ACSs using CMGs are related to the inherent geometric singularities where there is no available torque due to the coplanar state of the output torque of each CMG unit; it is not the case of our paper since four VSCMGs have been used in a pyramidal configuration. In [22] one presents an architecture for minisatellites’ attitude control using a cluster consisting of four control moment gyros, in pyramidal configuration (the one given in Figure 1(a)), and feedback from the quaternion and angular velocity vectors; comparing the dynamic characteristics from Figure 6 and the ones obtained in [22] but without NNs and, thus, without adaptive components in the control laws, one remarks that the adaptive components of the control laws lead to smaller overshoot and transient regime periods. Thus, the adaptive control laws bring advantages in terms of the dynamic regimes’ quality compared to traditional ones. The adaptive control laws provide great flexibility in real-time reconfiguring of the control architectures under uncertainty in modeling of the aerodynamic phenomena or in the event of faults. Another advantage of the architecture designed in the present paper is related to the usage of dynamic inversion; it relies on the philosophy of feedback linearization; the plant nonlinearities are canceled and the closed-loop plant behaves like a stable linear system. The method is characterized by simplicity in the control structure, ease of implementation, global exponential stability of the tracking error, etc.The feed-forward neural networkNNc used in this paper was designed to adapt online, without the requirement of an offline training phase. The main advantage of the online neural network’s use in the control law is its adaptation as opposed to offline training. The complexity of the feed-forward neural network, as described in terms of the number of hidden-layer neurons, was selected based on the desire to achieve the best possible performance in the control task; the NNc’ s structure was not optimized to minimize its complexity in the proposed attitude control method; this issue will be formally addressed in future research.


## 6. Conclusions

The purpose of this study was to design a new adaptive architecture for satellites’ attitude control using a cluster consisting of four variable-speed control moment gyros, the dynamic inversion technique, and a feed-forward neural network. Firstly, for the chosen pyramidal cluster, the matrix expressing the dependence between the variation velocity of the cluster’s resultant kinetic moment and the vector of the gyroscopic frames’ angular rates, as well as the satellite’s matrix of the inertia moments has been calculated. Using these, there has been obtained the control law consisting of the vector of the gyroscopic frames’ angular rates and the vector of gyros’ angular accelerations under two forms ((32) and (48)) where the signal Mc=v (the vector of command moments) is the pseudo-control of the adaptive system for the control satellite’s attitude (Figures 3 and 4) using the dynamic inversion technique, a proportional-integrator signal provided by a linear dynamic compensator, and an adaptive component modeled by a feed-forward neural network in order to compensate the approximation error of the nonlinear function hr; the used reference model is a first-order one, since the relative degree of the ACS from Figure 4 is one. The ACS from Figure 4, using a cluster consisting of four VSCMGs (Figure 1(b)), has been software implemented and validated in Matlab/Simulink environment, for the case of a small satellite; the closed-loop adaptive control system is characterized by good convergence and global asymptotically stability, this being equivalent with the cancel of the deviation between the desired vector of angular rates, provided by the reference model and its real value. Also, a brief comparison has been made between the ACS using the cluster from Figure 1(b) and the same adaptive architecture involving the pyramidal cluster (Figure 1(a)) used till now in all works dealing with the control of the satellite’s attitude by means of a pyramidal cluster as actuators’ system.



---

*Source: 1645042-2019-01-06.xml*