A Gimballed Control Moment Gyroscope Cluster Design for Spacecraft Attitude Control

: This paper addresses the problem of singularity avoidance in a cluster of four Single-Gimbal Control Moment Gyroscopes (SGCMGs) in a pyramid conﬁguration when used for the attitude control of a satellite by introducing a new gimballed control moment gyroscope (GCMG) cluster scheme. Four SGCMGs were used in a pyramid conﬁguration, along with an additional small and simple stepper motor that was used to gimbal the full cluster around its vertical ( z ) axis. Contrary to the use of four variable-speed control moment gyroscopes (VSCMGs), where eight degrees of freedom are available for singularity avoidance, the proposed GCMG design uses only ﬁve degrees of freedom (DoFs), and a modiﬁed steering law was designed for the new setup. The proposed design offers the advantages of SGCMGs, such as a low weight, size, and reduced complexity, with the additional beneﬁt of overcoming the internal elliptic singularities, which create a minor attitude error. A comparison with the four-VSCMG cluster was conducted through numerical simulations, and the results indicated that the GCMG design was considerably more efﬁcient in terms of power while achieving a better gimbal conﬁguration at the end of the simulation, which is essential when it is desired for different manoeuvres to be consecutively executed. Additionally, for a nano-satellite of a few kilograms, the results prove that it is feasible to manufacture the GCMG concept by using affordable and lightweight commercial off-the-shelf (COTS) stepper motors.


Introduction
Single-gimbal control moment gyroscopes (SGCMGs) have become popular actuators for satellites that have an agility requirement [1,2]. They are widely used in spacecraft control for manoeuvering and have been successfully employed for a wide range of space missions [3][4][5]. Agile satellites are highly manoeuvrable, and they enable more data to be gathered in a single pass compared to those employed with reaction/momentum wheel actuators. However, SGCMGs come with the inherent problem of singularities. Singularities occur when the system is unable to generate a torque output along a specific direction [6]. There are two types of singularities with respect to the ability to escape from the singular state through null motion [2]. Elliptic singularities cannot be escaped through null motion, whilst there is a null motion path for escaping hyperbolic singularities. However, in cases where the angular speed of the flywheel is equal for all SGCMGs in the cluster, it is not possible to re-orient a symmetric gimbal set to a non-symmetric set through null-space motion in order to get a singularity-free path. Such an action would result in a momentum change, and attitude error would be added into the system.
Several studies have focused on finding a measure of distance from singularities, and different indices have been proposed in the literature [7], with the most commonly used being the manipulability index [8]. Multiple SGCMG singularity avoidance/escape logics and methods have been proposed to date [5]. The singularity-robust inverse is the most common, but other methods, including null motion and path planning, have also been proposed [9][10][11]. In general, the method of planning the path of a manoeuvre also includes the optimisation of the initial configuration of the gimbals before the execution of the desired manoeuvre in order to enhance the performance of the system and provide a singularity-free trajectory [12][13][14]. A different path-planning technique that blends the pseudo-spectral and direct-shooting methods upon gimbal saturation and singularity constraints was presented in [15]. Energy-consumption-based path-planning techniques for double-gimbal CMGs have also been studied [16]. A global singularity-avoidance steering law was presented in [17], in which the time integral of the quadratic sum of the gimbal rates was minimised. A trajectory-planning approach was described in [18] to reduce the possibility of CMG saturation while the system followed a reference trajectory. Another novel deterministic allocation algorithm for computing the angular rates of the gimbal was also proposed in [19] instead of the well-known pseudo-inverse technique in order to keep the keep a four-CMG cluster in a roof configuration away from singularities. An optimisation technique for reconfiguring the gimbals back to their initial positions after completing the desired manoeuvre was also addressed.
The utilisation of more than one type of control moment exchange devices has also been studied. The combination of a reaction wheel with CMGs presented an enhanced performance compared to reaction wheel clusters in terms of agility, thus providing an affordable alternative to the conventional four-CMG cluster [20]. A control strategy that exploited both thrusters and reaction wheels was presented in [21]. Thrusters were used in an open-loop scheme to drive the spacecraft to a reference path, while reaction wheels were used for a closed-loop variable-structure control law to eliminate tracking errors due to thruster biases and initial condition errors. Another simultaneous actuation of thrusters and reaction wheels through a varying time-sharing logic was studied, and it was shown that it could be efficiently adopted for time-optimal manoeuvres [22]. Additionally, three tracking control laws that made use of momentum wheels and thrusters were explored in [23], while the implementation of an SGCMG along three orthogonal momentum wheels was tested on the Distributed Spacecraft Attitude Control System Simulator and showed promising results [24].
While a CMG cluster can easily encounter singularities, a variable-speed CMG (VSCMG) cluster deals with this problem efficiently [25]. It uses four extra degrees of freedom (DoF) compared to the SGCMG cluster by changing the angular velocity of each flywheel independently. This way, a VSCMG cluster is capable of behaving as a reaction wheel cluster near a singularity and as a conventional CMG cluster away from it [26]. Power management capabilities have also been studied for VSCMGs [27][28][29][30], whilst a novel approach of combining a double-gimbal CMG and a VSCMG was presented in [31,32]. Similarly to VSCMGs, the proposed model described in this paper makes use of more than four DoFs. The extra DoF is implemented by adding a simple, miniature, and inexpensive low-power stepper motor in order to gimbal the full SGCMG cluster. Advances in smallmotor mechatronics, avionics, and pin-pullers have enabled the miniaturisation of motors by a significant amount, thus creating space for small and compact VSCMG clusters [25,33]. In addition, low-power COTS stepper motors have been proven to significantly reduce CMG power compared to RW systems [34,35]. This paper analyses the ability to use a small stepper motor to gimbal a full SGCMG cluster, making this a hybrid approach by combining the elements of SGCMGs and VSCMGs without the additional complexity of a full VSCMG system. Moreover, the design explored here does not utilise actuators with low torque capabilities, such as reaction and momentum wheels, thus preserving the agility characteristics of a simple four-CMG cluster. The details of the proposed GCMG, along with the advantages and the shortcomings of the proposed method, are presented in this paper.

