Open access peer-reviewed chapter

Mixed Skew Angle Singularity Plotting for Non-Redundant Single Gimbal CMG Array

Written By

Joshua A. Ten Eyck

Submitted: January 10th, 2019 Reviewed: June 11th, 2019 Published: January 15th, 2020

DOI: 10.5772/intechopen.87976

Chapter metrics overview

732 Chapter Downloads

View Full Metrics


Control moment gyroscopes (CMGs) are utilized on spacecraft to control torsional movements. This chapter displays how a singularity map of a non-redundant single gimbal CMG array is created, analyzes the maximum singularity free momentums versus skew angle for three symmetric skew angles, and then analyzes for mixed skew angles. The objective of this paper is to demonstrate mixed skew angle values that produce large singularity free regions.


  • rotational mechanics
  • adaptive control
  • deterministic artificial intelligence
  • nonlinear control
  • control moment gyroscope
  • momentum exchange
  • singularity
  • voice coil
  • armature resistance
  • physics-based control
  • disturbance decoupling

1. Introduction

Singularities are locations where a CMG is unable to achieve the desired gimbal rate or angular momentum and saturates the specific CMG, causing large transient commands to all CMGs and total loss of attitude control. By determining the locations of each singularity, a three-dimensional map can be produced. From this map, the singularities can be avoided or passed though utilizing singularity penetration with unit delay (SPUD) [1]. By modifying the skew angle, the amount of available singularity free angular momentum changes with respect to reaching a singularity.


2. Theory

Understanding how the three CMGs operate and provide torque to the spacecraft is necessary before determining the locations of singularities. The desired rotation is input into the trajectory generator, and the trajectory is fed to the controller which calculates the control designed to achieve the desired maneuver. This is necessary for the actuators to produce the desired torque since it is impossible for the rotational body to change from the initial state to the final state instantaneously. The trajectory generation produces the following three equations, Eqs. (1)(3), to produce the maneuver as per Ref. [1]:

θ d = Asinωt # E1
ω d = Aωcosωt # E2
ω d ̇ = A ω 2 sinωt # E3

where θ is the gimbal angle, ω is the gimbal rate, and ω ̇ is the gimbal acceleration. Next, a feedforward loop is implemented to eliminate phase lag. Instead of waiting for an error to be produced by the feedback loop, the feedforward starts the spacecraft on the desired track before the feedback calculates an error. In the field of deterministic artificial intelligence, this is known as a self-awareness statement as the CMG would know that it is a rotational body subject to the physics described in Eq. (4) with some expected inertia, J. The ideal feedforward control inputting the desired dynamics as displayed in Eq. (5):

T = J ̂ ω ̇ + ωx J ̂ ω # E4
J ̂ ω ̇ d + ω d x J ̂ ω d = u ff # E5

The uff value is then fed to the actuators—the CMGs, reaction wheels, or thrusters—as a voltage or current command to produce the desired torque. Because the circuit is assumed to have a unity gain, no additional treatment was necessary to achieve the desired torques from the voltages or currents. The torque applied to the spacecraft is equal and opposite to the torque produced by the CMG array. The rate of change of the angular momentum is equal to the torque produced by the CMG, as per Eq. (6). The CMG array’s angular momentum can be broken down into the different rotational directions.

T desired = H ̇ # E6

Figure 1 depicts the magnitude and direction of the angular momentum, H, gimbal angle, θ, skew angle, β, and gimbal axis for the three CMGs: H1, H2, H3, θ1, θ2, θ3, β1, β2, β3, respectively. The angular momentum will maintain the same magnitude but can rotate around each gimbal axis to change its direction.

Figure 1.

¾ skew angle array [1].

If the CMG is commanded to create a torque in a direction that cannot be obtained by rotating the H vector around the gimbal axis, then that point will produce a singularity for that CMG. From Figure 1, the angular momentum can be expressed in directional components as seen in Eq. (7):

h x = cos θ 3 cos θ 1 + cos β 2 sin θ 2 h y = cos β 1 sin θ 1 cos θ 2 + cos β 3 sin θ 3 h z = sin β 1 sin θ 1 + sin β 2 sin θ 2 + sin β 3 sin θ 3 E7

Breaking down Eq. (6), the CMG torque into its separate components the CMG torque, H ̇ , is the product of the gimbal angle rate and A matrix:

T desired = H ̇ where H ̇ = H θ θ t = H θ i θ ̇ = A θ ̇ E8

θ t is the gimbal angle rate and H θ is defined as the A matrix per Eq. (9):

H θ = A = sin θ 1 cos β 2 cos θ 2 sin θ 3 cos β 1 cos θ 1 sin θ 2 cos β 3 cos θ 3 sin β 1 cos θ 1 sin β 2 cos θ 2 sin β 3 cos θ 3 E9