VSCMG Equations of Motion
The equation of motion of a rigid spacecraft deployed with four VSCMGs is described by: where matrices A s , A t , A g ∈ 3×4 contain the components of the unit direction vector of each VSCMG frame of the cluster as: and J is the spacecraft's inertia matrix. The spin, gimbal and transverse axes are denoted bŷ g s N ,ĝ g N ,ĝ t N ∈ 3×1 , respectively, for the Nth VSCMG. ω ∈ 3×1 represents the angular velocity of the spacecraft expressed and derived in terms of control axes that are fixed relative to the body of the spacecraft. In this paper, the notation( ·) indicates the time derivative of (·). The torques t s , t t , t g ∈ 4×1 can be calculated through and where the inertia about the spin, gimbal and transverse axis is given by J s , J g and J t . For simplicity, these inertias are considered to be the same for all VSCMGs. Let δ = [δ 1 , δ 2 , δ 3 , δ 4 ] T ∈ 4×1 be the gimbal angles vector for a spacecraft employed with 4 CMGs. The vectorsδ,δ ∈ N×1 andΩ ∈ 4×1 contain the gimbal rate, gimbal acceleration and flywheel angular velocity, respectively. The stability condition as given in [36,37] is described by: where To calculate the control torque T c ∈ 3×1 , the satellite's kinematics equation of motion is expressed in quaternion form:q where denotes the quaternion multiplication and q = [q 0 , q 1 , q 2 , q 3 ] T ∈ 4×1 is the attitude quaternion. ω q is the angular velocity vector of the satellite, ω, given in a quaternion form as ω q = [0, ω T ] T ∈ 4×1 . For the implementation of the attitude control, the con-trol torque T c applied on the satellite's body is a function of the vector part of the error quaternion q err and ω as described by the following equation: where K p and K w are fixed gains. The error quaternion between the current attitude quaternion and a desired quaternion q des as: where q s err and q v err = [q roll err , q pitch err , q yaw err ] T are the scalar and the vector part, respectively, and q * des expresses the conjugate quaternion of q des . The normalization of the quaternions is required before evaluating the q err . The "3-2-1" sequence is used to convert the quaternion error to the corresponding Euler angles error.
Assuming that the inertia of each VSCMG about the spin axis is much larger compared to the inertia in gimbal and transverse axis, the stability condition is where R ∈ 3×8 andṗ ∈ 8×1 Thus, the steering law in compact form is given by: The matrix R is the Jacobian matrix of the system and except for the gimbal angles, the Jacobian matrix depends on geometric characteristics of the CMGs like the skew angle. Since the Jacobian matrix is not rectangular and the inverse of the matrix cannot be calculated, several definitions have been proposed for the inverse of the Jacobian matrix R # . Using a weighting matrix and ζ, W RW 0 are constant gains and W RW , W CMG ∈ 1×4 , the matrix R # is m is a measure of the linear independence of the columns of the matrix C 1 , usually referred as manipulability index: This way, the VSCMG cluster is capable of performing as the conventional SGCMG cluster away from the singularity but as the manipulability index value decreases, the variable speed capability is exploited. The null space motion can be added upon the given steering law, assuming that δ des and Ω des are the vectors that contain the desired values for the gimbal angles and the flywheels' angular velocity. The steering law is described below: where I 8×8 is the identity matrix and ρ a constant gain. The diagonal matrix G ∈ 8×8 is given by where 0 4×4 is the 4 by 4 zero matrix and the sets Ω err , δ err ∈ 4×1 represent the error with respect to the desired values as The G RW and G CMG values are set to 1 if it is desired the system to follow the Ω des and δ des , respectively. Otherwise, they are set to 0. The total momentum of the VSCMG cluster h ∈ 3×1 is calculated by the sum of the individual momentum from each VSCMG: where s, c are the abbreviations for sin and cos, respectively. The parameter β denotes the skew angle of the 4-CMG cluster in pyramid configuration and it is chosen in such a way that the momentum envelope is nearly tree-axis symmetric and spherical [6]. h i , i = 1, . . . , 4 are given by:

GCMG Equations of Motion
Adding an extra motor in the conventional SGCMG cluster it is possible to rotate the whole pyramid structure along the z direction, for θ z degrees, w.r.t the body frame as shown in Figure 1. For a symmetric SGCMG cluster, its products of inertia are equal to zero and the angular momentum of the cluster, here referred as h GCMG is given by Equation (32).
where J zz cmg is the moment of inertia about the z axis of the SGCMG cluster. The total angular momentum H of the system is Let the moment of inertia of the cluster be much smaller than this of the satellite. It applies that changing the angle θ z negligibly affects the orientation of the satellite. As a result, the stepper motor only rotates the actuator and the rate of the total angular momentum H can be calculated by: Because the disturbance torques are neglected and the total angular momentum is preserved, Equation (34) becomes: for identical flywheels running at the same angular speed. Then, Using the Euler formula, the Jacobian matrix of the system R ∈ 3×5 is formulated as: where The Equation (35) is given in a compact form by The control vector T c is selected as The gimbal angles as well as the rate of θ z can be found by where is the standard pseudo-inverse, or commonly referred as Moore-Penrose steering law, used due to its simplicity and the real-time implementation it offers. To guarantee the attitude stability of the spacecraft, consider the following the candidate Lyapunov function [38][39][40] The first time derivative of V is given bẏ Because q v err Tqv err is a scalar, it can be shown that (46) and the Equation (45) becomeṡ Equation (47) becomeṡ which can be simplified tȯ Using Equations (17), (40) and (41), the Equation (50) can be simplified tȯ Note that ω T (ω × Jω) = 0. Finally, and the global stability is guaranteed for K w > 0 [41]. The redundancy of the system allows to exploit motion in the null space and Equation (42) can be modified to contain the null motion term as where κ is a constant gain. Γ is a diagonal matrix the values of which denote which elements of δ err , θ zerr T are selected for the null motion. The possible values of each element of Γ are 0 and 1 and θ zerr is given by Linearized Model Using the Equations (17) and (42), the input vector u = δ θ z can be calculated by which can be embedded in the Equation (40) resulting in for simplicity. Then, the closed loop system is described by the Equation (56) and the reduced kinematics equatioṅ Let the spacecraft's products of inertia be zero for simplicity, i.e., J = diag([J 11 , J 22 , J 33 ]), in accordance to the simulation parameters presented in Section 3. Defining the state vector x s [ω, q v ] T ∈ 6×1 , the linearization of the nonlinear model results iṅ For the set point x s = x e s = [0, 0, 0, 0, 0, 0] T , the Equation (58) becomeṡ The eigenvalues of Q are The asymptotic stability is guaranteed for the parameters presented in Section 3 since every eigenvalue of Q has a negative real part.