The A matrix is the key to being able to control the system [3]. Locations where the A matrix is not invertible are rank deficient, meaning there are not enough independent vectors to achieve the desired torque. These locations can be determined by setting the determinant of the A matrix equal to zero as per Eq. (10):

A 1 = 1 det A CoF # E10

where CoF is the cofactors matrix. As the det[A] approaches zero, the inverse of A goes to infinity, therefore the matrix is not invertible. In order to calculate these locations, the determinant of the A matrix is necessary as per Eq. (11). For the initial determination of the maximum singularity free region, the beta angles were set equal:

det A = sinβ 2 cos θ 1 cos θ 2 cos θ 3 cos 2 β sin θ 1 cos θ 2 cos θ 3 cosβ + cos θ 1 sin θ 2 sin θ 3 + cos θ 1 cos θ 2 sin θ 3 cosβ + sin θ 1 sin θ 2 cos θ 3 E11

Each singularity occurs at the location where the determinant of the matrix is equal to zero, in other words when Eq. (11) is set equal to zero. At these locations there is a singular inversion of the matrix causing at least one of the CMGs to try to produce an infinite gimbal rate. Because the three CMGs are coupled by the matrix inversion equation, a large transient command of the CMGs is created until the singularity has passed.


3. Results

There are two different approaches to produce a minimum magnitude of nonsingular momentum versus skew angle plot: analytically and numerically. The analytical method requires evaluation of the determinant of the A matrix. From this, several different cases are determined that will cause the determinant of the A matrix to be equal to zero, causing singularities. For each case, the equation causing the singularities to occur was then minimized over all skew angles to determine the minimum angular momentum of that case for each skew angle. Each case was then plotted and overlaid. The curve creating the minimum values for the entire system determines the maximum value for angular momentum at any specific skew angle for that array to not reach a singularity. This plot is shown in Figure 2.

Figure 2.

Plots of analytic and numerical maximum singularity free momentum versus skew angle for ¾ array [1].

The second approach is numerically. In this case, the beta angles are discretized and the angular momentum is determined at each singular point then for each case the minimum singular value is determined at each discretized beta angle. These values are then plotted against the beta discretization.

Figure 2 compares the analytic solution [4], to the numerical solution. Before comparing the two different solutions, different discretizations of the skew angles were analyzed. Values of discretizations analyzed were 4, 2, 1, ½ and ¼°. Figure 2 displays three of these plots in comparison to the analytic solution.

If the discretization was too small, excessive noise was introduced, as is visible in the ¼° discretization plot. If the discretization was too large, the trend line is smooth but removes the instantaneous changes happening in between the step sizes. Due to the decrease in the noise, yet maintaining the fidelity of the model, the 1° discretization was used.

Comparing the 1° discretization to the analytic solution, both follow a similar trend: there are peaks around 20, 50 and 90°. However, the exact location and magnitude differs. An overlay of the two plots is located in Figure 3. The analytic solution has higher peaks that occur at smaller angles. For example, the analytic solution has a peak of 0.3H at 49.5° whereas the numerical solution has a peak of only 0.15H at 54°. In order to evaluate the differences between the two plots, the standard deviation, σ, and mean, μ, of the error between the two were taken for three separate regions as well as all together. The plot was broken into regions as the numerical result behaved differently from the 1 to 38° range then it did in the 39–60°, or the 61–90°. The values are tabulated in Table 1.

Figure 3.

Overlay of 1° discretization and analytic result [1].

1–38° 39–60° 61–90° Total
σ 0.033 0.084 3.69 × 10−5 0.053
μ 0.039 0.071 6.86 × 10−5 0.035

Table 1.

Analysis of numerical result error.

The majority of the error incurred over the 1–38° range, occurred at between 1 and 5°. Numerically, the angular momentum at a skew angle of zero would hit a singularity causing the value to go to infinity, whereas analytically the value should be zero. The large deviation is caused by the definition of the numerical solution. Because the singularities are discretized, there will be locations where singularities occur between the steps of the numerical solution. The second region, 39–60°, acquires the most error; the peak is shifted to a larger skew angle but with a smaller maximum angular momentum. Therefore, because the values of the maximum singularity free angular momentum were usually smaller for the numerical approach than the analytic, the numerical approach serves as a conservative representation of the maximum angular momentum. The final region, 61–90° had very little error as the two lines were nearly coincided.

Figure 2 describes the maximum magnitude of angular momentum when all three CMGs hold the same skew angle. However, by enabling mixed skew angles, the determinant of the A matrix, expands as per Eq. (11).

det A = sin β 1 cos β 2 cos β 3 cos θ 1 cos θ 2 cos θ 3 + sin β 1 cos θ 1 sin θ 2 sin θ 3 + cos β 1 cos β 2 sin β 3 cos θ 1 cos θ 2 cos θ 3 sin β 2 cos β 3 sin θ 1 cos θ 2 cos θ 3 + sin β 3 sin θ 1 sin θ 2 cos θ 3 + cos β 1 sin β 2 cos θ 1 cos θ 2 sin θ 3