Singularities-Preliminaries
As initially stated, the main problem when SGCMGs are utilized for spacecraft attitude control, is singularities. A brief overview of the singularities is presented, in order to better explain the selected task as presented in the next section. Near a singularity, the SGCMG cluster is incapable of producing torque along at least one direction and due to the illconditioned/singular Jacobian of the system in this state, the gimbal rates approach infinity. Even though it is known that only three SGCMG are necessary for three-axis control, the utilization of a redundant SGCMG provides the opportunity to avoid some types of singularities, increasing the momentum and the torque capacity of the cluster in a mass-efficient way.
Not all singularities are of the same type. They are divided into two categories. If a singular state can be escaped by null motion, it is passable or hyperbolic. Otherwise, the singularity is elliptic. The null motion of a SGCMG cluster is defined as the SGCMG gimbal motions that produce no net torque, i.e., the actuators' generated torque does not change the attitude of the satellite. Most of the times, the null motion is exploited to avoid singularities by internally configuring the gimbal angles to better performance configurations without affecting the execution of the manoeuvre towards to commanded attitude.
In addition, singularities are sub-categorized into external and internal. External singularities correspond to the maximum angular momentum in any single direction. Such singularities, also known as saturation singularities, are accommodated in the sizing of the control system and they are not considered for singularity avoidance. In contrast, internal singularities occur when the system is in a singularity and the cluster momentum is far from the limit of the cluster's capability. Depending on the number of the momentum axes aligned, the singularities of a 4-SGCMG cluster are classified to 4 h, 2 h and 0 h (Figure 2). Caution must be taken when interpreting the singular surfaces since the 4 h surfaces do not always have a momentum magnitude of 4 h [6]. When two of the SGCMGs point opposite the other two, then it is a 0 h singularity. Every momentum state corresponding to a singular gimbal set is a singular surface. When these 4 h, 2 h and 0 h surfaces are plotted together, they form a continuous connection between all possible singular momentum states as illustrated in Figure 3. The detailed understanding on the location and inner working of singularities can be found in the literature [2,11,12,39,[42][43][44] as it is not the main focus of the work presented. However, the mathematical framework for examining the null motion as well as for determining the singularity types is extensively detailed in [6,42,[45][46][47] and is briefly presented below for the typical 4-SGCMG pyramid cluster.
The null motion condition for the null motion momentum vector δh N ∈ 3×1 is defined by where H is the total angular momentum of the 4-SGCMG cluster and N corresponds to the Nth SGCMG of the cluster. Using the Taylor series, the null motion momentum vector δh N can be expanded to where f N = dh N /dx N and δx N are the null motion gimbal angle displacements. The first-order necessary condition for null motion is where δx = (δx 1 , . . . , δx n ) and A is the Jacobian matrix of the system. The null vector δx is the null-space vector of A; that is, δx = n = null(A) and An = 0. In order to define the type of a singular state, let the null motion constraint which is an alternative form of Equation (65). Let u be an arbitrary vector. The inner product of δH with u results in Since u T f N = 0 when u is along the singular direction, it applies that where e N = u T h N . Keeping only the second-order terms, the Equation (70) becomes . When E is a sign-definite matrix, the only solution to Equation (73) is δx = 0, and there is not null motion. The null motion of gimbal angles can be described by the first-order condition where c = [c 1 , c 2 ] T and c N is the Nth weighting coefficient. n N are the null-space basis vectors of the Jacobian matrix such that An N = 0 or Z = null(A). From Equations (73) and (74), it applies that where V = Z T EZ. If matrix V is sign-definite, then the singularity is elliptic and null motion is not possible. Otherwise, the singularity is hyperbolic and it is possible to exploit null motion to escape the singular state. For the 4-SGCMG cluster in pyramid configuration, it is easy to prove that the system is in an elliptic singular state when the gimbal configuration The V matrix is sign-definite because it has a positive determinant. Thus, the gimbal configuration is δ = [−90, 0, 90, 0] T deg corresponds to an elliptic singularity. A visualization of the gimbals in this state is presented in Figure 4. In terms of controllability, a singularity can also be examined considering the dynamics equationω Then, the controllability matrix can be calculated by and the rank(C l ) indicates whether the system is controllable or not. E.g., at the configuration δ = [0, 0, 0, 0] T deg, the rank(C l ) = 6 and the system is fully controllable in this state. In contrast, the well-known elliptic singularity at δ = [−90, 0, 90, 0] T deg results in rank(C l ) = 4 < 6 indicating the uncontrollability at the certain gimbal configuration.

Simulation Set-Up
Following the description of the singular states and the problems they introduce to the spacecraft attitude control, it is evident that exploring the behaviour of a system employed with SGCMGs near these states is essential. Thus, the task selected to study the behaviour of each model near an internal elliptic singularity is a manoeuvre about the roll axis by −90 deg because the system encounters the δ = [−90, 0, 90, 0] T deg singularity [46].
The initial non-zero gimbal configuration δ ini near the singular configuration is selected to guarantee that the system will meet the singularity while the initial attitude quaternion is q ini = [1, 0, 0, 0] T . Similar to [12,34,48], studying this type of singular state in addition to the initial gimbal values that are extremely near the singularity is a useful simulation strategy which enables to prove that the proposed GCMG design is effective even in challenging conditions. The total simulation time is 20 s. The first 2 s the systems is at rest, then the system is commanded to follow the desired orientation given by the quaternion q des . Since the simulation describes a discrete time system, it is required to integrate the quaternion rateq at the ith iteration as given by Equation (16) using the equation: where dt is the time between two consecutive iterations. The SGCMG rates are saturated when they exceed the specific thresholdδ th , using the following formula: It is preferred to saturate the gimbal angle rates using Equation (87) over applying a boundary value to every gimbal angle rate that exceeds the required threshold because the characteristics of the motion are conserved. For a fair comparison, it is desired to keep the number of the unrestricted DoF of the two models the same. Thus, every DoF apart from the motion of the four gimbals in the cluster is selected to follow certain criteria, i.e., every flywheel of the VSCMG cluster as well as the stepper motor of the GCMG cluster are used for null space motion following a preferred value. Moreover, the rotation angle and rate of the stepper motor are limited in order to better depict a real-life application.
A 2.7 GHz Inter Core i5 with 8 GB of RAM computer was used and all the simulations were run on the operating system MacOS Mojave in Matlab ® R2016b. The exact simulation parameters used, are shown in Table 1. The exact steering law parameters used for each model are presented in Tables 2 and 3.   Table 3. GCMG steering law parameters. Figure 5 illustrates the results derived by using the VSCMG cluster in avoiding the singularity encountered. The steering law of Equation (26) is applied and the null motion guides the system to follow only the desired Ω des set because the G CMG equals zero.