The analytic solution was not used to display the maximum singularity free regions for mixed skew angles. By adding two more degrees of freedom, plotting the maximum singularity free momentums against the mixed beta angles would ideally be produced in four dimensions. Instead, three-dimensional plotting was used with keeping one of the beta angles held constant. Figure 4 displays the numerical results of holding β1 at 90° while iterating β2, and β3:

Figure 4.

Numerical maximum singularity free momentum of β1 = 90°, β2 and β3 free [5].

Three-dimensional plotting has its limitation; in order to better demonstrate the locations of large singularity free momentum ranges, the plots were compressed to a two-dimensional representation with a color bar demonstrating the maximum value of singularity free angular momentum for each plot, as per Figure 5.

Figure 5.

2-D plots of maximum singularity free angular momentums for mixed skew angles [5].

Figure 4 displays several areas of interest; locations where yellow and orange occur on the plot or locations with large singularity free locations, additionally locations where the color is dark blue represent small singularity free locations. From Figure 3, having all three skew angles set to 90° provided the greatest singularity free region, however Figure 5 displays several other angles producing similar results. Table 2 displays several of the large singularity free skew angles.

Angular momentum Skew 1 Skew 2 Skew 3
1.00 90 90 free
0.97 80 1 1
0.93 70 3 1
0.89 60 7 1
0.83 50 12 1
0.79 40 18 1
0.76 30 26 1
0.78 20 38 1
0.85 10 54 1
1.00 1 90 1

Table 2.

Singularity free maximum angular momentum values for mixed skew angles.

The skew angle arrays displayed in Table 2 are portrayed graphically in Figure 6 where the black coloration is the inner wall of singularities and the blue are the remaining singularities for varying angular momentum. Each plot has a void of singularities in their respective centers; these singularity free regions enable maneuvers that do not exceed the maximum angular momentum of the void to work without requiring singularity penetration.

Figure 6.

Singularity hypersurfaces for mixed skew angles [5].

At almost every skew angle, there is at least one location where the achievable angular momentum, without hitting a singularity, is >0.75H. Therefore, if the CMG array in a spacecraft is limited to a specific angle for one of the three CMGs, the array will still be able to operate in a large singularity free field if the other two are designed with the remaining angles in mind [2]. Similarly, setting one skew angle and arbitrarily picking the remaining skews could lead to small singularity free regions. The mixed skew angles of 20, 38, 1° provides an angular momentum region of 0.78H however, as depicted in Figure 7, by changing one angle from 1 to 45° led to drastic changes in the singularity free region.

Figure 7.

Singularity hypersurface for β = 20, 38, 45° compared to β = 20, 38, 1° [5].

The maximum singularity free angular momentum drastically decreased from 0.78 to 0.02H when the third CMG skew angle became 45°. Therefore, the orientation of each CMG can severely affect the capability of the spacecrafts ability to control maneuvers.


4. Conclusion

CMG singularity maps provide a great deal of understanding of how a CMG array will be able to operate. A non-redundant array displays the minimum necessary CMGs to provide all degrees of freedom to operate a spacecraft. The maximum singularity free momentum depictions reveal that certain skew angles provide larger regimes to operate within and demonstrate the necessity to pick the skew angle to be able to achieve the desired torques. By investigating mixed skew angle plots of maximum singularity free angular momentum regions, several mixed angles were determined to display large regions where the array could operate without hitting singularities. This future work will enable a better understanding of the control and capabilities of the non-redundant CMG array.



This work was supported in part by the Naval Postgraduate School.


  1. 1. Baker K, Cooper M, Heidlauf P, Sands T. Autonomous trajectory generation for deterministic artificial intelligence. Electrical and Electronic Engineering. 2018;8(3):59-68
  2. 2. Sands T. Fine pointing of military spacecraft [dissertation]. CA: MAE, NPS; 2007
  3. 3. Wie B. Space Vehicle Dynamics and Control. 2nd ed. Virginia, USA: AIAA; 2008
  4. 4. Sands TA, Kim JJ, Agrawal B. 2H singularity-free momentum generation with non-redundant single gimbaled control moment gyroscopes. In: Proceedings of the 45th IEEE Conference on Decision and Control; 2006. pp. 1551-1556
  5. 5. Ten Eyck J, Sands T, editors. Advancements in Spacecraft Attitude Control (working title). London, UK: InTech; 2019. Unpublished manuscript submitted. Print ISBN: 978-1-78984-802-1. Project in draft form, due to publisher April 2019

Written By

Joshua A. Ten Eyck

Submitted: January 10th, 2019 Reviewed: June 11th, 2019 Published: January 15th, 2020