Simulation Results
The attitude angle in x axis is shown in Figure 5a. After t = 2 s the attitude begins to follow the commanded quaternion. The system reaches the steady state at approximately t = 18 s where the attitude error about the roll axis is slightly less than 1 deg. Figure 5b shows that the manoeuvre is executed with a minor attitude error about the pitch and yaw axis because the the system exploits the variable speed part to handle the approach to singularity. In particular, the maximum deviation of the attitude angle about pitch and yaw is −0.18 deg and 0.9 deg, respectively. The angular velocity of the satellite is presented in Figure 5c and the maximum absolute value is 18.9 deg/s in the negative of the roll axis. It is possible to accomplish a lower maximum velocity value by decreasing the value of the gain K p . The momentum profile of the VSCMG cluster, is presented in Figure 5d. The momentum in x direction increases approaching the value of 1.15 Nms where the gimbals are in singular configuration [47]. Figure 5e shows that the angle of the first and the third gimbal is heading towards −90 deg and +90 deg, respectively, when the system approaches the singularity but in the steady state these values change to −74.3 deg and 71.1 deg. The rest of the gimbal angles remain almost zero through the whole simulation time. Figure 5f presents the gimbal rates. It is observed that mainly the first and the third gimbal contribute to the rotation whilst the rest gimbal angle rates are significantly lower. The rate of the first gimbal reaches the saturation for a slight period of time but in the steady state, no rates are generated by the steering law. The control torque as presented in Figure 5g is about the roll axis. From t = 2 s to t = 2.9 s the torque spans to the negative of roll axis but after t = 2.9 s the sign changes to decelerate the satellite until the steady state. The manipulability index drops from 0.446 (t = 0 s) to 0.149 (t = 2.9 s). It is known that the minimum value is obtained once the system reaches closer to the singular configuration. After that, the index increases till the steady state where the obtain value is equal to 0.47 (Figure 5h). The angular velocity of each flywheel in the cluster is presented in Figure 6. A small change in the angular velocity of each flywheels is capable of solving the singularity problem. The maximum deviation from the nominal velocity is 0.31% at t = 2 s but in the steady state all flywheels are following the Ω des set.
Overall, the 4-VSCMG cluster is capable of avoiding the singular state due to the redundancy in the DoF it offers. The system avoids the elliptic singularity because it is capable to change the flywheel's angular velocity while configuring the four gimbals. When the null space motion is applied, the system can efficiently track the desired set Ω des and follow the commanded manoeuvre while maintaining a high performance configuration.   The same manoeuvre is executed using the GCMG model and the results are presented in Figure 7. Figure 7a shows that after t = 2 s the system follows the desired quaternion. The attitude angle about x direction is starting to decrease reaching the steady state at t = 18 s with a steady state error similar to this of the VSCMG. The GCMG exploits the fifth DoF to handle the encountering singularity completing the manoeuvre with slight attitude error (Figure 7b). Compared to the VSCMG, the maximum deviation is −1 deg and 0.53 deg about the pitch and yaw axis, respectively. This deviation is also depicted in the angular velocity of the satellite mainly in the negative of the y direction with an absolute maximum velocity of 4.4 deg/s (Figure 7c) . The main velocity component is about the x axis and the maximum absolute value is 18.7 deg/s. The angular momentum of the GCMG cluster is presented in Figure 7d. When the momentum in x direction reaches the value of 1.15 Nms where is known that the system encounters the singular state, a change in the momentum about y is presented. The gimbal angles profile is shown in Figure 7e Figure 7h that the manipulability index of the CMG cluster, i.e., use of Ā -drops to 0.166 at t = 2.4 s but in the steady state it converges to 1.22. In contrast, the lowest value of the manipulability index of the GCMG cluster-use of R-is 0.466 at t = 2.15 s. Even though the manipulability index in these two cases is not comparable because of the unequal DoF are used in each case, the profile of the index is. The significant difference is noticed from t = 2.16 s to t = 3 s. In this period of time the manipulability index of the GCMG increases quickly because of the action of the stepper motor, in contrast to this of the CMG which remains near the singularity. In Figure 8a,b the angle θ z and rateθ z are presented. The stepper motor rotates the cluster −90 deg following the commanded θ zdes set and the rateθ z remains saturated from t = 2 s to t = 2.5 s. Then, it decreases again because of the motion in the null space and in the steady state, it drops to zero. Table 4 presents the percentage differences for the main parameters among the two simulations.  As the results indicate, both the VSCMG and GCMG cluster are capable of avoiding the internal singularity exploiting the redundant DoF while maintaining a high manipulability index through the whole manoeuvre and similar settling time. Contrary to the results derived by using the GCMG, the maximum deviation of the attitude angle and satellite's angular velocity is lower about pitch and higher about yaw axis, respectively, in the case of VSCMG. The same applies for the control torque. The manipulability index profile for the VSCMG is significantly different from this of the GCMG. It presents a wide dip and slowly increases until the end of the simulation. The GCMG presents a higher index value both in singularity and the steady state compared to the VSCMG. Thus, after completing the desired manoeuvre the GCMG cluster comes to a better configuration which is significant for the beginning of the next manoeuvre without re-configuring its gimbals, e.g., through null space.
No major difference is presented in the maximum absolute value of the angular velocity of the satellite about the roll axis for the two models. Both models are capable of avoiding the elliptic singular state with attitude error lower than 1 deg which makes the GCMG an efficient alternative to the VSCMG when it is desired to explicitly follow a given trajectory. The memory allocation is almost identical for the two models (approx. 2% less in the case of GCMG). The difference in execution time is less than 1% as measured by 100 consecutive measurements. However the mathematical complexity of the GCMG is highly reduced. In applications where only the final attitude is of interest while high attitude error is allowed during the manoeuvre, the extra motor of the GCMG design is adding weight and complexity without providing any extra value compared to the conventional SGCMG. Such a task can be efficiently accomplished by a SGCMG cluster combined with the modified singularity robust inverse steering law.
Caution must be taken in selecting the moment of inertia matrix of the CMG cluster. The used value is negligible compared to this of the satellite and as a result a minor rotation is applied to the system. A large CMG inertia may result in rotating the satellite in the opposite direction resulting in higher attitude errors. Figure 9 illustrates an important difference between the total power required by the VSCMG compared to the GCMG to execute the same manoeuvre. The power component that is related to the initial spin up and the stabilization of the flywheels to their nominal velocities is the same in both cases and as a result, it has been omitted. The power profiles presented consist of two power components. The first is related to power used for the gimbal motion whilst the second is related to the power needed to change the velocity of the flywheels and control the stepper motor in the VSCMG and GCMG design, respectively. The power difference shown in Figure 9 is mainly due to the second component because the order of magnitude of the power of the first component is much smaller. There is an 88.1% and a 74.1% decrease in the maximum and the mean power needed when the GCMG is exploited. The maximum and the mean values for both cases are presented in Table 5. The values indicate that is feasible to use a commercial off-the-shelf stepper motor to manufacture the GCMG design with a required motor torque capability of less than 0.34 Nm. Such demands can be easily fulfilled by low mass and affordable stepper motors allowing the application of the GCMG actuator to micro and nano-satellites missions.
A more detailed power comparison of COTS based CMGs using stepper motors will be presented in future work showing experimental results which as shown previously in [34,35] show the power advantage of using stepper motors for CMG systems. The proposed GCMG uses less power than a conventional VSCMG cluster as the added gimbal motor/extra degree of freedom brings savings in power compared to the increased speed/power needed when using VSCMGs.

Conclusions
This paper addresses the problem of singularity avoidance in a 4-single gimbal control moment gyroscope (SGCMG) cluster in pyramid configuration as used for the attitude control of a satellite. A novel SGCMG cluster design is proposed that uses an extra stepper motor capable of rotating the full cluster and a comparison is held among the design proposed and the VSCMG cluster. Both are capable of avoiding the encountering singularity even though the GCMG presents a lower and a higher attitude error about the yaw and the pitch, respectively, for the exact same tuning. However, the GCMG shows a clear advantage over the VSCMG in the gimbal configuration in the end of the manoeuvre. The gimbals end in a configuration of higher performance that is essential for agile and small satellites that perform multiple consecutive manoeuvres in one pass. Moreover, the results indicate that GCMG provides a superior performance in terms of the power needed to execute the manoeuvre while it has been shown that a simple COTS stepper motor can be utilized in practice for manufacturing the GCMG concept. With three less DoF and reduced mathematical complexity, the GCMG design may be an effective alternative to the VSCMG in applications that is desired to explicitly follow a commanded trajectory. Even though the present study only investigates the GCMG cluster using the Moore-Penrose steering law, an extensive analysis is kept for future work to understand how the GCMG behaves to different steering laws.
Author Contributions: Conceptualization, C.P.; Methodology, C.P.; Project administration, V.L. and V.K.; Supervision, V.L. and V.K.; Writing-original draft, C.P.; Writing-review and editing, C.P. All authors have read and agreed to the published version of the manuscript.