NOVEL STEERING AND CONTROL ALGORITHMS FOR SINGLE- CONTROL MOMENT GYROSCOPES

By

FREDERICK A. LEVE

A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY

UNIVERSITY OF FLORIDA 2010 © 2010 Frederick A. Leve

2 Dedicated to my mother for always being there to support me

3 ACKNOWLEDGMENTS I would like to thank first my advisor Dr. Norman Fitz-Coy for providing me with the guidance and knowledge for this great research I undertook. Second, I would like to thank my committee members Dr. Warren Dixon, Dr. Anil Rao, Dr. William

Hager from UF, and Dr. Scott Erwin from the Air Force Research Lab Space Vehicles Directorate. My committee comprises the expertise in the areas of research that would provide me the best opportunity for my research. Last, but not least, I would like to thank my colleagues in my research lab who provided input throughout my time as a graduate student that aided in this research: Dr. Andy Tatsch, Shawn Allgeier, Vivek

Nagabushnan, Josue Munoz, Takashi Hiramatsu, Andrew Waldrum, Sharan Asundi, Dante Buckley, Jimmy Tzu Yu Lin, Shawn Johnson, Katie Cason, and Dr. William

Mackunis.

4 TABLE OF CONTENTS page

ACKNOWLEDGMENTS ...... 4

LIST OF TABLES ...... 8

LIST OF FIGURES ...... 9 ABSTRACT ...... 13

CHAPTER

1 INTRODUCTION ...... 15

1.1 History and Background ...... 15 1.1.1 Gyroscopic Rate Determination ...... 15 1.1.2 Spin Stabilized Spacecraft ...... 15 1.1.3 Spacecraft through Gyrostats ...... 15 1.1.4 3-axis Attitude Control of Spacecraft ...... 16 1.1.5 Single-Gimbal Control Moment Gyroscopes (SGCMGs) ...... 17 1.1.6 Double-Gimbal Control Moment Gyroscopes (DGCMGs) ...... 17 1.1.7 Variable-Speed Control Moment Gyroscopes (VSCMGs) ...... 18 1.2 Problem Statement ...... 18

2 DYNAMIC MODELS ...... 20

2.1 Dynamic Formulation ...... 20 2.2 Singular Surface Equations ...... 25 2.2.1 Elliptic Singularities ...... 26 2.2.1.1 External singularities ...... 27 2.2.1.2 Elliptic internal singularities ...... 29 2.2.2 Hyperbolic Singularities ...... 29 2.2.2.1 Non-degenerate hyperbolic singularities ...... 30 2.2.2.2 Degenerate hyperbolic singularities ...... 30 2.2.3 Gimbal-Lock ...... 30 2.3 Singularities for SGCMGs Mathematically Defined ...... 31

3 CONTROL MOMENT GYROSCOPE ARRANGEMENTS ...... 34

3.1 Common SGCMG Arrangements ...... 34 3.1.1 Rooftop ...... 34 3.1.2 Box ...... 35 3 3.1.3 4 Box ...... 44 3.1.4 Scissor Pair ...... 45 3.1.5 Pyramid ...... 46 3.2 Choice of Arrangement ...... 48 3.3 Simulation ...... 50

5 4 SURVEY OF STEERING ALGORITHMS ...... 54 4.1 Moore-Penrose Pseudo-Inverse ...... 55 4.2 Singularity Avoidance Algorithms ...... 55 4.2.1 Constrained Steering Algorithms ...... 56 4.2.2 Null Motion Algorithms ...... 56 4.2.2.1 Local gradient (LG) ...... 56 4.2.2.2 Global avoidance/Preferred trajectory tracking ...... 57 4.2.2.3 Generalized Inverse Steering Law (GISL) ...... 58 4.3 Singularity Escape Algorithms ...... 59 4.3.0.4 Singularity Robust (SR) inverse ...... 59 4.3.0.5 Generalized Singularity Robust (GSR) inverse ...... 60 4.3.0.6 Singular Direction Avoidance (SDA) ...... 60 4.3.0.7 Feedback Steering Law (FSL) ...... 62 4.3.0.8 Singularity Penetration with Unit-Delay (SPUD) ...... 63 4.4 Singularity Avoidance and Escape Algorithms ...... 64 4.4.0.9 Preferred gimbal angles ...... 64 4.4.0.10 Optimal steering law (OSL) ...... 64 4.5 Other Steering Algorithms ...... 66 4.6 Steering Algorithm Computation Comparison ...... 66

5 STEERING ALGORITHM-HYBRID STEERING LOGIC ...... 68

5.1 Hybrid Steering Logic ...... 68 5.1.1 Internal Singularity Metrics ...... 68 5.1.2 Hybrid Steering Logic Formulation ...... 69 5.2 Lyapunov Stability Analysis ...... 71 5.3 Numerical Simulation ...... 76 5.3.1 Case 1: At Zero Momentum Configuration δ = [0 0 0 0]T deg ... 79 5.3.1.1 Local gradient simulation results ...... 80 5.3.1.2 Singular Direction Avoidance simulation results ...... 82 5.3.1.3 Hybrid Steering Logic simulation results ...... 85 5.3.2 Case 2: Near Elliptic External Singularity δ = [105 105 105 105]T deg ...... 85 5.3.2.1 Local gradient simulation results ...... 88 5.3.2.2 Singular Direction Avoidance simulation results ...... 91 5.3.2.3 Hybrid Steering Logic simulation results ...... 94 5.3.3 Case 3: Near Hyperbolic Internal Singularities δ = [15 105 195 −75]T deg ...... 96 5.3.3.1 Local gradient simulation results ...... 96 5.3.3.2 Singular Direction Avoidance simulation results ...... 99 5.3.3.3 Hybrid Steering Logic simulation results ...... 102 5.4 Hybrid Steering Logic Summary ...... 104

6 6 CONTROL ALGORITHM-ORTHOGONAL TORQUE COMPENSATION .... 106 6.1 Attitude Controller with OTC ...... 106 6.2 Lyapunov Stability Analysis ...... 107 6.3 Numerical Simulation ...... 110 T 6.3.1 Case I: δ0 = [0 0 0 0] deg ...... 111 T 6.3.2 Case II a: δ0 = [90 90 90 90] deg ...... 116 T 6.3.3 Case II b (HSL/OTC): δ0 = [90 90 90 90] deg ...... 123 6.4 Orthogonal Torque Compensation Summary ...... 127

7 SCALABILITY ISSUES FOR SGCMGS ...... 129 7.1 Scalability Problems with SGCMG Hardware ...... 129 7.2 Effect of Igw on Torque Error ...... 130 7.3 Numerical Simulation ...... 132 7.3.1 Case I: Kgw = 0 ...... 134 7.3.2 Case II: Kgw = 2 ...... 138 7.4 Effect of Igw on Torque Torque Amplification ...... 142 7.5 Summary ...... 143

8 CONCLUSION ...... 144

APPENDIX

A RIGID BODY DYNAMICS FORMULATION FOR CONTROL MOMENT GYROSCOPE ACTUATORS (SGCMG/VSCMG) ...... 147

A.1 Assumptions ...... 147 A.2 Dynamics ...... 147

B MOMENTUM ENVELOPE CODE ...... 151

C CONTROL MOMENT GYROSCOPE ACTUATOR SPECIFICATIONS ...... 156

REFERENCES ...... 157 BIOGRAPHICAL SKETCH ...... 164

7 LIST OF TABLES Table page

3-1 Model Parameters ...... 50

4-1 Algorithm Flops m = row(A) and n = column(A) ...... 66

5-1 Model Parameters ...... 78 5-2 Performance Comparisons for Case I: Zero Momentum ...... 85

5-3 Performance Comparisons for Case II: Elliptic Singularity ...... 96

5-4 Performance Comparisons for Case III: Hyperbolic Singularity ...... 104

6-1 Model Parameters ...... 110 6-2 Hybrid Steering Logic Parameters ...... 123

6-3 Performance Comparisons ...... 128

7-1 Model Parameters ...... 133

7-2 Model Parameters ...... 142

C-1 Off-the-Shelf CMG Specifications ...... 156

8 LIST OF FIGURES Figure page

2-1 Rigid body with a constant c.m...... 21

2-2 Gimbal frame FG⟩ of IMPAC SGCMG (Patent Pending) ...... 22

2-3 Singularity shown when CMG torque vectors lie in a plane (IMPAC SGCMGs Patent Pending) ...... 25

2-4 Singularities for SGCMGs ...... 27

2-5 External singular surfaces for a four-SGCMG pyramid ...... 28 2-6 Internal singular surfaces for a four-SGCMG pyramid ...... 30

3-1 Four-SGCMG rooftop arrangement ...... 34

3-2 Four-SGCMG box arrangement ...... 35

3-3 Angular momentum envelope for a four-SGCMG box arrangement...... 36

3-4 Planes of torque for a four-CMG rooftop arrangement ...... 37 3-5 Torque planes traced out for a four-SGCMG rooftop arrangement ...... 39

3-6 Angular momentum envelope with plotted angular momentum combinations for the four-SGCMG box arrangement ...... 42

3-7 Degenerate hyperbolic singularities for the four-SGCMG box arrangement ... 43

3-8 Singular surfaces showing 1h0 singularity free region ...... 45 3-9 3 Orthogonal scissor pairs of SGCMGs ...... 46

3-10 Planes of angular momentum and torque for a four-SGCMG pyramid ...... 47

3-11 Four-SGCMG pyramid arrangement ...... 47 3-12 Optimization process block diagram ...... 49

3-13 Singular surfaces for the optimized arrangement at the θ∗ = [170.2 13.6 85.5 168.0]T deg and ϕ∗ = [17.7 167.0 304.3 92.5]T deg ...... 51

3-14 Gimbal rates for the optimized and pyramid arrangements ...... 51 3-15 Torque error for the optimized and pyramid arrangements ...... 52

3-16 Singularity measure for the optimized and pyramid arrangements ...... 52

3-17 Optimization cost for the optimized and pyramid arrangements ...... 53

9 4-1 Outer and inner loops of GNC system ...... 54 4-2 Steering algorithms ...... 56

5-1 Zero-momentum configuration of a four-SGCMG pyramid arrangement ..... 79

5-2 Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 at zero momentum ...... 80

5-3 Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 at zero momentum (contd.) ...... 81

5-4 Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 at zero momentum ...... 83

5-5 Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 at zero momentum (contd.) ...... 84

5-6 Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 at zero momentum ...... 86

5-7 Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 at zero momentum (contd.) ...... 87

5-8 Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near elliptic singularities ...... 89

5-9 Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near elliptic singularities (contd.) ...... 90

5-10 Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 near elliptic singularities ...... 92

5-11 Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 near elliptic singularities (contd.) ...... 93

5-12 Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near elliptic singularities ...... 94

5-13 Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near elliptic singularities (contd.) ...... 95

5-14 Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near hyperbolic singularities ...... 97

5-15 Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near hyperbolic singularities (contd.) ...... 98

5-16 Simulation results for SDA with α0 = 0.01, β0 = 0, a = 0, b = 0, and µ = 1 near hyperbolic singularities ...... 100

10 5-17 Simulation results for SDA with α0 = 0.01, β0 = 0, a = 0, b = 0, and µ = 1 near hyperbolic singularities (contd.) ...... 101

5-18 Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near hyperbolic singularities ...... 103

5-19 Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near hyperbolic singularities (contd.) ...... 104

6-1 Satellite attitude control system block diagram ...... 106 6-2 Gimbal rates ...... 112

6-3 Output torque ...... 113

6-4 Vector elements of the error ...... 114

6-5 Singularity measure ...... 115

6-6 Singularity parameter (OTC) ...... 116

6-7 Quaternion error difference: (A) eGSR − eSDA (B) eSDA/OTC − eSDA ...... 116 6-8 Gimbal rates ...... 118

6-9 Output torque ...... 119

6-10 Vector elements of the error quaternion ...... 120 6-11 Singularity measure ...... 121

6-12 Gimbal-lock measure ...... 122

6-13 Singularity parameter (OTC) ...... 123

6-14 Gimbal rates ...... 124

6-15 Output torque ...... 125 6-16 Vector elements of the error quaternion ...... 126

6-17 Singularity measure ...... 126

6-18 Gimbal-lock measure ...... 127

6-19 Singularity parameter (OTC) ...... 127 7-1 Off-the-shelf CMGs ...... 129

7-2 Gimbal rates for Kgw = 0 ...... 135

7-3 Gimbal accelerations for Kgw = 0 ...... 136

11 7-4 Torque error for Kgw = 0 ...... 137

7-5 Singularity measure for Kgw = 0 ...... 138

7-6 Gimbal rates for Kgw = 2 ...... 139

7-7 Gimbal accelerations for Kgw = 2 ...... 140

7-8 Torque error for Kgw = 2 ...... 141

7-9 Singularity measure for Kgw = 2 ...... 141

12 Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy NOVEL STEERING AND CONTROL ALGORITHMS FOR SINGLE-GIMBAL CONTROL MOMENT GYROSCOPES

By

Frederick A. Leve August 2010

Chair: Norman Fitz-Coy Major: Aerospace Engineering

The research presented in this manuscript attempts to first systematically solve the SGCMG steering and control problem. To accomplish this, a better understanding of

singularities associated with SGCMGs is required.

Next based on a better understanding of singularities, a Hybrid Steering Logic

(HSL) is developed and compared to the legacy methods singular direction avoidance (SDA) and local gradient (LG) methods. The HSL is shown analytically and numerically

to outperform these legacy methods for a four-SGCMG pyramid arrangement in terms of

attitude tracking precision. However, all of the methods are susceptible to gimbal-lock.

A method referred to as Orthogonal Torque Compensation (OTC) is developed

for singularities with gimbal-lock in SGCMGs, which are known to present a challenge to most steering algorithms. Orthogonal Torque Compensation conditions the attitude

control torque by adding torque error orthogonal to the singular direction when at

singularity. This method can be combined with any steering algorithm including HSL and

is proven analytically to be stable and escape singularities with gimbal-lock.

Finally, the problems with scaling systems of SGCMGs are discussed. It is found that scaling produces an increase in the gimbal-wheel assembly inertia of the

SGCMGs which in turn increases the effect of the dynamics associated with these

inertias. Through analysis and numerical simulations, it is shown that more significant

gimbal-flywheel inertia reduces the performance by increasing torque error and

13 reducing torque amplification of SGCMGs. Since most of the legacy algorithms used for singularity avoidance and escape use the gimbal rates for control, the performance is degraded when the dynamics from the gimbal-wheel assembly inertia are increased.

This degraded performance is shown to also be dependent on the ratio of gimbal-wheel assembly inertia to nominal SGCMG flywheel angular momentum. The overall result here is that the same legacy steering algorithms that use gimbal rates for control cannot be used for systems of SGCMGs of a reduced scale.

14 CHAPTER 1 INTRODUCTION

1.1 History and Background

1.1.1 Gyroscopic Rate Determination

The behavior of gyroscopic systems comes from the principle of conservation of angular momentum. Both rate determination and rate generation are possible through this gyroscopic behavior. For example, determination of attitude rates can be found by mechanical gyroscopes. From these devices, spacecraft angular rates are inferred from their reaction onto the of the mechanical gyroscope. The first known gyroscopes were passive and the first of these was developed by Johann Bohnenberger in 1817 [1, 2]. They were later developed for the navy as the naval gyrocompass [3].

There are now passive gyroscopes used for determining angular rates developed via micro-electrical and mechanical systems (MEMS) that are smaller than the human eye can detect. 1.1.2 Spin Stabilized Spacecraft

Early spacecraft did not have active attitude control but where spin stabilized about their major axis of inertia by initiating a spin after launch. The major-axis rule is required for directional stability (i.e., the spacecraft must spin about its major axis) [4]. This provided gyroscopic stability or directional stability to the spacecraft which was defined as stability provided the spacecraft does not have energy dissipation capability (i.e., a rigid body). However, a spacecraft is truly not a rigid body (e.g., flexible booms, solar arrays, internal movable parts, and outgassing) which may dissipate energy and become asymptotically stable.

1.1.3 Spacecraft Attitude Control through Gyrostats

A gyrostat is any rigid body that has attached to it a wheel that through the conservation of angular momentum provides either rotational stability or control. To provide attitude stability, constant speed flywheels known as momentum wheels (MWs)

15 were added internal to the spacecraft to provide gyroscopic stiffness which in turn supplies attitude stability [5]. This system is an example of a gyrostat. The gyrostat was the first fundamental dynamical system that considered a spinning flywheel within or attached to a rigid body. In this type of system the flywheel imparts angular momentum stiffness to the body internally through the principle of the conservation of angular momentum. The use of momentum wheels for gyroscopic stability has found its use for other vehicles than spacecraft (e.g., boats, trains, buses [6]).

1.1.4 3-axis Attitude Control of Spacecraft

When active attitude control was needed, momentum wheels were exchanged for reaction wheels (RWs) which provide a reaction torque on the spacecraft through

flywheel accelerations. These devices were then used in combination with thrusters to provide attitude control to spacecraft [7]. Further innovation came to spacecraft attitude control through the introduction of gimbaled MWs known as control moment gyroscopes

(CMGs). They have been used in satellite attitude control for decades due to their high precision and property of torque amplification (i.e., larger torque output onto the spacecraft than the input torque from the gimbal motors). Typically, they have been used for large satellites that require high agility while maintaining pointing precision and have even found their uses onboard the international space station (ISS) [8]. Control moment gyroscopes produce a gyroscopic torque through of angular momentum about one or two gimbal axes. Momentum wheels, RWs and CMGs all are known as momentum exchange devices because their torque is produced through redistribution of angular momentum from the CMGs to the spacecraft. Control moment gyroscopes come in two classes: 1) those with a single controllable degree of freedom and 2) those with multiple controllable degrees of freedom.

The choice of a CMG or attitude actuator in general depends on the needs of the mission. All CMGs have specific challenges associated with their use. The challenges of CMGs are as follows: single DOF CMGs known as single-gimbal control

16 moment gyroscopes (SGCMGs) suffer from instantaneous internal singularities (i.e., situations within the performance envelope where a given torque cannot be produced); multiple DOF CMGs known double-gimbal control moment gyroscopes (DGCMGs) are mechanically complex and have singularities known as gimbal-lock when their gimbals align thus eliminating their extra DOF; other multiple DOF CMGs known as variable-speed control moment gyroscopes (VSCMGs) are difficult to mitigate induced vibration (i.e., due to the variation of flywheel speeds) and require more complicated control laws, motor driver circuitry, and larger flywheel motors.

1.1.5 Single-Gimbal Control Moment Gyroscopes (SGCMGs)

Single-gimbal control moment gyroscopes have a long heritage of flight on larger satellites and the ISS [9–15]. They are known to have the highest torque amplification of all CMGs, are less mechanically complex than DGCMGs and have less mathematically complex dynamics than VSCMGs. These actuators suffer from internal singularities that must be handled on-the-fly, where torque cannot be generated in a specific direction.

There is no single method that has been proven to avoid all internal singularities while tracking an arbitrary torque perfectly (i.e., without the use of torque error or constraining the torque). Thus, there is merit in finding alternate solutions to control of SGCMGs for attitude control.

1.1.6 Double-Gimbal Control Moment Gyroscopes (DGCMGs)

Double-gimbal control moment gyroscopes contain two controllable DOFs through their two gimbal axes. They are the most mechanically complex of CMGs although, the redundancy in the additional gimbal may lead to less than three DGCMGs required for

3-axis control. The benefit of this redundancy is lost for DGCMGs when they encounter a gimbal-lock singularity. Gimbal-lock is encountered when the gimbal axes are aligned and are no longer linearly independent. As a consequence, the extra controllable DOF in this case is lost. Effective methods already exist for avoiding gimbal-lock singularities associated with DGCMGs [16–20].

17 1.1.7 Variable-Speed Control Moment Gyroscopes (VSCMGs)

Variable-speed control moment gyroscopes utilize an extra controllable DOF through flywheel accelerations. As a consequence of the extra DOF, the flywheel motors must be larger and it is more troublesome to isolate unwanted induced vibration. In addition, this extra degree of freedom makes a system of two or more non-collinear

VSCMGs free from singularities through the extra degree of freedom, (i.e., at CMG internal singularities, the needed torque is provided by flywheel accelerations). Several algorithms have been developed that are effective in reducing the amount of flywheel accelerations used and thus providing better torque amplification [21–30]. In addition, methods have been developed to use the VSCMG’s extra controllable DOF to spin down the flywheels and store their kinetic energy. These methods are known as the integrated power and attitude control system (IPACS) and the flywheel attitude control and energy transmission system (FACETS) in literature [31–34].

1.2 Problem Statement

A new paradigm that requires highly agile small spacecraft is ongoing through efforts by government agencies and labs such as Operationally Responsive Space

(ORS), Air Force Research Laboratory (AFRL), the National Reconnaissance Organization

(NRO), and National Aeronautics and Space Administration (NASA) to perform such missions as intelligence, surveillance and reconnaissance (ISR), space situational awareness (SSA), and space science missions (e.g., the imaging of gamma ray bursts)

[35–37]. Many of these missions are in LEO and require higher agility and attitude precision to track targets on earth. Attitude control systems (ACSs) based on reaction control devices (e.g., thrusters) can achieve great agility but cannot meet the pointing requirements and space needed for propellant storage on small satellites [38]. Single-gimbal control moment gyroscopes are being considered the actuator of choice to provide higher agility to smaller satellites based on their perceived torque amplification. However, many problems exist that must be solved prior to using

18 SGCMGs for small satellite attitude control. Traditionally, SGCMGs have been oversized for their mission and the angular momentum envelope constrained to avoid internal singularities on larger satellites. For smaller satellite systems, however, the extra volume and mass needed for oversized SGCMGs may be unacceptable. Therefore, small satellite SGCMGs should utilize more of the entire angular momentum envelope where singularities may be encountered in the momentum space (both internal and external).

Thus, legacy steering algorithms from larger satellite applications may not provide the same performance for systems of a smaller scale requiring a new approach for steering and control of SGCMGs.

For the succeeding chapters: Chapter 2 discusses and reviews the fundamentals of CMG dynamics and describes the different forms of singularities associated with

SGCMGs; Chapter 3 describes the possible arrangements for systems of SGCMGs and their desirable and undesirable qualities; Chapter 4 provides the background on previously published methods of steering algorithms for implementation of SGCMGs; Chapter 5 discusses the development of the Hybrid Steering Logic (HSL) for SGCMGs;

Chapter 6 discusses the development of Orthogonal-Torque-Compensation (OTC) for gimbal-lock escape of SGCMGs; Chapter 7 discusses the performance degradation encountered when scaling systems of SGCMGs; and Chapter 8 provides conclusions of the research.

19 CHAPTER 2 DYNAMIC MODELS

2.1 Dynamic Formulation

The dynamic formulation presented in this section addresses momentum exchange devices for attitude control systems where the angular momentum of the spacecraft system (i.e., the spacecraft and system of CMGs) is assumed constant. This is in contrast to reaction control devices (e.g., thrusters) and/or energy dissipation devices (e.g., magnet torquers) which change the angular momentum or energy of the system.

It is assumed that the center of mass (c.m.) of each CMG lies along the gimbal axis.

This is equivalent to stating that the rotation of the gimbal-flywheel system about the gimbal axis does not move the position of the c.m. of the system. It is also assumed that the spacecraft-CMG system is a rigid body; and this system is absent of friction and external torques. For a coordinateless derivation of the dynamics see Appendix A. The

first assumption can be visualized by treating the CMGs as cylinders and having their spin axis along their c.m. as shown in Figure 2-1.

The total centroidal angular momentum of the spacecraft-CMG system in the spacecraft body frame is

H = Jc ω + h (2–1) which is composed of the spacecraft centroidal angular momentum Jc ω composed of the spacecraft centroidal inertia Jc and angular velocity ω and the angular momentum h contributed from the CMGs.

Considering the spacecraft modeled as a rigid body, its centroidal inertia is composed of both constant and time-varying inertias and is expressed as

∑n J = J + m (rT r 1 − r rT ) + C I CT c i i i i i BGi gw BGi (2–2) i=1

20 Figure 2-1. Rigid body with a constant c.m.

where J represents the constant spacecraft-CMG system inertia in referencing position T − T about the spacecraft’s c.m; mi (ri ri 1 ri ri ) are the parallel axis terms, with mass mi

th of the i gimbal-flywheel assembly and its c.m., position ri with respect to the c.m. C I CT of the spacecraft, and BGi gw BGi are the time varying inertias from rotation of the th gimbal-flywheel system inertia Igw . The angular momentum contributed from the i

CMG in a gimbal frame FG⟩ is expressed as  

 Iw Ω      hi =  0  (2–3)  

Igw δ˙i

which consists of angular momentum from the flywheel (Iw Ω) and that from the

gimbal-wheel system (Igw δ˙i ). It should be noted that the CMG angular momentum expression in Eq.(2–3) is based on an SGCMG or VSCMG only and the following development of angular momentum for CMGs will be for a multiple gimbal CMG. The

21 resultant angular momentum from the CMG system in the body frame is found through the summation of the contributions of angular momentum from all CMGs rotated from their respective gimbal frames into the spacecraft body frame; i.e.,

∑n

h = CBGi hi (2–4) i=1 where n is the number of SGCMGs, CBGi is the direction cosine (DCM) from the gimbal frame FG⟩ shown in Figure 2-2 to spacecraft body frame FB.

Figure 2-2. Gimbal frame FG⟩ of IMPAC SGCMG (Patent Pending)

With the assumption of no external torques and frictionless devices, the total angular momentum is constant, thus the inertial time derivative of Eq.(2–4) shows the redistribution of the systems’s angular momentum (i.e., on the mechanism by which the torque is produced by CMGs). Differentiation of Eq.(2–1) yields

dH d(J ω˙ + h) = c + ω×(J ω˙ + h) = 0 (2–5) dt dt c

22 The time derivative of the spacecraft angular momentum yields

d(J ω) c = J ω˙ + J˙ ω (2–6) dt c c The spacecraft inertia is assumed to only vary by the gimbal angles of the CMGs thus

making the second term on the right hand side of Eq.(2–6)

∑k (J ) d ∑k ˙ ≡ ∂ c ω δj j ˙ Jc ω = A1δj (2–7) ∂δj dt j=1 j=1 j ∈ R3×n where A1 is the Jacobian matrix resulting from the coupling of the spacecraft and CMG kinematics from the j th gimbal of a multiple gimbal CMG and n is the number of CMGs.

The angular momentum of the CMG system is a function of the flywheel angular

n×1 n×1 n×1 velocities Ω ∈ R , gimbal angles δj ∈ R , and gimbal rates δ˙j ∈ R , respectively. The time derivative of the CMGs angular momentum can be expressed as

( ) dh ∑k ∂h dδ ∂h dδ¨ ∂h dΩ = h˙ = j + j + (2–8) dt ∂δj dt ˙ dt ∂Ω dt j=1 ∂δj where the individual Jacobian matrices are ,

h j ∂ ∈ R3×n A2 = (2–9) ∂δ j

∂h Bj = ∈ R3×n (2–10) ∂δ˙ j

∂h C = ∈ R3×n (2–11) ∂Ω Assuming a constant flywheel speed Ω˙ = 0 and a single gimbal (k = 1) configuration,

then Eq.(2–5) can be rewritten as

dH = J ω˙ + ω×J ω + ω×h + DX˙ = 0 (2–12) dt c c

23 where,   δ˙ DX˙ = [(A1 + A2) B]   = h˙ + J˙ c ω = T (2–13) δ¨

The general equations for the SGCMG output torque in terms of a given internal

control torque τ is expressed as,

DX˙ = −τ − ω×h = T (2–14)

where T is the total torque output from the system of SGCMGs. It should be noted that δ˙

and δ¨ are kinematically coupled, thus it is not possible to find both states simultaneously

when mapping D ∈ R3×3n onto T (i.e., only one gimbal state can be chosen as a control variable). For SGCMG systems that contain significant flywheel angular momentum and gyroscopic torque, the dynamics of the gimbal-wheel assembly inertias can be considered insignificant (i.e., A1 ≈ 0 and B ≈ 0). For such systems, it is customary to neglect the inertia variations due to the gimbal motion (i.e., J˙ c = 0) resulting in the

3×n composite D reducing to A2 ∈ R . Therefore, the Jacobian D is simply A2 and the solution of the output torque from the SGCMGs is contributed solely from the gimbal rates as

h˙ = h0Aˆ 2δ˙ = h0[ˆτ1,τ ˆ2, ...ˆτn]δ˙ (2–15)

th where A2 = h0Aˆ 2 and τˆi is the torque vector direction of the i CMG as shown in Figure 2-2. The coefficient matrix in Eq.(2–15) is 3 × n and when n > 3 the system

is over-actuated. When this matrix becomes rank deficient, the system is said to be singular. Physically, when these singularities occur, the torque vector directions of each

SGCMG in the body frame lie in a plane as shown in Figure 2-3.

For convenience, from this point until Chapter 7, it is assumed Aˆ 2 = A.

24 Figure 2-3. Singularity shown when CMG torque vectors lie in a plane (IMPAC SGCMGs Patent Pending)

2.2 Singular Surface Equations

It is customary to define an orthonormal basis {hˆi , τˆi , δˆi } as shown in Figure 2-2 where hˆi is the spin axis of the flywheel, τˆi is the SGCMG torque direction, and δˆi is the gimbal axis direction. Therefore, the singular direction s ∈ R3×1 is defined from

3 T {s ∈ R : s τˆi = 0} (2–16)

This constraint constitutes a maximum (or minimum) projection of hˆi onto s. There is a

fundamental assumption that h0i is equal to h0 (i.e., the magnitude of nominal angular momentum is the same for all SGCMGs in the system). For a given singular direction s ≠ ±δˆi (i.e., which only occurs for DGCMGs and for rooftop arrangements), the conditions for singularity are

T T s τˆi = 0 and s hˆi ≠ 0 (2–17)

T If we define ϵi , s hˆi , then the torque and spin axis directions can be expressed as

δˆi × s τˆi = ϵi , s ≠ ±δˆi , i = 1, ..., n (2–18) ||δˆi × s||

25 (δˆi × s) × δˆi hˆi = τˆi × δˆi = ϵi , s ≠ ±δˆi , i = 1, ..., n (2–19) ||δˆi × s|| Combining Eqs.(2–18) and (2–19), the total normalized angular momentum from the SGCMGs is expressed as

∑n ∑n (δˆ × s) × δˆ hˆ = hˆ = τˆ × δˆ = ϵ i i (2–20) i i i i ||ˆ × || i=1 i=1 δi s

It is important to note that when s = ±δˆi Eqs.(2–18)-(2–20) are indeterminate. The locus of total normalized angular momentum hˆ from Eq.(2–20) for all s ∈ R3 and all ϵi ≠ 0 (i.e., s not collinear to δˆi ) produces the external singular surface known as the angular momentum envelope shown in Figure 2-5 for a four-SGCMG pyramid arrangement. Similarly, each of the four internal singular surfaces shown in Figure 2-6 for a four-SGCMG pyramid arrangement are found by setting one of the ϵi < 0. Matlab code for both of these surfaces can be seen in Appendix C. Singularities for SGCMGs can be classified into the groups/subgroups as shown in Figure 2-4.

2.2.1 Elliptic Singularities

Elliptic singularities are those in which null solutions to the gimbal angles do not exist for a specific point of CMG angular momentum space. Null motion is a continuous set of null solutions for gimbal angles (i.e., there is a continuous transfer from one null solution to the next) that does not change the CMG’s angular momentum and thus, does not produce any motion to the spacecraft. Since elliptic singularities do not have null solutions, the angular momentum must be perturbed thus inducing torque error to the system to escape from these singularities. Elliptic singularities are not limited to internal singularities; (e.g., all external singularities are elliptic and hence cannot be avoided or escaped through null motion).

26 SGCMG Singularities

Elliptic Hyperbolic

External Internal Internal

Gimbal-Lock Gimbal-Lock Degenerate Non-degenerate

Gimbal-Lock Gimbal-Lock

Figure 2-4. Singularities for SGCMGs

2.2.1.1 External singularities

External singularities also known as saturation singularities are associated with the maximum projection of CMG angular momentum in any direction. These singularities cannot be avoided by null motion and therefore by definition are elliptic.

These singularities occur on the surface of the angular momentum envelope and an example of this surface for a four-SGCMG pyramid is showed in Figure 2-5. When these singularities are encountered, the CMGs are unable to produce any more angular momentum in the saturated direction. External singularities are addressed a priori in the design process through sizing of the CMG actuators.

27 Figure 2-5. External singular surfaces for a four-SGCMG pyramid

Consider a four-SGCMG pyramid arrangement, Eq.(2–21) can be used to express the angular momentum as  

−c(θ)s(δ1) − c(δ2) + c(θ)s(δ3) + c(δ4)     h = h0  c(δ ) − c(θ)s(δ ) − c(δ ) + c(θ)s(δ )  (2–21)  1 2 3 4 

s(θ)(s(δ1) + s(δ2) + s(δ3) + s(δ4))

th where θ is the skew angle and δi is the i gimbal angle. Further consider the set of gimbal angles δes = [90 90 90 90] deg, then the momentum vector becomes      0   0      es     h(δ ) =  0  =  0  (2–22)    

h0s(θ)(s(δ1) + s(δ2) + s(δ3) + s(δ4)) 4h0s(θ)

It is clear that there is only one set of gimbal angles δes = [90 90 90 90]T deg that will

give the angular momentum in Eq.(2–22). Therefore, null solutions do not exist, and this

28 angular momentum vector corresponds to the elliptic saturation singularity along the z-axis.

2.2.1.2 Elliptic internal singularities

Elliptic singularities which lie on the internal singular surfaces such as that shown

for the four-SGCMG pyramid arrangement in Figure 2-6 are referred to as elliptic internal

singularities. Unlike external singularities, these singularities cannot be accounted for

in the design process; furthermore, since they occur instantaneously, they cannot be

generally avoided. 2.2.2 Hyperbolic Singularities

Hyberbolic singularities are those in which null motion is possible. Thus, all hyperbolic singularities are therefore internal (i.e., these singularities occur on the

internal singular surfaces). The points on the internal singular surface corresponding

to a hyperbolic singularity have null solutions of gimbal angles, corresponding to the

null space of the Jacobian matrix. The null solutions are typically chosen to avoid

the singular configurations of the system. Shown in Figure 2-6, is an example of this surface for a four-SGCMG pyramid. Singularities occur only when the point on this

surface corresponds to a singular Jacobian matrix (i.e., there may be nonsingular sets

of gimbal angles at this point on the surface). When these singularities are encountered,

the SGCMG torque vector directions lie in a plane and as a consequence there is no torque available out of the plane. These singularities, like elliptic singularities, are

instantaneous and must be handled on the fly. For a four-SGCMG pyramid arrangement

with angular momentum in Eq.(2–21), a set of gimbal angles δhs = [180 90 0 90]T deg is an hyperbolic singularity that has the following momentum vector,    0    hs   h(δ ) =  −2h  (2–23)  0 

2h0s(θ)

29 It is clear that there multiple solutions (i.e., null solutions) to Eq.(2–23). A null solution of ◦ − 1 the gimbal angles satisfying δ1 = δ3 = 90 and s(δ4) = s(δ2) = c(θ) substituted into Eq.(2–21) will also satisfy Eq.(2–23).

Figure 2-6. Internal singular surfaces for a four-SGCMG pyramid

2.2.2.1 Non-degenerate hyperbolic singularities

Non-Degenerate hyperbolic internal singularities are those in which null motion

is possible and some of the null solutions are nonsingular providing the possibility of

singularity avoidance. 2.2.2.2 Degenerate hyperbolic singularities

Degenerate hyperbolic internal singularities occur when the null solutions to gimbal

angles correspond to singular sets of gimbal angles leaving no room for avoidance or escape. These singularities are also considered impassable and therefore are handled

in a similar manner to elliptic singularities when approached.

2.2.3 Gimbal-Lock

Gimbal-lock for SGCMGs occurs at singularity when the mapped output torque

vector is in the singular direction. When this occurs, the system becomes trapped in this

30 singular configuration with only a few methods that are capable of escape from it. One such method is known as the Generalized Singularity Robust (GSR) Inverse [39, 40].

This method has been shown numerically to escape gimbal-lock of SGCMGs but not

analytically and there is no formal proof to suggest that it is always successful.

2.3 Singularities for SGCMGs Mathematically Defined

To quantifiy the effectiveness of avoiding internal singularities through null motion,

we must define their forms (i.e., hyperbolic and elliptic) mathematically. Typically,

topology and differential geometry are used to represent hyperbolic and elliptic internal singularities as surfaces or manifolds [41, 42]. The behavior of these internal

singularities can also be explained through the use of linear algebra [43]. To accomplish

this, a Taylor series expansion of the SGCMG angular momentum about a singular

configuration gives

[ ] ∑n 2 − S ∂hi 1 ∂ hi 2 h(δ) h(δ ) = ∂δ ∆δi + 2 ∂δ2 ∆δi + H.O.T . (2–24) i δS i δS i=1 i i S S where h(δ ) is the angular momentum at a singular set of gimbal angles δ , ∆δi = − S δi δi , and n is the number of SGCMGs in the system.

The first term on the right-hand side (RHS) of Eq.(2–24) contains the ith column

∂hi of the Jacobian matrix τˆi = | S , associated with the ith SGCMG’s torque direction. ∂δi δi The second term on the RHS contains the partial derivative of the Jacobian matrix’s

2 ∂ hi | ith column with respect to the ith gimbal angle 2 δS . Furthermore, from Eq.(2–15), the ∂δi i RHS of Eq.(2–24) can be transformed through the realization of the following operations:

2h ˆ ∂ i ∂τi − ˆ − 2 = = hi hi = hi (2–25) ∂δi ∂δi where ()ˆ denotes a unit vector. Next, Eq.(2–25) is substituted into Eq.(2–24) and the

inner product of the result with the singular direction s obtained from null(AT ) yields

31 1 ∑n sT [h(δ) − h(δ )] = − hT s ∆δ2 (2–26) S 2 i i i=1 The first term on the RHS of Eq.(2–24) has zero contribution because of the definition of

the singular direction (i.e, AT s = 0). Equation (2–26) can be written more compactly as

1 sT [h(δ) − h(δ )] = − ∆δT P∆δ (2–27) S 2

T where P is the singularity projection matrix defined as P = diag(hi s). By definition, null motion does not affect the total system angular momentum and

which equates to h(δ) = h(δS ). Consequently, the left-hand side (LHS) of Eq.(2–27) is zero (i.e., ∆δT P∆δ = 0). Null motion is expressed in terms of the basis N = null(A)

concatenated in matrix form as follows

(n−∑r(A)) ∆δ = λi νi = Nλ (2–28) i=1

where λ is a column matrix of the scaling components of the null space basis vectors νi and N ∈ Rn×(n−r(A)) is the dimension of the null space basis for any system of SGCMGs with r(A) = rank(A). Substituting Eq.(2–28) into Eq.(2–27) observing the null motion

constraint yields

λT Qλ = 0 (2–29)

As a result of this analysis, a matrix Q is defined as

Q = NT PN (2–30)

Therefore, when away from singularity Q ∈ R1×1; when at a rank 2 singularity, Q ∈ R2×2; and when at a rank 1 singularity, Q ∈ R3×3. The eigenvalues of the Q matrix determine whether a singularity is hyperbolic or elliptic. If Q is definite (i.e., has all positive or negative eigenvalues), it does not contain a null space since a nonzero null vector λ

32 does not exist that satisfies Eq.(2–29)[44]. Therefore, situations where the matrix Q is definite constitute elliptic singularities.

When Q is semi-definite (i.e., it has at least one zero eigenvalue), then a null space exists since there exists a λ ≠ 0 that satisfies Eq.(2–29). Therefore, null motion is

possible near singularity and the possibility of singularity avoidance may hold (i.e., does not for degenerate-hyperbolic singularities) [43]. If the matrix Q is indefinite (i.e.,

the eigenvalues are positive and negative), the result of Eq.(2–29) has the possibility

of being equal to zero. Therefore, both of these situations constitute an hyperbolic

singularity.

The tools developed in this chapter for describing the existence of elliptic singularities and hyperbolic internal singularities in a system of SGCMGs are used in the next

chapter to more specifically discuss which of these internal singularities exist in common

arrangements of SGCMGs. In addition, Chapter 5 introduces a novel steering algorithm

known as the Hybrid Steering Logic (HSL) which uses these tools in its derivation.

33 CHAPTER 3 CONTROL MOMENT GYROSCOPE ARRANGEMENTS

3.1 Common SGCMG Arrangements

Several common SGCMG arrangements have been studied. Typically, the factors that determine the choice of a specific SGCMG arrangement are: (i) available volume (ii) desirable angular momentum envelope, and (iii) associated singularities. In this chapter, we examine the common arrangements and use the tools developed in Chapter 2 to characterize their singularities.

3.1.1 Rooftop

The rooftop arrangement shown in Figure 3-1 has two sets of parallel SGCMGs, each with parallel gimbal axes where θ is the skew angle relating the planes of torque. A four-SGCMG rooftop arrangement is shown in Figure 3-1.

Figure 3-1. Four-SGCMG rooftop arrangement

Since these arrangements are free from elliptic internal singularities, they have a significant flight heritage on satellites and thus, their control is well understood [45].

However, degenerate hyperbolic singularities which are also impassable still exist and like elliptic singularities cannot be addressed through the use of null motion. In addition, there are degenerate cases of hyperbolic singularities for the rooftop arrangement when

34 the Jacobian matrix is rank 1 which may provide difficulty to singularity escape laws that regulate the smallest singular value.

3.1.2 Box

The box arrangement is a subset of the rooftop arrangement and has two parallel sets of two SGCMGs with an angle of 90 deg between the two planes of torque as shown in Figure 3-2. This arrangement is given its name because the planes of angular momentum can form a box [46]. Like the rooftop array, there are situations where this arrangement may have a rank 1 Jacobian.

Figure 3-2. Four-SGCMG box arrangement

The angular momentum envelope for the four-SGCMG box arrangement is shown in Figure 3-3. The angular momentum envelope for all rooftop arrangements is an ellipsoidial surface and thus, there is not equal momentum saturation in all directions.

Rooftop arrangements are chosen for their compactness and the fact that they are free from elliptic internal singularities. Analysis provided in the literature proves that though these arrangements are free from elliptic internal singularities. However, they are not free from the impassable degenerate hyperbolic singularities [47].

35 Figure 3-3. Angular momentum envelope for a four-SGCMG box arrangement.

In Chapter 2, it was shown that the definiteness of the matrix Q determines if a system of SGCMGs is at an elliptic singularity. For a system of four SGCMGs, the largest Q can be is R2×2 excluding the case when the Jacobian goes rank 1 which will be discussed later. Therefore, excluding a rank 1 Jacobian, and if the determinant of

Q is strictly positive, then the system is at an elliptic singularity (e.g., λ1λ2 > 0 where

λ1,2 are an eigenvalues of Q). Consequently, when det(Q) ≤ 0, the system is at an hyperbolic singularity. There are a few general cases where singularities may occur for a four-SGCMG rooftop arrangement. The first case occurs when the torque vectors lying in the same plane of torque are either parallel or anti-parallel as shown in Figures 3-4 A

◦ ◦ and B where δ1 ± δ2 + 180 , δ3 ± δ4 + 180 and r is the axis intersecting the two planes of torque.

36 A Torque planes with parallel torque B Torque planes with one parallel and vectors anti-parallel torque vectors

Figure 3-4. Planes of torque for a four-CMG rooftop arrangement

37 A four CMG rooftop system in the configuration of Figure 3-4 A has a Jacobian  

c(θ)c(δ1) c(θ)c(δ1) −c(θ)c(δ3) −c(θ)c(δ3)     A =  s(δ ) s(δ ) −s(δ ) −s(δ )  (3–1)  1 1 3 3 

s(θ)c(δ1) s(θ)c(δ1) s(θ)c(δ3) s(θ)c(δ3) with angular momentum represented in the spacecraft-body frame (i.e., where the gimbals are enumerated counter-clockwise beginning at the spacecraft body x-axis)    

c(θ)s(δ1) −c(θ)s(δ3)         h = h1 + h2 + h3 + h4 = 2h0  −c(δ )  + 2h0  c(δ )  (3–2)  1   3 

s(θ)s(δ1) s(θ)s(δ3)

The singular direction for this case is found by cross product of τˆ1 and τˆ3  

 s(θ)s(δ1 + δ3)      s = −2s(θ)c(θ)c(δ )c(δ ) (3–3)  1 3 

c(θ)s(δ1 − δ3) with the resultant projection matrix

  c(δ1) 0 0 0       0 c(δ1) 0 0    P = 2h0s(θ)c(θ)   (3–4)  0 0 −c(δ ) 0   3 

0 0 0 −c(δ3) and the null-space of the Jacobian concatenated in matrix form is

  −1 0       1 0    N =   (3–5)  0 −1   0 1

38 2 2 The configuration in Figure 3-4 has the det(Q) = −16s (θ)c (θ)c(δ1)c(δ3). It should be noted that when P and Q are definite (i.e., ϵ = [+ + ++] or ϵ = [− − −−] where

ϵi = sgn(hˆi · s)), the system is at a external singularity. It was discussed in Chapter 2 that external (or saturation) singularities are elliptic. Therefore, if the matrix P is definite, then

2 2 the matrix Q is also definite. The det(Q) = −16s (θ)c (θ)c(δ1)c(δ3) will only be positive

when sgn(c(δ1)) ≠ sgn(c(δ3)) (i.e., at saturation singularity). The saturation singularity is not an internal singularity and therefore neither the rooftop and box arrangements

contain elliptic internal singularities for this case. It can be verified that the variations

of these cases such as (τˆ1 = −τˆ2), (τˆ2 = −τˆ4), (τˆ1 = −τˆ2) and (τˆ2 = τˆ4) all have det(Q) = 0 and therefore are hyperbolic internal singularities. The other case when the Jacobian of a four-CMG rooftop is singular occurs when

the torque vectors of the two parallel SGCMGs lie in the direction of the intersecting

torque planes r shown in Figures 3-5.

A Torque planes with parallel torque B Torque planes with anti-parallel torque vectors along r vectors along r

Figure 3-5. Torque planes traced out for a four-SGCMG rooftop arrangement

For Figure 3-5 A, the Jacobian is

39  

−c(θ)c(δ3) −c(θ)c(δ4) 0 0     A =  −s(δ ) −s(δ ) 1 1 (3–6)  3 4 

s(θ)c(δ3) s(θ)c(δ4) 0 0 with angular momentum vector

     

c(θ) −c(θ)s(δ3) −c(θ)s(δ4)             h = h1 + h2 + h3 + h4 = 2h0  0  + h0  c(δ )  + h0  c(δ )  (3–7)    3   4 

s(θ) s(θ)s(δ3) s(θ)s(δ4) assuming that the intersection of the planes of torque r = [0 1 0]T for this arrangement shown in Figure 3-5. For this situation, the singular direction is orthogonal to the intersection of the planes and is found to be   s(θ)     s =  0  (3–8)   c(θ) with the resulting projection matrix

  1 0 0 0     0 1 0 0   P = 2h0s(θ)c(θ)c(δ3)   (3–9) 0 0 0 0   0 0 0 0 and the null space basis for the Jacobian concatenated in matrix form is

  − −  1 s(δ4 δ3)/c(δ3)      1 0    N = null(A) =   (3–10)  0 −(c(δ )/c(δ ))   4 3  0 1

40 2 For this case, det(Q) = 2h0sin (2θ) > 0 which is an elliptic singularity but is not known

◦ yet to be one that is internal or external. For the anti-parallel case when δ3 = 180 + δ4 =

◦ 2 270 deg, the det(Q) = 2h0sin (2θ) < 0 and the singularity is hyperbolic. Notice that the diagonal entries of P that are zero correspond to the gimbal axis of that roof-side being along the singular direction s of the system.

Recall, from Chapter 2 that s = δˆi is a special case that happens only for DGCMGs

◦ ◦ and rooftop arrangements. For example, consider the case when δ3 = 180 + δ4 = 270 and an angular momentum of    0      h = h  (3–11)  2 0

− − h2 is desired along with, δ1 = δ2. The result of Eq.(3–11) is c(δ1) = c(δ2) = 2 . There

are two solutions for any possible value of h2 inside the momentum envelope due to symmetry and thus there is one null solution. Both of these solutions are singular and

◦ ◦ abide by δ3 = 180 + δ4 = 270 and therefore the null solutions that exist do not help in escape from the singularity. Thus, this is a case of a degenerate hyperbolic singularity at

dm that specific point on the momentum space. In addition, the value of d = 0 (i.e., where √ δ T ◦ ◦ m = det(AA )) for both δ3 = 180 + δ4 = 270 and for δ1 and δ2 free, and thus there is no set of gimbal angles that will provide a change in m (i.e., no null solutions to escape

singularity).

◦ To determine if the other cases of singularity when δ3 = δ4 = 90 deg are elliptic, dm ̸ we check if null motion exists orthogonal to the singularity (i.e., dδ = 0). The result of ◦ this case when δ3 = δ4 = 90 and δ1 and δ2 are free is consistent with Eq.(3–6). It is

dm found that for any choice of δ1 and δ2 gives dδ = 0 and therefore this is a family of elliptic dm singularities because not only does det(Q) > 0 but also dδ = 0. To visualize where the

41 external singularities occur for this case, the SGCMG angular momentum is plotted for

all variations of δ1 and δ2 of a four-SGCMG box arrangement shown in Figure 3-6.

Figure 3-6. Angular momentum envelope with plotted angular momentum combinations for the four-SGCMG box arrangement

In Figure 3-6, all possible combinations of angular momentum are plotted onto

◦ the angular momentum envelope in black for δ1 and δ2 and when δ3 = δ4 = 90 . In this figure, every combination of this situation is an external singularity. It can be

shown from symmetry that all permutations of this case have the same result in that

they are external singularities. Therefore, rooftop arrangements do not contain elliptic

internal singularities. In addition, the case when the Jacobian for a four-SGCMG rooftop

arrangement approaches rank 1 is a subset of this family. This family of configurations is defined as the cases where at least two torque vectors are parallel along the intersection

of the two torque planes r and the outcome of the det(Q) is not dependent on the gimbal angles. The rank 1 Jacobian case is a degenerate hyperbolic singularity for when the

42 torque vectors are all anti-parallel (i.e., 0 or 2h0) and a external singularity when all the angular momentum vectors are parallel (i.e., 4 h0). These results confirm those obtained via topology and differential geometry by

Kurokawa [41]. In reference [41], it was stated that any rooftop arrangements with no less than six units are free from internal impassable surfaces (i.e., elliptic internal singularities not including external singularities). Kurokawa concluded that there are impassible internal surfaces in the four-SGCMG rooftop arrangements that correspond to the singular direction s not contained in the plane spanned by the two gimbal axes δˆ1 and δˆ2. This is exactly the degenerate case shown in Eqs.(3–6)-(3–9) where s = δˆ1. The degenerate hyperbolic singularities for these arrangements lie on two circles with radius

◦ ◦ 2h0 when δ1 = δ2 and δ3 = 180 + δ4 = 270 and at zero momentum 0h0 when δ1 = −δ2

◦ ◦ and δ3 = 180 + δ4 = 270 shown as an example for the box arrangement in Figure 3-7 [41].

2

1 ) 0 0 Z(h

−1

−2 −2 −1 0 2 1 1 0 −1 2 −2 X(h ) Y(h ) 0 0

Figure 3-7. Degenerate hyperbolic singularities for the four-SGCMG box arrangement

The curves and point in Figure 3-7 are compartmentalized and not spread throughout the entire angular momentum envelope unlike elliptic singularities and thus,

43 constrained steering algorithms exist to avoid these regions while providing singularity avoidance using null motion.

3 3.1.3 4 Box 3 The 4 box arrangement is a subset of the box arrangement in which one of the SGCMGs is not used and left as a spare. This arrangement has the longest heritage

of flight due to its conservative nature. For this arrrangement, a pseudo-inverse is not

required to obtain a solution to the gimbal rates since the gimbal rates are found directly

from the inverse of a 3 × 3 Jacobian matrix [48]. The combination of this arrangement and the constrained angular momentum steering law limiting controllable SGCMG

angular momentum to a 1h0 radius of the angular momentum envelope, ensure the safest control of a system of SGCMGs [49]. This design although safe, may not be

practical for small satellite applications because the SGCMGs must be oversized to provide the desired performance (i.e., they do not take advantage of the entire

momentum envelope).

44 2

3 1.5

2 1 1 0.5 ) 0 0 ) 0 Z(h 0

−1 Z(h

−2 −0.5

−3 −1 3 2 3 −1.5 1 2 0 1 −1 0 1 −1 −2 −2 2 1 0 −2 0 −1 Y(h ) −3 −3 −2 −1 0 X(h ) 0 Y(h ) X(h ) 0 0 3 3 A External singular surface for 4 box B Internal singular surface 4 box

Figure 3-8. Singular surfaces showing 1h0 singularity free region

In this arrangement, there is a 1h0 radius of the angular momentum envelope that is guaranteed to be singularity free [48] which is shown by the red circle drawn on the external and internal singular surfaces of Figure 3-8. It should be mentioned

that because there is no longer a null space (i.e., using only 3 of the 4 SGCMGs),

any angular momentum point on the singular surfaces correspond to the location of a

elliptic singularity. This makes the constraining to the 1h0 sphere of angular momentum imperative.

3.1.4 Scissor Pair

The scissor-pair arrangement has three sets of collinear pairs of two SGCMGs

orthogonal to each other. This arrangement is constrained to have δ1 = −δ2 at all times for both CMGs to avoid internal singularities. With this arrangement shown in Figure 3-9,

full three axis control is possible with a full rank Jacobian matrix as long as it does not

extend past the maximum angular momentum of the system. As a consequence of the constraint for these pairs, only one-third of the entire angular momentum envelope is

utilized which will be troublesome for use on small satellites (i.e., six SGCMGs needed

for 2h0 of angular momentum). Use of these arrangements was found to conserve power when a single gimbal motor is used for each scissor pair [50]. Also, analysis has shown

45 that scissor pairs may be beneficial for space robotics application since their torque is unidirectional [51].

Figure 3-9. 3 Orthogonal scissor pairs of SGCMGs

Due to the gimbal angle constraint associated with this arrangement, internal singularities do not exist here. Also because of the gimbal angle constraint δ1 = −δ2, three orthogonal scissor-pairs contain only external singularities that occur when one or more of the pairs has an overall zero torque vector (i.e., undefined torque for scissor pair). When this occurs, the Jacobian matrix contains a column of zeros for the associated pair.

3.1.5 Pyramid

Pyramid arrangements of SGCMGs have independent planes of angular momentum and torque which form a pyramid. As a consequence of these independent planes of torque, these arrangements will never have the Jacobian matrix with rank less than 2.

This is shown in Figure 3-10 for a four-SGCMG pyramid cluster.

In terms of small satellite constraints and when utilizing the entire momentum envelope, the four SGCMG arrangement seems practical among all previously discussed arrangements for platforms requiring high torque and slew rates with near equal momentum saturation in three directions .

46 Figure 3-10. Planes of angular momentum and torque for a four-SGCMG pyramid

Figure 3-11. Four-SGCMG pyramid arrangement

Control of these arrangements is more complicated than rooftop and box arrangements due to the presence of elliptic internal singularities because null motion solutions do not exist. In addition, elliptic singularities do not have continuous gimbal trajectories associated the corresponding continuous angular momentum trajectories [47]. These arrangements are studied for their desirable momentum envelope (i.e., it is possible to get a near spherical angular momentum envelope with a skew angle of θ = 54.74 deg)

[52]. If high agility is what is needed and there are more relaxed pointing requirements, the pyramid may provide benefits over the other arrangements. Even if this is not the

47 case, if this arrangement is hosted on a small satellite and the attitude error induced from the torque error provided by the singularity escape of elliptic singularities is on the same order of the attitude determination sensors and/or methods, then the torque error used for singularity escape will be inconsequential.

3.2 Choice of Arrangement

Beyond the common arrangements of SGCMGs previously discussed, it is difficult to choose the arrangement of SGCMGs through shaping of the angular momentum envelope of the system. This is due to the locations of where internal singularities lie within the angular momentum envelope denoted by the internal singular surfaces (e.g., see Figure 2-6). These singularities are dispersed and may cover the entire angular momentum envelope leaving only very small singularity-free areas. Formulating the problem as a parameter optimization as in [53] can only provide the optimal arrangement for a given set of slews and initial gimbal angles which makes the problem more constrained than useful. For example, we can express the gimbal axes relation to the spacecraft body frame in terms of the Euler angles, two of which are the optimized constants inclination angle θi , spacing angle ϕi , and the third is the gimbal angle δi . The DCM that is used to transform from the body to the gimbal frame is

CGi B = C3(δi )C2(θi )C3(ϕi ) (3–12)

F The angular momentum of the SGCMGs is transformed from the gimbal G⟩ to the spacecraft body frame FB through this DCM as

∑n

h = CBGi hi (3–13) i=1 which is consistent with Eq.(2–4). Therefore, holding the spacing and inclination angles constant, the resultant angular momentum of the CMG system is an instantaneous

48 function of only the gimbal angles for SGCMGs. Considering this and the truncated dynamic model of SGCMGs from Chapter 2, the cost function

∫ ti+1 2 T T M = (−m + aτe τe + bδ˙ δ˙) dt (3–14) ti where a and b are scalars making the cost function unitless and τe = h˙ − h0Aδ˙, can optimize the system with respect to minimal torque error through the choice of the

Euler angles for a given slew, slew time, and initial conditions of the gimbal angles. This procedure for the parameter optimization is shown in Figure 3-12.

Figure 3-12. Optimization process block diagram

49 3.3 Simulation

An example simulation of a rest-to-rest attitude maneuver has the parameters in

Table 3-1. This simulation will shown the benefit of different arrangements on performing this maneuver (i.e., tracking the torque from the controller). It should be noted that the

initial conditions of the gimbal angles although are the same for every arrangement, they

produce a different initial CMG angular momentum.

Table 3-1. Model Parameters Variable  Value  Units 100 −2.0 1.5 J −2.0 900 −60  kgm2 1.5 −60 1000 T δ0 [0 0 0 0] deg T e0 [0.04355 − 0.08710 0.04355 0.99430] −− T ω0 [0 0 0] deg/s h0 128 Nms k 0.05 1/s2 c 0.15 1/s a 1 1/N2m2s2 b 1 1/s2 ∆t 0.02 s ess 0.0001 deg

The results were simulated using the following eigen-axis control logic [54]

τ = −2kJe − cJω + ω×Jω (3–15)

combined with a fourth-order Runga-Kutta integrator at a timestep ∆t until the steady-state error tolerance of the error quaternion eigen-angle ess was reached. The simulation compares the optimized solution to the four-SGCMG pyramid arrangement at a skew angle θ = 54.74 deg.

The results for this example at initial conditions δ0, e0, and ω0 have the solution for the system’s singular surfaces with calculated arrangement Euler angles shown in

Figure 3-13.

50 A External singular surface B Internal singular surface

Figure 3-13. Singular surfaces for the optimized arrangement at the Euler angles θ∗ = [170.2 13.6 85.5 168.0]T deg and ϕ∗ = [17.7 167.0 304.3 92.5]T deg

The gimbal rates for the optimized arrangement in Figure 3-14 A are approximately the same magnitude than that for the pyramid arrangement, although they have a smoother transient response.

400 dδ /dt 200 1 dδ /dt 300 2 100 dδ /dt 3 200 0 dδ /dt dδ /dt 4 1 −100 dδ /dt

/dt(deg/s) 100 /dt(deg/s) 2 δ δ d d −200 dδ /dt 0 3 dδ /dt −300 4 −100

0 20 40 60 0 20 40 60 Times(s) Times(s) A Gimbal rates for optimized arrangement B Gimbal rates for pyramid arrangement

Figure 3-14. Gimbal rates for the optimized and pyramid arrangements

The torque error shown in Figure 3-15 A for the optimized case is smaller magnitude than that for the pyramid arrangement due to the area under the curves thus, more torque error is added during the maneuver for the pyramid arrangement.

51

τ τ 0.1 e1 e1 τ τ 0.08 e2 0.5 e2 τ τ 0.06 e3 e3 0.04 0 (Nm) (Nm) e e τ 0.02 τ 0 −0.5 −0.02

−1 0 20 40 60 0 20 40 60 Times(s) Times(s) A Torque error for optimized arrangement B Torque error for pyramid arrangement

Figure 3-15. Torque error for the optimized and pyramid arrangements

For the optimized method, the singularity measure is far from singularity initially

and does not encounter it as shown in Figure 3-16 A. This is in contrast to that for the pyramid arrangement shown in Figure 3-16 B, which starts out initially far from singularity and then encounters singularity several times during the maneuver. The negative quadratic term present in the cost function of Eq.(3–14) for this singularity does

not weight distance from singularity as high as torque error which can be seen when comparing Figures 3-16 A and B to 3-15 A and B.

0.64 0.7 0.6 0.63 0.5 0.4 m 0.62 m 0.3 0.61 0.2 0.1 0.6 0 20 40 60 0 20 40 60 Times(s) Times(s) A Singularity measure for optimized arrange- B Singularity measure for pyramid arrangement ment

Figure 3-16. Singularity measure for the optimized and pyramid arrangements

52 Finally, the cost function of the optimized arrangement in Figure 3-17 A is less than that for the pyramid in B due to the are under the curves.

60 50 50 40 40

p 30

M 30 M 20 20

10 10

0 0 0 20 40 60 0 20 40 60 Times(s) Times(s) A Cost for optimized arrangement B Cost for pyramid arrangement

Figure 3-17. Optimization cost for the optimized and pyramid arrangements

These simulations support the idea that if it where mechanically possible to reconfigure the gimbal-axis arrangements in a timely manner, and the initial gimbal angles and maneuver of interest were known, a solution to the optimal CMG arrangement can be found. In addition, these simulations prove that you cannot simply choose an optimal arrangement because the problem is not only dependent on the attitude maneuver, but also dependent on the initial conditions of the gimbal angles.

If a desired arrangement is known while on-orbit and there was a mechanical way to reconfigure the SGCMG gimbal axes, such as in the Honeywell patent [55], then there would be merit in finding an algorithm that was successful in reorienting the gimbal axes of the CMG arrangement. Although, no algorithm exists to reorient the SGCMG gimbal axes while keeping spacecraft unperturbed. Also, such an algorithm would still require angular momentum offloading due to the nature of SGCMGs.

53 CHAPTER 4 SURVEY OF STEERING ALGORITHMS

A guidance, navigation, and control (GNC) system is composed of the loops shown in Figure 4-1

Figure 4-1. Outer and inner loops of GNC system

The outer most loop of a spacecraft GNC system concerns the navigation (i.e., provides the state knowledge) and is usually the minimum loop needed for any mission.

The second most outer loop is concerns the guidance of the system (i.e., provides the desired trajectories) (e.g., trajectories avoiding pointing a star camera towards the sun).

A loop inner to the guidance loop concerns the control of the system (i.e., generates an error of the state knowledge from the navigation loop with the desired trajectories from the guidance loop to be minimized). The inner most loop concerns the distribution of the desired control to the systems actuators (e.g., what thrusters need to fire, what reaction wheels or CMGs need to move). Steering algorithms are concerned with the inner most

54 loop of Figure 4-1 when the differential equation relating the control to the actuators is singular. When this equation is singular, the steering law realizes a solution.

4.1 Moore-Penrose Pseudo-Inverse

An early method used to map the gimbal rates from the required output torque

uses the minimum two-norm least squares solution also known as the Moore-Penrose

pseudo-inverse. The solution of the gimbal rates using this pseudo-inverse mapping has

the form

1 1 δ˙ = A+ h˙ = AT (AAT )−1 h˙ (4–1) h0 h0

+ where A is the Moore-Penrose pseudo-inverse, h0 is the magnitude of SGCMG angular momentum, h˙ is the SGCMG output torque, and δ˙ are the gimbal rates. The

Moore-Penrose pseudo-inverse, however, is singular when the Jacobian matrix A

has rank ¡ 3 [56]. It might seem intuitive that the addition of more SGCMG actuators

increases the possibility of having full rank, but the performance is not equally increased

for all of CMG arrangements. This is because there are 2n singular configurations for any given singular direction of a system containing n SGCMGs [41]. Also, the

Moore-Penrose pseudo-inverse and variations of it cause the system to move toward

singular states when performing discrete time control [47].

To handle cases when singularities may be encountered, steering algorithms are used. Steering algorithms can be broken down into the following groups as shown in

Figure 4-2

4.2 Singularity Avoidance Algorithms

Singularity avoidance algorithms, are methods which steer the gimbals of the

SGCMGs away from internal singularities. These methods either constrain the angular

momentum envelope and/or gimbal angles, or apply null motion to avoid singularity

encounters. As discussed in Chapter 2, a method that uses only null motion cannot avoid or escape elliptic internal singularities [44, 47].

55 Steering Algorithms

Singularity Singularity Singularity Avoidance Escape Avoidance and Algorithms Algorithms Escape Algorithms

Global Constrained Optimal Preferred LG GISL Avoidance Steering GSR SDA SPUD SR FSL HSL Steering Gimbal Angles Methods Logics

Constrained Global Constrained Gimbal Steering Momentum Angles

Figure 4-2. Steering algorithms

4.2.1 Constrained Steering Algorithms

Constrained steering algorithms either constrain the gimbal angles and/or useable angular momentum to avoid singularities. These steering laws are a form of singularity avoidance that takes into account the locations of singularities a priori. As a consequence of not using the entire angular momentum space, these steering logics are typically more effective for systems where the SGCMGs are oversized. Honeywell has patented methods that do not explicitly use null space but that implicitly do so by creating constraints that keep the gimbals away from singularity without needing to recognize their presence explicitly [57–59]. A simple example is the steering logic for scissored pairs in Chapter 3, where mere constraints are used to keep the array out of trouble. This method is able to guarantee singularity avoidance and an a available torque but reduces the available workspace of the system by requiring it to be singularity free [52, 60].

4.2.2 Null Motion Algorithms

4.2.2.1 Local gradient (LG)

Singularity avoidance algorithms known as local gradient (LG) methods use null motion to keep the Jacobian matrix from becoming singular. This is accomplished through choice of the null vector d to maximize an objective function that relates the

56 distance from singularity such as the Jacobian matrix condition number, smallest singular value [61, 62], or the singularity measure m which is expressed as

√ m = det(AAT ) (4–2)

An example of the null vector calculation is ( ) ( ) ∂f ∂m T −1 ∂m T d = ∇ f = = (4–3) δ ∂m ∂δ m2 ∂δ where the objective function f = 1/m [42, 63, 64]. Minimization of this objective function maximizes the distance from singularity by maximizing the singularity measure. The LG methods, however, cannot avoid or escape elliptic internal singularities because they apply only null motion [44, 64]. The null vector d can be arbitrary, although the projection matrix which maps it onto the null space is constrained.

4.2.2.2 Global avoidance/Preferred trajectory tracking

A way of choosing the null motion vector to steer gimbals to alternate nonsingular configurations before maneuvering is known as preferred trajectory tracking [63, 65–67].

Preferred trajectory tracking is a global method that calculates nonsingular gimbal trajectories offline. The gimbals converge to these trajectories using null motion to minimize an error (δ − δ∗). The gimbal rates using this method are

1 δ˙ = A+ h˙ + λ[1 − A+ A](δ − δ∗) (4–4) h0 where δ∗ are the preferred trajectories and λ is the singularity parameter defined by

−µm2 λ = λ0exp (4–5) with constants λ0 and µ. Since this method calculates the preferred trajectories offline, it is not real-time implementable. Also, preferred tracking relies entirely on null motion and thus will be unable to escape elliptic internal singularities.

57 4.2.2.3 Generalized Inverse Steering Law (GISL)

The Generalized Inverse Steering Law (GISL) provides a pseudo-inverse which is a

variation of the Moore-Penrose pseudo-inverse. This method defines another Jacobian matrix B which has each of its columns orthogonal to the associated column of the

original Jacobian matrix A (i.e., ai ⊥bi , not necessarily ai ⊥ bj where A = [a1 a2 a3 a4] and

B = [b1 b2 b3 b4])[68]. Therefore, as an example for a four-CMG pyramid arrangement, the matrix A and B have the following form  

−cθcos(δ1) sin(δ2) cθcos(δ3) −sin(δ4)      A =  −sin(δ ) −cθcos(δ ) sin(δ ) cθcos(δ ) (4–6)  1 2 3 4 

sθcos(δ1) sθcos(δ2) sθcos(δ3) sθcos(δ4) and  

−cθsin(δ1) −cos(δ2) cθsin(δ3) cos(δ4)      B =  cos(δ ) −cθsin(δ ) −cos(δ ) cθsin(δ ) (4–7)  1 2 3 4 

sθsin(δ1) sθsin(δ2) sθsin(δ3) sθsin(δ4)

where cθ, sθ are the cosine and sine of the pyramid skew angle θ and δi are the gimbal angles, respectively. The pseudo-inverse of this steering law with the discussed matrices

is

AGISL = (A + B)T (A(A + B)T )−1 (4–8)

It is important to note that this pseudo-inverse does not eliminate the problem of internal

singularities. The GISL adds null motion from the addition of B and therefore couples the null and forced solution into a single inverse and thus, it is not able to avoid elliptic

internal singularities.

Proof:

Claim: The GISL provides only null motion through B

58 δ˙ = AGISL = (A + B)T (A(A + B)T )−1 h˙

The torque error is h˙ − Aδ˙ = A(A + B)T (A(A + B)T )−1 h˙ − h˙ = h˙ − h˙ = 0

If the matrix B = αA

then AGISL = ((1 + α)A)T ((1 + α)AAT )−1 = A+

Therefore, the matrix B whose components are orthogonal to A must only provide null motion and those that are along A vanish. Because, the GISL or any generalized inverse used for singularity avoidance only adds null motion, it is unable to avoid elliptic internal singularities. 4.3 Singularity Escape Algorithms

Singularity escape methods, known as pseudo-inverse solutions, add torque error to pass through or escape internal singularity [39, 40, 69, 70]. These methods do not take

into consideration the type of internal singularity that is being approached when adding

torque error.

4.3.0.4 Singularity Robust (SR) inverse

The Singularity Robust (SR) inverse is a variation of the Moore-Penrose pseudo-inverse

[69] where, a positive definite matrix λ1 composed of an identity matrix scaled by the

singularity parameter in Eq.(4–5) is added to the positive semi-definite matrix AAT . The pseudo-inverse of this method has the form

ASR = AT (AAT + λ1)−1 (4–9)

The SR inverse is able to escape both hyperbolic and elliptic singularities [44], although,

is ineffective in gimbal-lock escape. To overcome this situation, a modified SR inverse

known as the Generalized Singularity Robust (GSR) pseudo-inverse was developed

[39, 40].

59 4.3.0.5 Generalized Singularity Robust (GSR) inverse

The GSR inverse approach replaces the constant diagonal positive definite matrix

λ1 with a time-varying positive definite symmetric matrix λE  

 1 ϵ1 ϵ2     E = ϵ 1 ϵ  , ϵi = ϵ0sin(ωi t + ϕi ) (4–10)  1 3

ϵ2 ϵ3 1 where the off-diagonal terms of E are time dependent trigonometric functions with

frequency ωi and phase shift ϕi . The GSR inverse provides a means of escape of the gimbal-lock configuration associated with a system of SGCMGs. The GSR pseudo-inverse has the form

AGSR = AT (AAT + λE)−1 (4–11)

and like the SR inverse, is guaranteed to avoid both hyperbolic and elliptic internal

singularities.

4.3.0.6 Singular Direction Avoidance (SDA)

Another modification of the SR inverse known as the Singular Direction Avoidance

(SDA) only applies torque error in the singular direction and therefore reduces the amount of torque error needed for singularity escape. The SDA method decomposes the

Jacobian matrix using a singular value decomposition (SVD) to determine its singular

values. The matrix of singular values is regulated with the addition of error to the

smallest singular value σ3 so that the pseudo-inverse is defined. The pseudo-inverse using SDA has the form

60   1  σ 0 0   1     0 1 0  SDA  σ2  SDA T A = V   = VΣ U (4–12) σ3  0 0 2   σ3 +λ  0 0 0

where σi are the singular values. Regulating only the smallest singular value, reduces the amount of torque error added and creates smoother gimbal rate trajectories when

compared to the SR and GSR inverses [70]. This is obvious when the SR inverse

decomposed using SVD as

 

σ1  σ 2+λ 0 0   1   σ2   0 2 0  SR  σ2 +λ  T SR SR T A = V   U = A = VΣ U (4–13) σ3  0 0 2   σ3 +λ  0 0 0 where all the singular values are regulated and hence there is torque error in all

directions. It is clear from Eqs.(4–12) and (4–13) that SR inverse and SDA are

susceptible to gimbal-lock because when the output torque is along the singular

SDA T SR T direction h˙ ∝ s = u3 then it is in the null(Σ U ) and null(Σ U ) thus encountering gimbal-lock as no consequence to the size of the torque error added from λ. Without the perturbations to the Jacobian matrix that are not gimbal state dependent at gimbal-lock the system remains locked in a singular configuration.

Recall from Chapter 3, that for a four CMG pyramid arrangement, the rank is never less than two and therefore it is acceptable to regulate only the smallest singular value.

However, if the skew angle is made close to 0, 90, 180, or 270 deg (i.e., box or planar

arrangement), the Jacobian matrix for these arrangements will have at least two small

singular values when near singularity and regulation of the smallest singular value may be ineffective.

61 4.3.0.7 Feedback Steering Law (FSL)

The Feedback Steering Law (FSL) provides a solution to the gimbal rates without

using an inverse. This method is derived from a minimization of the torque error which is similar to how the SR inverse is derived. The optimization for defining FSL has the

following structure

      T 1 τe K1 0  τe min       (4–14) δ˙∈R4 2 δ˙ 0 K2 δ˙

where K1 and K2 are positive definite gain matrices, and τe = h˙ − Aδ˙. This minimization

−µm2) reduces to the SR inverse when K1 = 1 and K2 = λ1 and where λ = λ0exp from Eq.(4–5).

The FSL method has K2 = 1 and K1 = K(s) as a compensator. The compensator is

derived from an H∞ minimization   −1  w1(s)[1 + AK(s)]  min   (4–15) K(s)∈R3×3 −1 ∞ w2K(s)[1 + AK(s)]

where w1(s) and w2 are weighting matrices. The w1(s) matrix is defined below  

AK BK  w1(s) =   (4–16) CK 0

where AK , BK , and CK are matrices associated with state-space model of the system.

The w2 matrix is constant and is

1 w = 1 × (4–17) 2 w 4 4 where the constant w bounds the gimbal rates. The state-space model of the system has the form

62 ˆx˙ = AK ˆx + BK τe (4–18) δ˙ = CK ˆx

The output matrix CK is an explicit function of the CMG gimbal angles expressed as

T 2 CK = A bω P (4–19) with b as a positive scalar associated with the bandwidth and P is the steady-state solution to the Riccati equation of the state-space system in Eq.(4–18). Using the feedback of the system, Eq(4–18) will provide a solution to the gimbal rates that does not require a pseudo-inverse. It should be noted that the system may start out stable, however, the observability of the system may be lost resulting in instability, due to CK ’s

−1 explicit dependence on the gimbal angle (i.e., H(s) = CK (s1 − AK ) BK where CK ≠ constant). For further information on the development of this method, please see [71].

This steering algorithm was shown to go unstable for certain values of CK corresponding to specific gimbal angles sets (see [72]).

4.3.0.8 Singularity Penetration with Unit-Delay (SPUD)

The Singularity Penetration with Unit Delay (SPUD) algorithm escapes singularity through reuse of the previous gimbal rate command when at a certain threshold of singularity [73]. The previous command is saved through a zeroth-order hold to the system. Escape of a singularity is always possible unless the system is initially at the threshold of singularity, then there is no previous command to use for singularity avoidance. Also, SPUD is not intended for attitude tracking maneuvers. The SPUD algorithm accumulates attitude tracking error while escaping singularity and there are no guarantees on how long it will take to escape singularity and how large the torque disturbance will be on the spacecraft as its performance is directly associated with the system and the choice of singularity threshold.

63 4.4 Singularity Avoidance and Escape Algorithms

Singularity avoidance and escape algorithms avoid singularities through null motion

whenever possible and use torque error for escape when they are not. 4.4.0.9 Preferred gimbal angles

Preferred gimbal angles are a set of initial gimbal angles for SGCMGs that can be reached by null motion. These angles are preferred since maneuvers originating

from them avoid a singular configuration [74]. This set of angles is found by backwards integration of the Eq.(4–9) and the attitude equations of motion. It has been shown that

this method cannot avoid singularities if the initial set of gimbal angles is δ0 = [45 −45 45 −45]T deg [74]. Since the null space projection matrix is undefined at singularity, the SR inverse is used in place of the Moore-Penrose pseudo-inverse of A in δ˙n as

SR δ˙n = [1 − A A]d (4–20)

As a result, this causes the system to add torque error when at singularity. In practice,

this method acts as an offline optimization which determines the initial set(s) of the

gimbal angles that will give singularity free maneuver(s). However, it is not possible to go

from one to any point in gimbal space through null motion itself because there will never be n dimensions of null space.

4.4.0.10 Optimal steering law (OSL)

The Inner-Product Index (IPI) combined with the optimal steering law (OSL) is used to determine a steering algorithm that produces minimum torque error while both

avoiding and escaping internal singularities [75]. The singularity index is added to the minimization

1 min [−cV (δ + δ˙∆t) + δ˙T Wδ˙ + eT R−1e] (4–21) δ˙∈R4,e∈R3 2

64 where ∆t is the one-step time delay, V (δ + δ˙∆t) is the IPI, τe = h˙ − Aδ˙ (i.e., torque error), c is a positive scalar, and W and R−1 are positive definite weighting matrices. The

IPI is approximated by a Taylor series expansion up to the 2nd order as

∂V T 1 ∂2V V (δ + δ˙∆t) ≈ V + δ˙T ∆t + δ˙T δ˙∆t2 (4–22) δ ∂δ δ 2 ∂δ2 δ where the IPI V is expressed as a sum of square of inner products of the column vectors of the Jacobian.

1 ∑4 V = (aT a )2 (4–23) 2 i j i=j=1,i≠ j The result of the minimization in Eq.(4–21) using this approximation of V is

δ˙ = H−1 AT (AH−1 AT + R)−1 h˙ + [H−1 AT (AH−1 AT + R)−1 AH−1 − H−1]g (4–24) where the Hessian matrix H is defined as

H = c∆t2ggT + W (4–25)

∂V T with gradient g = ∂δ . The weighting matrix R shown previously in the minimization of δ Eq.(4–21), is expressed as   0 0 0      T R = U 0 0 0  U (4–26)   −µσ2 0 0 λ0exp 3 where σ3 is the smallest of the singular values of the Jacobian matrix, λ0 and µ are positive scalars and U is the unitary matrix made up of the left singular vectors from the singular value decomposition of the Jacobian matrix A. This addition of torque error into the gimbal rate state equation is analogous to the SDA method except that it is also

65 added to the free response solution [70]. It should be noted that this steering algorithm does not consider the form of internal singularities and therefore, does not truly minimize the amount of torque error for singularity escape. This is because non-degenerate hyperbolic singularities are avoidable through null motion without the use of torque error.

At a non-degenerate hyperbolic singularity R is nonzero and thus torque error is still added (see [72]).

4.5 Other Steering Algorithms

Other published steering algorithms that have not been discussed can be found in the references [44, 61, 76–81]. These methods include mathematical techniques such as neural networks, optimization, and game-theory.

4.6 Steering Algorithm Computation Comparison

An analysis comparing the computation for the implementation of the mentioned steering algorithms is difficult due to lack of information on how some were coded in literature. For example, some of these algorithms are offline and may require a large number of memory calls and stored memory but not as many flops. It is however, useful to quantifying some of the previously discussed steering algorithms in terms of

floating point operations that are not calculated offiline. These are shown in Table 4-1 for algorithms where flops make a good comparison. In this table, the metric of comparison is an approximate number of flops per time step.

Table 4-1. Algorithm Flops m = row(A) and n = column(A) Variable Value MP O(m4) LG O(m4) GISL O(m4) SR O(m4) GSR O(m4) SDA O(nm3) FSL O(mn2) SPUD O(m4) Optimal Steering O(m4) + O(nm3)

66 It should be mentioned that many of the steering algorithms discussed have the same order of magnitude of flops (e.g., MP, LG, GISL, SR, GSR, and SPUD) due to the approximate number of flops for a Gauss-Jordan matrix inverse. It is assumed that the calculation of the gradient vector for LG, and OSL is in memory and that the flops associated with then are on a lower order of magnitude that an SVD or Gauss-Jordan matrix inverse. The OSL has to do both SVD for calculation of the R matrix and the

Gauss-Jordan matrix inverse and therefore has O(m4) + O(nm3) flops. The addition of

O(m4) + O(nm3) is inserted for the approximate flops of OSL because depending on the amount of SGCMGs this algorithm is working for O(m4) < O(nm3). The FSL has the lowest number of flops because it does not require and SVD or inverse, although it is also not an exact mapping as previously discussed.

67 CHAPTER 5 STEERING ALGORITHM-HYBRID STEERING LOGIC

5.1 Hybrid Steering Logic

Existing steering logics (see Chapter 4) do not explicitly consider the type of singularity that is being encountered and thus, do not completely address attitude tracking performance of SGCMG attitude control systems. A proposed method known as the Hybrid Steering Logic (HSL) which utilizes the knowledge of the type of singularity encountered (i.e., elliptic or hyperbolic singularities) to improve the attitude tracking performance of the SGCMG attitude control system, is developed for a four-SGCMG pyramid arrangement at a skew angle θ = 54.74 deg. By using a hybrid approach, HSL acts as an LG method (i.e., null motion for singularity avoidance) at hyperbolic singularity and an SDA method (i.e., pseudo-inverse solutions for singularity escape) at elliptic singularity. Also, because HSL is developed for a four-SGCMG pyramid arrangement, there is no existence of degenerate-hyperbolic singularities [41]. The challenge is to develop the appropriate singularity metrics such that the LG and SDA components of the hybrid strategy do not counteract each other during operation. 5.1.1 Internal Singularity Metrics

The singularity metrics developed are of similar form as the singularity parameter in Eq.(4–5) with the addition of terms relating to the form of the actual singularity.

−aα −µ1m α = α0exp exp (5–1)

−bβ −µ2m β = β0exp exp (5–2) where a, b, µ1, µ2, α0 and β0 are positive scalar constants and m is the singularity measure as defined in Eq.(4–2). Away from singularity, a four-SGCMG pyramid arrangement at a skew angle θ = 54.75 deg, has the matrix Q ∈ R. At singularity this SGCMG arrangement has Q ∈ R2×2 (see Chapter ??) and therefore, the det(Q)

68 will be zero or negative (i.e., Q is negative semi-definite or indefinite) for hyperbolic singularities and positive (i.e., Q is definite) for elliptic singularities. Taking this into

account, parameters α and β are defined as

α = |Q0 − det(Q)| (5–3)

1 1 β = = (5–4) |Q0 − det(Q)| α

where Q0 is a scalar value chosen on the same order of magnitude of det(Q) but

greater to scale the response of α and β. It is difficult to analytically define Q0 since it depends on the maximum value of det(Q) (i.e., det(Q) varies with gimbal angle and therefore the maximum must span all combinations of the gimbal angles) which is of high dimensionality and highly nonlinear. However, through simulation of a four-SGCMG pyramid arrangement at a skew angle θ = 54.75 deg, it was found that |det(Q)| < 1 and therefore we define Q0 ≡ 1. In addition, it is important to note that the constant parameters a, b, µ1, µ2, α0, and β0 are used to morph the HSL steering logic into the respective LG and SDA methods when appropriate: (e.g., if the parameters a = b =

α0 = 0 and β0 ≠ 0 then the HSL method is the LG method). Therefore, the choice of metrics α and β in this way ensures that null motion will be added when approaching a hyperbolic singularity and torque error with less null motion will be added when approaching an elliptic singularity. It should be noted that when using HSL det(Q) is normalized by the nominal angular momentum h0. 5.1.2 Hybrid Steering Logic Formulation

The proposed steering logic is defined as

1 δ˙ = ASDA,αh˙ + β[1 − A+A]d (5–5) h0 where ASDA,α is

69   1  σ 0 0   1     0 1 0  SDA,α  σ2  T A = V   U (5–6) σ3  0 0 2   σ3 +α  0 0 0

If it is assumed that the analytic function for the gradient vector d is derived offline and the calculation of it at each time-step is less than that for SVD, this algorithm has the same number of flops on order as SDA from Table 4-1 of O(nm3) from the SVD. The

difference between the conventional ASDA and ASDA,α is the parameter that regulates

SDA σ3. In A , the regulation parameter is γ (i.e., different from λ in Chapter 4 by using m instead of m2) which is

−µm γ = γ0exp (5–7)

SDA,α with positive constants γ0 and µ, but with A the singularity parameter is α defined in Eq.(5–1) which regulates the amount of induced torque error in the vicinity of elliptic

singularities. Through a SVD decomposition of A, Eq.(5–5) can be written as   1  1 0 δ˙ = ASDA,αh˙ + β[1 − V   VT ]d (5–8) h0 0T 0

Here, the null motion projection matrix is expressed as a function of nonsingular

matrices V. Also, very robust numerical algorithms exist for computing the SVD, so

its computational risk in a real-time implementation is not particularly high.

The scalar that regulates the magnitude of the null motion is β. The null vector d is in the direction of the gradient of f = −det(AAT ) = −m2 and maximizes the distance

from singularity.

This choice of this objective function reduces the computation needed for the

gradient (i.e., the derivative of (−det(AAT )) is less computationally intensive than the

70 √ derivative (det(AAT )) and ensures that the addition of null motion will not approach 1 ∂f − 1 ∂m infinity at the region of singularity for cases such as f = m and then ∂δ = m2 ∂δ . It should be mentioned that the null vector is a nonlinear function of the gimbal angles and

is simplified due to the symmetry of the four CMG pyramid arrangement. To prove the

feasibility of HSL, a stability analysis is conducted. 5.2 Lyapunov Stability Analysis

The candidate Lyapunov function

1 V = ωT K−1Jω + eT e + (1 − e )2 (5–9) 2 4 is chosen for this analysis and can be rewritten as

V = zT Mz (5–10)

T T − T 1 −1 where z = [ω e (1 e4)] and M = diag( 2 K J, 1, 1). Consequently the Lyapunov function is bounded as

2 2 λmin||z|| ≤ V ≤ λmax ||z|| (5–11)

where λmin and λmax denote the minimum and maximum eigenvalues of M. This bound will become useful later in the analysis.

A rest-to-rest quaternion regulator controller is given by Eq.(5–12) for the internal

control torque τ , is chosen for its flown heritage and the fact that it yields an global asymptotic stable control solution proven through LaSalle’s Invariant Theorem [63].

τ = −Ke − Cω + ω×Jω (5–12)

Gain matrices K = 2kJ and C = cJ of Eq.(5–12) are positive definite and symmetric.

Assuming rigid body dynamics, the spacecraft’s angular momentum is given by

71 H = Jω + h (5–13)

The rotational equations of motion come from taking the inertia time derivative of Eq.(5–13) as

−1 × ω˙ = J [τact − ω Jω] (5–14)

with SGCMG output torque

× h˙ = −τ − ω h = h0Aδ˙ (5–15)

where ω is the spacecraft angular velocity, J is the spacecraft centroidal inertia, H is the total system angular momentum, and h is the angular momentum from the CMGs.

The spacecraft’s angular velocity and the CMG angular momenta are governed by

Eqs.(5–14) and (5–15) respectively, where τact is the actual control torque (i.e., may differ due to induced torque error for singularity escape). It is assumed here that the

contribution to the dynamics from the gimbal-flywheel assembly inertias is negligible and therefore J is constant.

The actual control torque τact based on the mapping of the gimbal rates is

  1 0 × SDA,α   T × τact = −h0Aδ˙ − ω h = −A(A h˙ + β[1 − V   V ]d) − ω h (5–16) 0T 0

and needs to be considered in the Lyapunov analysis for stability of the attitude

controller/steering algorithm combination. When simplified, Eq.(5–16) becomes   0 0 0      T × τact = U 0 0 0  U [−τ − ω h] + τ (5–17)   −α 0 0 2 σ3 +α

where the stability of the system is affected by the torque perturbation matrix ϵHSL from ASDA,α defined as

72   0 0 0      T ϵHSL = U 0 0 0  U (5–18)   α 0 0 2 σ3 +α The spacecraft attitude error kinematics is governed by

1 1 ˙e = − ω×e + ωe (5–19) 2 2 4

1 ˙e = − ωT e (5–20) 4 2

where e is the quaternion error vector elements and e4 is its scalar element. The time derivative of the Lyapunov function is

1 1 1 V˙ = ωT K−1[τ − ω×Jω] + 2eT [− ω×e + ωe ] + 2(1 − e ) ωT e (5–21) act 2 2 4 4 2

Equation(5–21) can be reduced by substituting in the expression for τact from Eq.(5–17) and the desired control torque vector τ from Eq.(5–12). The time derivative of

the Lyapunov function now yields

T −1 × T −1 V˙ = −ω K [C − ϵHSL(C + H )]ω + ω K ϵHSLKe (5–22)

or more compactly

c c V˙ = − ωT ω + ωT J−1ϵ Jω + ϵ (5–23) 2k 2k HSL 1 where 1 ϵ = ωT J−1ϵ H×ω + ωT J−1ϵ Je (5–24) 1 2k HSL HSL

73 α Since 2 ≤ 1, Eq.(5–18) can be used to rewrite Eq.(5–23) as σ3 +α   1 0 0    ˙ c T −1   T T V ≤ − ω J U 0 1 0  U Jω + ϵ1 = −ζω R1ω + ϵ1 (5–25) 2k  

0 0 λ1

and can be further bounded as

2 V˙ ≤ −λ1ζ||z|| + ϵ1 (5–26)

where λ1 is the minimum eigenvalue of the positive semi-definite matrix R1 (i.e., λ1 = 0 c || || at singularity), ζ = 2k , and z is defined in Eq.(5–10). Substituting Eq.(5–11) into Eq.(5–26) yields

λ1ζ V˙ ≤ − V + ϵ1 (5–27) λmax The solution to the differential equation in Eq.(5–27) in a Volterra integral form is ∫ t (− λ1ζ t) (− λ1ζ (t−τ)) V ≤ V (0)exp λmax + exp λmax ϵ1(τ)dτ (5–28) t0

The error can be bounded from Eq.(5–28) as

∫ t λ ζ λ ζ 2 V (0) (− 1 t) 1 (− 1 (t−τ))ϵ (τ)dτ ||z|| ≤ exp λmax + exp λmax 1 (5–29) λmin λmin t0

At singularity when λ1 = 0, the error is

∫ t 2 1 ||z|| ≤ Vs + ϵ1(τ)dτ (5–30) λmin ts

where Vs is the error at time the occurrence of singularity at time ts . Stability cannot be proven from Eq.(5–30). It is assumed that the system will not remain locked in singularity except for the special case of gimbal-lock. If components

of the torque needed for stability are actually in the singular direction, periods of

instability may occur at singularity. The duration of this instability is dependent on

the selection and sizing of the singularity parameters α and β which provide torque

74 error for singularity escape and/or null motion for singularity avoidance. From a practical perspective, stability cannot be proven for this Lyapunov function at singularity, since at

singularity, there is no torque available in the singular direction.

For the special case of a singularity with gimbal-lock, the angular velocity of

the spacecraft is constant assuming the absence of friction and external torques in

the system. In this case, the contribution from ϵ1 to the error is bounded and even sometimes zero. This can be shown by evaluating the expression for the angular

acceleration at gimbal-lock which is

ω˙ = 0 = J−1[0 + ω×H] (5–31)

It is clear that Eq.(5–31) is satisfied only when the product ω×H = 0 which is only true when ω is parallel to H, ω = 0, or H = 0. When ω is parallel to H or H = 0,

T −1 ϵ1 = ω J ϵHSLJe which is a bounded sinusoid whose integral is also a bounded sinusoid. Therefore, for these two cases, the error is bounded at gimbal-lock. When

ω = 0, ϵ1 = 0 and the error is simply locked at Vs . It should be mentioned that at times away from singularity, the error monotonically decreases because the contribution

from ϵ1 to the error becomes negligible. Care needs to be taken in the design of the singularity parameter so that the minimum steady-state error is achieved while meeting

the constraints of the actuators.

The steady-state error assuming that the systems has a singularity free period

towards the end of the maneuver (i.e., does not end at singularity) is

∫ ∞ λ ζ λ ζ 2 1 (− 1 ∞) ( 1 τ) ||z(∞)|| ≤ exp λmax exp λmax ϵ1(τ)dτ (5–32) λmin ts This expression is indeterminate so application of L’Hopital’s rule to Eq.(5–33) yields

∫ λ ζ d 1 t ( 1 τ) exp λmax ϵ1dτ λ dt λmin ts − max ∞ lim λ ζ = ϵ1( ) (5–33) t−→∞ d ( 1 t) λmax λminλ1ζ dt exp

75 which suggests that a sufficiently large value of c (i.e., larger ζ) will lower the amount of steady-state error giving you a uniformly-ultimately bounded (UUB) result away from singularity. When the maneuver is finished, the effect of ϵ1 on the error will become a constant assuming the maneuver ends at rest. It should be noted that away from singularity the size of ϵ1 exponentially decreases due to the behavior of ϵHSL. The difference in impact of HSL rather than SR inverse on stability can be observed from the magnitude of the positive semi-definite matrix ϵHSL in Eq.(5–18) compared to the matrix shown in Eq.(5–34). The ϵSR matrix has a larger norm and therefore has a worse UUB even for sufficiently large values of ζ. From comparing Eqs.(5–6) and (5–18), the SDA method has a similar amount of torque error added when compared to HSL, although it will add this torque error whenever the singularity approached not taking into account the form.   γ  σ2+γ 0 0   1   γ  T ϵSR = U U (5–34)  0 σ2+γ 0   2  γ 0 0 2 σ3 +γ The above results are only for the attitude controller/steering algorithm combination.

For example, an attitude controller whose torque trajectory was chosen to avoid the occurrence of singularities may not have the periods of possible instabilities at singularity and thus may provide better stability performance. However, no real-time controller of this form exists (i.e., one that ensures singularity avoidance) and thus was not considered in the following simulations.

5.3 Numerical Simulation

To evaluate the performance of the proposed HSL against heritage steering logics (i.e., LG and SDA), simulations were performed using a four-SGCMG pyramidal arrangement with a skew angle of θ = 54.74 deg. To ensure a fair comparison, the control logic and satellite model were identical for all simulations. For each steering

76 algorithm, three different scenarios were simulated: (1) starting in a zero-momentum configuration δ = [0 0 0 0]T deg (i.e., far from singularity); (2) starting near an elliptic

external singularity δ = [105 105 105 105]T deg; and (3) starting near an hyperbolic singularity δ = [15 105 195 −75]T deg. The singularity conditions were verified for each

case by observing the singularity measure defined in Eq.(4–2). For these simulations, the following performance measures were compared: (i) the transient response of the

error quaternion, (ii) the amount and duration of singularity encounter, (iii) the magnitude

of gimbal rate, (iv) the amount of torque error (i.e., h˙ − h0Aδ˙) for singularity escape, and (v) null motion contribution. Additionally, α, β, and det(Q) are also considered.

The Jacobian associated with this pyramidal configuration is  

−c(θ)c(δ1) s(δ2) c(θ)c(δ3) −s(δ4)      A =  −s(δ ) −c(θ)c(δ ) s(δ ) c(θ)c(δ ) , (5–35)  1 2 3 4 

s(θ)c(δ1) s(θ)c(δ2) s(θ)c(δ3) s(θ)c(δ4) and the associated angular momentum vector is  

−c(θ)s(δ1) − c(δ2) + c(θ)s(δ3) + c(δ4)     h = h0  c(δ ) − c(θ)s(δ ) − c(δ ) + c(θ)s(δ )  (5–36)  1 2 3 4 

s(θ)(s(δ1) + s(δ2) + s(δ3) + s(δ4)) All simulations are performed using a fourth-order fixed time step Runga Kutta with the

parameters shown in Table 5-1. The actuator parameters chosen for this simulation are

based on the Honeywell M95 SGCMGs, which are sized for the satellite system chosen

for simulation [82].

77 Table 5-1. Model Parameters Variable  Value  Units 100 −2 1.5 J  −2 900 −60  kgm2 1.5 −60 1000 θ 54.74 deg T e0 [0.04355 0.08710 0.04355 0.99430] −− T ω0 [0 0 0] deg/s h0 128 Nms k 0.05 1/s2 c 0.15 1/s m0 0.5 −− ess 0.001 deg ∆t 0.02 sec

78 It should be noted that care must be taken when numerically defining the singular direction since s = 0 when the system has a full rank Jacobian. Because the rank is numerically determined, a tolerance should be set on the singularity measure to determine what is considered full rank. For the results presented in this paper, rank deficiency for the HSL was defined as m ≤ m0 where for this simulation m0 = 0.5. The simulations terminate when the steady state error ess defined in Eq.(5–37) is achieved.

−1 −1 ess = min[2sin (||e||), 2π − 2sin (||e||)] (5–37)

The magnitude of ess given in Table 5-1 is based off reference [38]. 5.3.1 Case 1: At Zero Momentum Configuration δ = [0 0 0 0]T deg

The first set of simulations has initial gimbal angles at δ = [0 0 0 0]T deg which represents a scenario starting far away from singularities. Figure 5-1 shows this configuration which is also a typical startup configuration for a four-SGCMG pyramid arrangement.

Figure 5-1. Zero-momentum configuration of a four-SGCMG pyramid arrangement

79 5.3.1.1 Local gradient simulation results

The parameters for the LG simulation are: α0 = a = b = µ1 = 0 and µ2 = β0 = 1. Figures 5-2 A and B show that the LG method was able to perform the maneuver to the given error tolerance ess without inducing torque error. The absence of torque error in Figure 5-2 B is due to the zero value of singularity metric α in Figure 5-2 C (i.e., LG is an exact mapping). The null motion shown in Figure 5-3 B is small but significant when compared to the total output gimbal rates in Figure 5-2 A. This is a consequence of the singularity metric β in Figure 5-3 D. Figures 5-3 C and D show that the maneuver was completed without singularity encounter.

−14 x 10 0.04 e 1 4 0.02 e 2 e 0 3 3

e −0.02 (Nm)

e 2 −0.04 τ

−0.06 1

−0.08 0 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A Quaternion error vector elements B Torque Error

0.1 0.3367 0.05 0.3366 β α 0 0.3366

−0.05 0.3365

−0.1 0.3365 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Alpha D Beta

Figure 5-2. Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 at zero momentum

80

dδ /dt n 2 1 0.1 1 dδ /dt n 1 2 2 dδ /dt 0.05 n 3 3 0 dδ /dt n 4 4 0

/dt(deg/s) −1 n(deg/s) δ d −2 −0.05 −3

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A CMG gimbal rates B Null motion

0.1 1.0891 1.089 0.05 1.0889

m 0 1.0888 det(Q) 1.0887 −0.05 1.0886

1.0885 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-3. Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 at zero momentum (contd.)

81 5.3.1.2 Singular Direction Avoidance simulation results

The parameters for the SDA simulation are: α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1. This method shows similar results in the transient response of the error states in Figure 5-4 A to that for LG in Figure 5-2 A with the exception of nonzero torque

error seen in Figure 5-4 B. Also, this method had a slower rate of convergence to the

steady-state error ess than LG as evident from the time in simulation in Figure 5-2 A. This is due to the small nonzero value of the singularity metric α, shown in Figure 5-4 C.

Figure 5-5 B shows a zero null motion contribution to the gimbal rates in Figure 5-5 A for SDA. Figures 5-5 C and D and Figures 5-3 C and D are almost equivalent because the

system started far away from singularity.

82

0.04 e 1 0.035 0.02 e 2 0.03 e 0 3 0.025 0.02 e −0.02 (Nm) e −0.04 τ 0.015 0.01 −0.06 0.005 −0.08

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A Quaternion error vector elements B Torque Error

−3 x 10 0.1

3.367 0.05

3.3665 β α 0

3.366 −0.05

3.3655 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Alpha D Beta

Figure 5-4. Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 at zero momentum

83 0.1 dδ /dt n 2 1 1 dδ /dt n 1 2 0.05 2 dδ /dt n 3 3 0 dδ /dt n 4 0 4

/dt(deg/s) −1 n(deg/s) δ d −2 −0.05

−3 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A CMG gimbal rates B Null motion

0.1 1.089

1.0889 0.05

1.0888

m 0

1.0887 det(Q) −0.05 1.0886

1.0885 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-5. Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 at zero momentum (contd.)

84 5.3.1.3 Hybrid Steering Logic simulation results

The parameters for the HSL simulation are: α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1. In Figure 5-6 A , the HSL method shows similar results to that of the SDA shown in Figure 5-4 A, with exception to the faster rate of convergence of

the transient error response. However, the torque error in Figure 5-6 B added into the

system is smaller than that of SDA in Figures 5-4 B and null motion in Figure 5-7 B is

smaller than that of the LG method in 5-2 B. This is due to the nonzero value for both

singularity metrics α and β in Figures 5-6 C and D. Singularity was not encountered in this simulations as is shown by a value m > 0.5 in Figure 5-7 C and a zero value of

det(Q) in 5-7 D.

For Case I at zero-momentum, Table 5-2, compares the root-mean squared (RMS) gimbal rates (deg/s) and tracking performance in terms of RMS torque error (Nm) for LG, SDA, and HSL. In this table it is shown that all three methods have approximately the same performance which is expected for a four-SGCMG pyramid arrangement at zero-momentum, far from singularity. The steady-state error for LG or any of the other methods is nonzero as a consequence of the controller’s performance is captured here.

Table 5-2. Performance Comparisons for Case I: Zero Momentum ˙ Steering Algorithm δRMS τeRMS LG 5.7366 2.2437e-06 SDA 5.7279 3.5902 HSL (m0 = 0.5) 5.7317 2.2573

5.3.2 Case 2: Near Elliptic External Singularity δ = [105 105 105 105]T deg

The second set of simulations starts at initial gimbal angles δ = [105 105 105 105]T

deg, which represents a scenario near an elliptic external singularity at (i.e., 15 deg for

each SGCMG away from the external singularity δ = [90 90 90 90]T deg).

85 −3 x 10 0.04 e 14 1 0.02 e 12 2 e 10 0 3 8

e −0.02 (Nm)

e 6 −0.04 τ 4 −0.06 2 −0.08

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A Quaternion error vector elements B Torque Error

−3 x 10 1.2388 0.0335

1.2386 0.0335 β α 1.2384 0.0335

1.2382 0.0335

0.0335 1.238 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Alpha D Beta

Figure 5-6. Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 at zero momentum

86

dδ /dt n 2 1 1 0.04 dδ /dt n 1 2 2 dδ /dt n 3 0.02 3 0 dδ /dt n 4 4 0

/dt(deg/s) −1 n(deg/s) δ d −2 −0.02

−3 −0.04

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A CMG gimbal rates B Null motion

0.1 1.089 0.05 1.0889

1.0888

m 0

1.0887 det(Q)

1.0886 −0.05

1.0885 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-7. Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 at zero momentum (contd.)

87 5.3.2.1 Local gradient simulation results

The parameters for the LG simulation are: α0 = a = b = µ1 = 0 and µ2 = β0 = 1. The plots in Figure 5-8 A show that the LG method appears to have successfully performed the maneuver as shown in Figures 5-8 A and B. However, this is misleading

since non-implementable gimbal rates and accelerations are required to do so as

shown in Figure 5-9 A. The singularity metrics α = 0 as expected for this method and

β = 1 at the singularity encounter. Even though β = 1 at singularity, null motion at the exact time of singularity encounter is zero as shown in Figure 5-9 because the gradient vector d for LG is zero at elliptic singularities (i.e., no gradient vector exists that is in

the direction away from singularity). Also, the singularity, verified to be elliptic from the

positive value of det(Q) in Figure 5-9 D, was escaped immediately with the help of the non-implementable gimbal rates and accelerations, shown by Figure 5-9 C.

88 −12 x 10 0.04 e 1 7 0.02 e 2 6 e 0 3 5

e −0.02 4 (Nm) e −0.04 τ 3 2 −0.06 1 −0.08

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A Quaternion error vector elements B Torque Error

0.1 0.9 0.05 0.8 0.7 β α 0 0.6 0.5 −0.05 0.4 0.3 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Alpha D Beta

Figure 5-8. Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near elliptic singularities

89

dδ /dt 1 5000 dδ /dt 8 n 2 1 dδ /dt 6 n 3 2 0 dδ /dt n 4 4 3 n

/dt(deg/s) 2 4 δ n(deg/s) d −5000 0 −2

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A CMG gimbal rates B Null motion

1.2 0.3 1 0.25 0.8 0.2

m 0.6 0.15 det(Q) 0.4 0.1 0.2 0.05 0 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-9. Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near elliptic singularities (contd.)

90 5.3.2.2 Singular Direction Avoidance simulation results

The parameters for the SDA simulation are: α0 = 0.01, β0 = a = b = µ2 = 0, and

µ1 = 1. The transient response of the error for the SDA method shown in Figure 5-10 A is comparable to that of the LG method in Figure 5-8 A, but with implementable gimbal

rates and accelerations as shown in Figure 5-11 A. The SDA method escapes the elliptic

external singularity as shown in Figure 5-11 C at the expense of significant torque error

shown in Figure 5-10 B. The torque error scaled by the singularity metric α shown in

Figure 5-10 C decreases away from singularity as shown in Figure 5-11 C. As expected for SDA, the singularity metric β in Figure 5-10 C is zero resulting in zero null motion

as shown in Figure 5-11 B. In contrast to the LG method, for SDA, the system lingers in

singularity for around 15 seconds before escaping as shown in Figure 5-11 C. Elliptic

singularity for this simulation is verified by the positive value of det(Q) in Figure 5-11 D.

91

0.04 e 1 1.5 0.02 e 2 e 0 3 1

e −0.02 (Nm) e −0.04 τ 0.5 −0.06

−0.08

0 50 100 0 50 100 Times(s) Times(s) A Quaternion error vector elements B Torque Error

−3 x 10 0.1

9 0.05 8 β α 0 7

6 −0.05

5 −0.1 0 50 100 0 50 100 Times(s) Times(s) C Alpha D Beta

Figure 5-10. Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 near elliptic singularities

92 0.1 dδ /dt n 1 1 1 dδ /dt n 2 0.05 2 0 dδ /dt n 3 3 dδ /dt n −1 4 0 4 /dt(deg/s) n(deg/s) δ

d −2 −0.05 −3

−0.1 0 50 100 0 50 100 Times(s) Times(s) A CMG gimbal rates B Null motion

0.8 0.3

0.6 0.25 0.2

m 0.4 0.15 det(Q) 0.1 0.2 0.05

0 0 50 100 0 50 100 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-11. Simulation results for SDA with α0 = 0.01, β0 = a = b = µ2 = 0, and µ1 = 1 near elliptic singularities (contd.)

93 5.3.2.3 Hybrid Steering Logic simulation results

The parameters for the HSL simulation are: α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1. The results for HSL shown in Figures 5-12 and 5-13 are almost identical to the corresponding results of SDA for this simulation. The only difference

between HSL and SDA simulated results, lies in the nonzero singularity metrics α and

β in Figures 5-12 C and D. Due to the choice of the HSL parameters a, b, µ1, µ2, µ, α0,

β0, the threshold for singularity m ≤ 0.5, and Q0, the HSL acts as the SDA at an elliptic singularity

0.04 e 1 1.5 0.02 e 2 e 0 3 1

e −0.02 (Nm) e −0.04 τ 0.5 −0.06

−0.08

0 50 100 0 20 40 60 80 100 Times(s) Times(s) A Quaternion error vector elements B Torque Error

−3 x 10 0.06

4.5 0.05 4 3.5 0.04 β α 3 0.03 2.5 2 0.02

0 20 40 60 80 100 0 20 40 60 80 100 Times(s) Times(s) C Alpha D Beta

Figure 5-12. Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near elliptic singularities

94 −3 x 10

dδ /dt n 1 1 1 dδ /dt 15 n 2 2 dδ /dt n 0 3 10 3 dδ /dt n −1 4 5 4 /dt(deg/s) n(deg/s) δ

d −2 0

−3 −5

0 20 40 60 80 100 0 20 40 60 80 100 Times(s) Times(s) A CMG gimbal rates B Null motion

0.8 0.3

0.6 0.25 0.2

m 0.4 0.15 det(Q) 0.1 0.2 0.05

0 0 20 40 60 80 100 0 20 40 60 80 100 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-13. Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near elliptic singularities (contd.)

For Case II near an elliptic singularity, Table 5-3 , compares the RMS gimbal rates

(deg/s) and tracking performance in terms of RMS torque error (Nm) for LG, SDA, and HSL. In this table the LG method is said to have an infinite RMS gimbal rate to point out that it failed for elliptic singularity. Also, it is shown that SDA and HSL were successful in completing the maneuver while escaping singularity. Both SDA and HSL had approximately the same performance for elliptic singularity with the exception of slightly better tracking performance for HSL.

95 Table 5-3. Performance Comparisons for Case II: Elliptic Singularity ˙ Steering Algorithm δRMS τeRMS LG ∞ 7.7159e-06 SDA 8.2564 29.8989 HSL (m0 = 0.5) 8.1366 26.6946

5.3.3 Case 3: Near Hyperbolic Internal Singularities δ = [15 105 195 −75]T deg

The final set of simulations starts at initial gimbal angles δ = [15 105 195 −75]T

deg which represents a scenario near an hyperbolic singularity at (i.e., a distance 15 deg

from each CMG away from the singularity at δ = [0 90 180 −90]T deg). 5.3.3.1 Local gradient simulation results

The parameters for the LG simulation are: α0 = a = b = µ1 = 0 and µ2 = β0 = 1. The transient response of the error for the LG method in Figure 5-14 A is identical to

that for the other two cases. This is because the LG method is an exact mapping evident

from α = 0 in Figure 5-14 C and has no torque error associated with it in theory as

shown in Figure 5-14 B. The null motion in Figure 5-15 B makes up almost the entire

contribution of the gimbal rates in Figure 5-15 A due to the nonzero value of β in Figure 5-14 D. The LG method by itself is able to avoid the hyperbolic singularity swiftly and

remain away as shown in Figure 5-14 C and D.

96 −13 x 10 0.04 e 3 1 0.02 e 2 2.5 e 0 3 2

e −0.02 1.5 (Nm) e −0.04 τ 1 −0.06 0.5 −0.08

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A Quaternion error vector elements B Torque Error

0.1

0.6 0.05

0.5 β α 0

0.4 −0.05

0.3 −0.1 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Alpha D Beta

Figure 5-14. Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near hyperbolic singularities

97

20 dδ /dt 20 n 1 1 dδ /dt 15 n 15 2 2 δ n d /dt 10 3 10 3 δ n d /dt 4 4 5 5 /dt(deg/s) n(deg/s) δ

d 0 0 −5 −5

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A CMG gimbal rates B Null motion

0

1.2 −0.01

1 −0.02 −0.03 m 0.8 det(Q) −0.04

0.6 −0.05

0.4 −0.06 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-15. Simulation results for LG with α0 = a = b = µ1 = 0 and µ2 = β0 = 1 near hyperbolic singularities (contd.)

98 5.3.3.2 Singular Direction Avoidance simulation results

The parameters for the SDA simulation are: β0 = a = b = µ2 = 0, µ1 = 1 and

α0 = 0.01. The transient response of the error for the SDA method in Figure 5-16 A

is different in the rate of convergence to ess , but on the same order of magnitude to that for the LG method. However, the gimbal rates for SDA shown in Figure 5-17 B are

an order of magnitude smaller than that for the LG method. This method escapes the

hyperbolic singularity successfully with torque error as shown in Figures 5-16 B as a

consequence of the nonzero value of α in Figure 5-16 C. The singularity metric β in 5-16 D is zero because SDA does not use null motion. Added torque error for singularity

escape versus null motion for singularity avoidance is the trade off between SDA and

LG. The singularity in this simulation is verified to be hyperbolic from the negative result

shown in Figure 5-17 D. Also, the SDA method did not escape by what is considered singularity in Figure 5-17 C by the threshold m ≤ 0.5. However, this did not affect the

decaying of the errors transient response. This is due to the fact that the torque error is

scaled by the needed output torque being mapped and therefore, is not seen to have a

significant effect towards the end of the maneuver.

99

0.04 e 1 0.3 0.02 e 2 0.25 e 0 3 0.2

e −0.02

(Nm) 0.15 e −0.04 τ 0.1 −0.06 0.05 −0.08

0 50 100 0 50 100 Times(s) Times(s) A Quaternion error vector elements B Torque Error

−3 x 10 0.1

7.6 0.05 7.4 β α 0 7.2 −0.05 7

−0.1 0 50 100 0 50 100 Times(s) Times(s) C Alpha D Beta

Figure 5-16. Simulation results for SDA with α0 = 0.01, β0 = 0, a = 0, b = 0, and µ = 1 near hyperbolic singularities

100 0.1 dδ /dt n 2 1 1 dδ /dt n 2 0.05 2 1 dδ /dt n 3 3 δ n d /dt 4 0 4 0 /dt(deg/s) n(deg/s) δ d −1 −0.05

−2 −0.1 0 50 100 0 50 100 Times(s) Times(s) A CMG gimbal rates B Null motion

0.38 0

0.36 −0.01 0.34 −0.02 0.32 m

0.3 det(Q) −0.03

0.28 −0.04 0.26 −0.05 0 50 100 0 50 100 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-17. Simulation results for SDA with α0 = 0.01, β0 = 0, a = 0, b = 0, and µ = 1 near hyperbolic singularities (contd.)

101 5.3.3.3 Hybrid Steering Logic simulation results

The parameters for the HSL simulation are: α0 = 0.01, β0 = 2, a = 1, b = 3, and

µ1 = µ2 = 1. The transient response of the error in Figure 5-18 A is almost identical to

the LG method for this case and has a faster rate of convergence to ess than SDA. This is attributed to the nonzero values of the singularity metrics α and β in Figures 5-18 C

and D which provide an order of magnitude less null motion for singularity avoidance

than LG and orders of magnitude less torque error than SDA for this case shown in

Figure 5-19 B and 5-18 A when avoiding the hyperbolic singularity verified in Figures 5-19 C and D. Unlike SDA, HSL escaped and then avoided the singularity which is

due to the addition of null motion for this method (see Figures 5-16 C and 5-17 C).

Therefore, HSL relies more on null motion for singularity avoidance rather than soley

trying to pass through the hyperbolic singularities as SDA, SR, and GSR do. Precision in attitude tracking with the threat of hyperbolic singularities while still being able to escape

elliptic singularities is the strength of HSL.

102

0.04 e 0.07 1 0.02 e 0.06 2 e 0.05 0 3 0.04

e −0.02 (Nm)

e 0.03 −0.04 τ 0.02 −0.06 0.01 −0.08

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A Quaternion error vector elements B Torque Error

−3 x 10 2.4 0.07 2.2 2 0.06 1.8 β α 0.05 1.6 1.4 0.04 1.2 0.03 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Alpha D Beta

Figure 5-18. Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near hyperbolic singularities

For Case III near a hyperbolic singularity, Table 5-3 , compares the RMS gimbal rates (deg/s) and tracking performance in terms of RMS torque error (Nm) for LG, SDA, and HSL. In this table the LG method has the largest RMS gimbal rate among the three methods, which is needed for singularity avoidance. Also, LG performed the method with the best tracking performance among the three methods which is an expected result for an exact method. The HSL had better tracking performance in terms of RMS torque error than SDA as a consequence of the larger gimbal rates needed for null motion singularity avoidance. This is an expected strength of HSL at hyperbolic singularity.

103

dδ /dt 2.5 n 2 1 1 dδ /dt n 2 2 2 1 dδ /dt n 3 1.5 3 dδ /dt n 0 4 1 4 /dt(deg/s)

n(deg/s) 0.5 δ

d −1 0 −2 −0.5

0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) A CMG gimbal rates B Null motion

0 1.2

−0.02 1

m 0.8 −0.04 det(Q)

0.6 −0.06

0.4 0 20 40 60 80 0 20 40 60 80 Times(s) Times(s) C Singularity measure D det(Q)

Figure 5-19. Simulation results for HSL with α0 = 0.01, β0 = 2, a = 1, b = 3, and µ1 = µ2 = 1 near hyperbolic singularities (contd.)

Table 5-4. Performance Comparisons for Case III: Hyperbolic Singularity ˙ Steering Algorithm δRMS τeRMS LG 10.3905 1.4742e-05 SDA 6.3611 14.4937 HSL (m0 = 0.5) 9.9330 4.7925

5.4 Hybrid Steering Logic Summary

The HSL was found numerically to preserve attitude tracking precision in the presence of hyperbolic singularities, act comparably to SDA in the presence of elliptic singularities, and perform better than SDA away from singularity. The performance of this algorithm is attributed to the new singularity metrics, which allow smooth

104 transition between singularity avoidance using LG and singularity escape using SDA. By reducing the times where torque error is induced for singularity escape, this method provides improved attitude tracking performance. Analytic and simulated results show that HSL has many benefits over the two other methods for singularity avoidance and escape. These benefits are: it can be implemented real-time; although SVD may be computationally intensive, it removes the need for an inverse and provides all the information needed for HSL; numerically robust algorithms exist for SVD;

HSL induces less torque error than SDA by itself; and finally, the HSL provides a nonsingular expression that can start at singularity. The HSL is not successful in avoiding gimbal-lock because null motion is nonexistent at elliptic singularities and SDA fails at gimbal-lock (see Chapter 4).

105 CHAPTER 6 CONTROL ALGORITHM-ORTHOGONAL TORQUE COMPENSATION

6.1 Attitude Controller with OTC

Traditionally the control law and steering algorithm are separated for attitude control

systems using SGCMGs as shown in Figure 6-1. This is done to facilitate understanding of the attitude control system and actuator dynamics separately. However, considering the steering algorithm separate from the control law may reduce the possibility of an increase in the performance in the system.

Figure 6-1. Satellite attitude control system block diagram

Many steering logics by themselves are incapable of avoiding gimbal lock.

Gimbal-lock occurs when the required torque for an attitude maneuver is along the

singular direction. This produces a local minimum condition where the gimbal rate

solution is zero while the required torque is still not met. Open-loop methods that

provide a gimbal trajectory free of this condition exist; examples of such methods are forward propagation from preferred gimbal angles, global steering, and optimal control

[65, 66, 74, 83]. These methods are time consuming and cannot guarantee a solution

exists for the constraints provided.

Real-time solutions to gimbal-lock avoidance exist such as the GSR inverse which uses off-diagonal dither components in its perturbation matrix to escape gimbal-lock

(see Chapter 4). There is no formal proof that these methods will always be successful

in avoiding gimbal-lock. Through the use of nonlinear control, an orthogonal torque

106 compensation (OTC) methodology can be augmented with a suitable steering and control algorithm to also avoid or escape gimbal-lock. Through this nonlinear control

framework, stability can be proven and the steering algorithm can be chosen separately

in contrast to GSR which relies entirely on handling gimbal-lock avoidance/escape

through the steering algorithm. Open-loop methods such as optimal control for gimbal-lock escape or avoidance

may not find a feasible solution or a solution at all depending on how the cost function

and constraints are formulated.

It is possible that combination of an optimal control maneuver with a pseudo-inverse

method (e.g., SR inverse) will drive the system toward the vicinity of singularity as the maneuver is completed. This may occur since the required gimbal rates are not

only scaled from the distance to singularity, but also by the needed output torque from

the SGCMG system. As the next rest-to-rest maneuver is needed the torque may be

required about the singular direction. When this occurs, the maneuver could cause the local minimum previously discussed.

6.2 Lyapunov Stability Analysis

For the cases considered, OTC will be a modification to the quaternion regulator control logic from reference [54] shown in Eq.(5–12). It should be noted that this

modification could, in theory, work with any control algorithm which in turn can be

combined with any steering algorithm for SGCMGs. Therefore, it is not restricted to any

steering algorithm or the quaternion regulator control law if the proper stability analysis is carried out. The quaternion regulator control logic assumes perfect information and

has the following nominal form

h˙ = Ke + Cω + ω×H (6–1)

where K = 2kJ and C = cJ are positive-definite symmetric gain matrices based on the spacecraft’s centroidal inertia J, e is the vector elements of the quaternion error vector,

107 ω is the spacecraft angular velocity, and H is the total spacecraft system centroidal angular momentum from Eq.(2–1).

Recall from Eq.(4–12) that the Jacobian’s left singular vectors U is an orthonormal basis for the output torque h˙. This basis is composed of a unit vector in the direction of the singular direction u∥ when at singularity, and two unit vectors orthogonal to the singular direction, u⊥ and un (i.e., even when A is nonsingular, the basis from U still exists). Utilizing this basis in the formation of the output torque yields

∗ h˙ = ρu∥ + ψu⊥ + ζun ≠ h˙ (6–2)

with coefficients

T ρ = h˙ u∥ T ψ = h˙ u⊥ + ag(m) (6–3) T ζ = h˙ un + bg(m) The quantity g(m) is a augmentation to the orthogonal to the singular direction

components of torque that is an explicit function of the singularity measure. It will be referenced as the OTC singularity parameter and a and b are switching elements

defined by   T 1 if h˙ u⊥ ≥ 0 a =  T −1 if h˙ u⊥ < 0   T 1 if h˙ un ≥ 0 b =  T −1 if h˙ un < 0

Substituting Eq.(6–2) into Eq.(5–23) and bounding yields,

108   1 0 0    ˙ c T −1   T T V =≤ − ω J U 0 1 0  U Jω + ϵ2 = −ζω R2ω + ϵ2 (6–4) 2k  

0 0 λ1

T −1 where ϵ2 = ϵ1 + g(m)ω K (au⊥ + bun) and R2 = R1 in Eq.(5–25) with the singularity parameter λ from Eq.(4–5) in place of α for the HSL in Eq.(5–1). Similar to the Lyapunov analysis in Chapter 5 for HSL, the error z is bounded with a Volterra integral expression as

∫ t λ ζ λ ζ 2 V (0) (− 1 t) 1 (− 1 (t−τ)) ||z|| ≤ exp λmax + exp λmax ϵ2(τ)dτ (6–5) λmin λmin t0 Since the SGCMG output torque will always have components orthogonal to the singular

direction when near singularity, it is assumed that a system using OTC will never

encounter gimbal-lock up to a specific size of ||e|| and λ from Eq.(4–5) where

g(m) = λ||e|| (6–6)

Therefore, situations of singularity other than those with gimbal-lock are of concern.

When at singularity, the expression for the error is

∫ t 2 ||z|| ≤ Vs + ϵ2(τ)dτ (6–7) ts

because the error z is based off the transient term of the Lyapunov equation Vs from Eq.(7–2) and the dynamic term containing the effect of the torque error added for ∫ t gimbal-lock escape ϵ2(τ)dτ. Recall from Chapter 5, while using HSL, that when ts singularity occurs with the exception of gimbal-lock, there may be a period of instability

and it is assumed that the maneuver does not end at singularity. With this in mind, the

steady-state error of the of a system away from singularity using SDA combined with

OTC is bounded as

109 2 λmax ||z(∞)|| ≤ − ϵ2(∞) (6–8) λminλ1ζ through the use of L’Hospital’s rule as in Eq.(5–33). The result of OTC is UUB for sufficiently large the choices of c rather than ζ. This is true because short periods of instability may arise, but the negative semi-definite term of Eq.(6–4) becomes negative definite away from singularity and will become dominate

for sufficiently large values of c. With the choice of g(m) in Eq.(6–6), whenever there is

an attitude error and the system is in proximity to a singularity, there will be torque error added orthogonal to the singular direction, and thus gimbal-lock will be escaped.

6.3 Numerical Simulation

For the steering algorithms of SDA, GSR, and SDA with OTC (SDA/OTC)

augmented to the attitude controller, two cases were simulated for a four-SGCMG

pyramidal cluster at θ = 54.74 deg and the model parameters in Table 6-1: (1) a z-axis

maneuver starting at initially at the zero momentum configuration from Chapter 5 (i.e.,

δ = [0 0 0 0]T deg) and (2) a z-axis maneuver starting at gimbal-lock configuration (i.e., δ = [90 90 90 90]T deg). Both cases use the same control gains applied to a pyramidal arrangement of four-SGCMGs. Also, the simulation was propagated with a discrete fourth-order Runga-Kutta at a time-step of ∆t = 0.02 sec.

Table 6-1. Model Parameters Variable Value Units 2 J 13×3 kgm θ 54.74 deg T e0 [0 0 0.3] −− T ω0 [0 0 0] deg/s h0 1 Nms k 2 1/s2 c 10 1/s ϵi 0.1 rand(1) −− λ0 0.1 −− ∆t 0.02 sec

110 T 6.3.1 Case I: δ0 = [0 0 0 0] deg

For a z-axis maneuver originating from an initial zero-momentum configuration,

Figures 6-2 show that SDA, GSR, and the SDA/OTC appear identical. This is what is expected for a maneuver far from singularity. The results for the torque Figure 6-3

confirm this because the transient response for this case (i.e., away from singularity) is

short. The transient response of the output torque shown in Figure 6-3 D of SDA/OTC

has significant jitter but with a small magnitude. This jitter has negligible effect on the

gimbal rates shown in Figure 6-2 D which is due to the mapping of the output torque onto the gimbal rates. The difference in quaternion error and singularity measure in

Figures 6-4 and 6-5 are small. This should not be surprising since for SDA, GSR, and

SDA/OTC, the contributions of torque error are designed to be significant only when the system is close to a singularity. The OTC singularity parameter shown in Fig. 6-6, while initially nonzero for this

case, converges to zero rapidly. The fact that this parameter is nonzero initially and

there is no significant differences in the quaternion error responses as shown in Figure

6-7, might suggest that the torque error from the SDA method itself was dominant. In

addition, it should be noted that the difference in quaternion error responses while small (10−8), is not on the order of machine precision (10−16) or (10−32).

111 0.3 0.5

0.25

0.2

0.15 0 /dt(rad/s) /dt(rad/s) δ δ

d 0.1 d

0.05

0 −0.5 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) A SDA B SDA (transient response)

0.3 0.5

0.25

0.2

0.15 0 /dt(rad/s) /dt(rad/s) δ δ

d 0.1 d

0.05

0 −0.5 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) C GSR D GSR (transient response)

0.3 0.5

0.25

0.2

0.15 0 /dt(rad/s) /dt(rad/s) δ δ

d 0.1 d

0.05

0 −0.5 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) E SDA/OTC F SDA/OTC (transient response)

Figure 6-2. Gimbal rates

112 1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) A SDA B SDA (transient response)

1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) C GSR D GSR (transient response)

1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) E SDA/OTC F SDA/OTC (transient response)

Figure 6-3. Output torque

113 0.3

0.25

0.2

e 0.15

0.1

0.05

0 0 20 40 60 80 100 time(s) A SDA

0.3

0.25

0.2

e 0.15

0.1

0.05

0 0 20 40 60 80 100 time(s) B GSR

0.3

0.25

0.2

e 0.15

0.1

0.05

0 0 20 40 60 80 100 time(s) C SDA/OTC

Figure 6-4. Vector elements of the error quaternion

114 1.1

1.095

m 1.09

1.085

1.08 0 50 100 time(s) A SDA

1.1

1.095

m 1.09

1.085

1.08 0 50 100 time(s) B GSR

1.1

1.095

m 1.09

1.085

1.08 0 50 100 time(s) C SDA/OTC

Figure 6-5. Singularity measure

115 −3 x 10 10

8

6

g(m) 4

2

0 10 20 30 40 time(s)

Figure 6-6. Singularity parameter (OTC)

−9 −8 x 10 x 10

0 0 −0.5 −1 −1 e e ∆ ∆ −1.5 −2 −2

−3 −2.5

0 10 20 30 40 0 10 20 30 40 time(s) time(s)

A eGSR − eSDA B eSDA/OTC − eSDA

Figure 6-7. Quaternion error difference: (A) eGSR − eSDA (B) eSDA/OTC − eSDA

T 6.3.2 Case II a: δ0 = [90 90 90 90] deg

For this case, the gimbals are initially oriented such that the system is in a gimbal-lock configuration. Figure 6-8 A shows that the gimbal rates of the SDA method are unchanged throughout the simulation since the system starts in a gimbal-lock configuration and SDA cannot generate the necessary commands to escape. The gimbal rates for GSR and SDA/OTC (Fig. 6-8 B and D), however, are nonzero because the addition of the torque error has provided the system with the ability to escape gimbal-lock. In addition, the controller approaches the original quaternion regulator controller as the system moves away from singularity.

116 The transient response of the gimbal rates for the GSR and SDA/OTC in Figure 6-8 C and E are both oscillatory with GSR having the higher amplitude and duration.

This is attributed to the fact that unlike OTC, the functions adding torque error in GSR

for gimbal-lock escape are not clearly visualized (i.e., depend on the combination of

sinusoids with possible different frequencies and phases for dither) when mapped to the gimbal rates.

Figures 6-9 and 6-10 show, respectively, the required torque and attitude error. In

both cases, the results show a similar trend as the gimbal rates for GSR, and SDA/OTC

approach zero;the GSR and SDA/OTC were able to generate the torque required to

drive the attitude error to zero. An examination of the singularity measures shown in Figure 6-11 reaffirms the

responses shown in Figures 6-8 through 6-10 where the SDA remains at singularity

unlike GSR and the SDA/OTC which escape singularity but transition back to it

as the maneuver is completed. This transition back to singularity is common for all pseudo-inverse steering algorithms, which work by approaching a singular configuration

and then making a rapid transition for escape [47]. Recall previously from §6.1, that it

was stated that it is possible to end in the vicinity of a singularity when the maneuver

was completed; this is an example of such a case shown in Figure 6-10 and 6-11.

The measure of how far the system of SGCMGs is from gimbal lock can be found as the norm ||AT h˙|| −→ 0. Both the GSR and the SDA/OTC were successful in escaping

gimbal-lock as shown in Figure 6-12. It should be noted that because this measure is a function of h˙, it goes to zero as the maneuver is completed.

The OTC singularity parameter is shown in Figure 6-13. It has a nonzero initial

value and converges rapidly to zero which makes it effective for helping in singularity escape.

117 0.1

0.05

0 /dt(rad/s) δ d −0.05

−0.1 0 50 100 time(s) A SDA

0 0.5 −0.5 −1

−1.5 0 /dt(rad/s) /dt(rad/s)

δ −2 δ d d −2.5 −3 −0.5 0 50 100 0 1 2 3 4 5 time(s) time(s) B GSR C GSR (transient response)

0.5

0

−1 0 /dt(rad/s) /dt(rad/s) δ δ d −2 d

−3 −0.5 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) D SDA/OTC E SDA/OTC (transient response)

Figure 6-8. Gimbal rates

118 1.2

1

0.8

0.6

hdot(Nm) 0.4

0.2

0 0 20 40 60 80 100 time(s) A SDA

1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) B GSR C GSR (transient response)

1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) D SDA/OTC E SDA/OTC (transient response)

Figure 6-9. Output torque

119 0.3

0.25

0.2

e 0.15

0.1

0.05

0 0 20 40 60 80 100 time(s) A SDA

0.3

0.25

0.2

e 0.15

0.1

0.05

0 0 20 40 60 80 100 time(s) B GSR

0.3

0.25

0.2

e 0.15

0.1

0.05

0 0 20 40 60 80 100 time(s) C SDA/OTC

Figure 6-10. Vector elements of the error quaternion

120 0.01

0.008

0.006 m 0.004

0.002

0 0 50 100 time(s) A SDA

0.8

0.6

m 0.4

0.2

0 0 20 40 60 80 100 time(s) B GSR

0.6

m 0.4

0.2

0 0 20 40 60 80 100 time(s) C SDA/OTC

Figure 6-11. Singularity measure

121 0.1

0.05

hdot 0 T A

−0.05

−0.1 0 10 20 30 40 time(s) A SDA

0.2

0.15

hdot 0.1 T A

0.05

0 0 10 20 30 40 time(s) B GSR

0.2

0.15

hdot 0.1 T A

0.05

0 10 20 30 40 time(s) C SDA/OTC

Figure 6-12. Gimbal-lock measure

122 0.025

0.02

0.015 g(m) 0.01

0.005

0 10 20 30 40 time(s)

Figure 6-13. Singularity parameter (OTC)

T 6.3.3 Case II b (HSL/OTC): δ0 = [90 90 90 90] deg

Recall, from §6.1 that OTC can be used in combination with any steering algorithm

for gimbal-lock avoidance/escape. This case verifies through simulation that this is

T indeed true by comparing HSL/OTC to GSR starting at gimbal-lock (δ0 = [90 90 90 90] deg). The HSL parameters are shown in Table 6-2.

Table 6-2. Hybrid Steering Logic Parameters Variable Value α0 0.01 β0 2 µ1 1 µ2 1 a 1 b 3 m0 0.5

With the exception of the initial transient, the gimbal rates for GSR and those of

HSL/OTC in Figure 6-14, are approximately the same magnitude.

123 0 0.5 −0.5 −1

−1.5 0 /dt(rad/s) /dt(rad/s)

δ −2 δ d d −2.5 −3 −0.5 0 50 100 0 1 2 3 4 5 time(s) time(s) A GSR B GSR (transient response)

3 0.5

2

1 0 0 /dt(rad/s) /dt(rad/s) δ δ d −1 d

−2 −0.5 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) C HSL/OTC D HSL/OTC (transient response)

Figure 6-14. Gimbal rates

The transient response of the gimbal rates for the GSR in Figure 6-14 B is highly

oscillatory and not as smooth as that for HSL/OTC (compare with Figure 6-14 D). This

is due to oscillatory behavior of the dither-used for gimbal-lock escape that may be of

any duration depending on the frequencies and phases of the off-diagonal components of the GSR perturbation matrix E. The HSL method acts as a SDA method, but when combined with OTC will avoid/escape a singularity at the speed of the parameters chosen for λ in Eq.(6–6) in the which the duration will be understood for all singularities

and their combinations to the norm of quaternion error. Figures 6-15 and 6-16 show,

respectively, the required torque and attitude error. In both cases, the results show that

124 both methods (GSR and HSL/OTC) were successful in meeting the required torque and completing the attitude maneuver.

1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) A GSR B GSR (transient response)

1.2 0.05

1

0.8

0.6 0

hdot(Nm) 0.4 hdot(Nm)

0.2

0 −0.05 0 20 40 60 80 100 0 1 2 3 4 5 time(s) time(s) C HSL/OTC D HSL/OTC (transient response)

Figure 6-15. Output torque

The singularity parameters for both methods in Figure 6-17, escape singularity although they transition back to it as the maneuver is completed. Recall, it was mentioned previously that a maneuver can be completed (i.e., e −→ 0) while the gimbal angles settle into a singular configuration; Figure 6-11 and 6-17 show this trend

(compare with Figure 6-11). Figure 6-18 shows instantaneous escape from gimbal-lock for both methods.

125 0.3 0.3

0.25 0.25

0.2 0.2

e 0.15 e 0.15

0.1 0.1

0.05 0.05

0 0 0 20 40 60 80 100 0 20 40 60 80 100 time(s) time(s) A GSR B HSL/OTC

Figure 6-16. Vector elements of the error quaternion

0.8

0.6 0.6

m 0.4 m 0.4

0.2 0.2

0 0 0 20 40 60 80 100 0 20 40 60 80 100 time(s) time(s) A GSR B HSL/OTC

Figure 6-17. Singularity measure

The OTC singularity parameter shown in Figure 6-19 has an initial nonzero value and converges rapidly to zero similarly to Figure 6-13, which makes it effective for helping in singularity escape.

The Table 6-3 compares the root-mean squared (RMS) gimbal rates (rad/s), tracking performance in terms of RMS torque error (Nm), and pointing performance in terms of the norm of the steady-state error quaternion for GSR, SDA/OTC, and

HSL/OTC. From Table 6-3 it can be shown that the choice of the singularity threshold m0 has an effect on the tracking and pointing performance of the HSL method combined

126 0.2 0.2

0.15 0.15

hdot 0.1 hdot 0.1 T T A A

0.05 0.05

0 0 10 20 30 40 0 10 20 30 40 time(s) time(s) A GSR B HSL/OTC

Figure 6-18. Gimbal-lock measure

0.025

0.02

0.015 g(m) 0.01

0.005

0 10 20 30 40 time(s)

Figure 6-19. Singularity parameter (OTC)

with OTC. In fact, when this value is m0 = 0.5 for this model and with the set of control gains that differ from the model in Chapter 5, the tracking and pointing performance of

HSL/OTC is actually worse. This is expected as shown by the Lyapunov analysis in §6.2 where the steady-state error of SDA is dependent on the torque error added into the system; and a larger threshold value of m0 will increase the steady-state error. 6.4 Orthogonal Torque Compensation Summary

Orthogonal torque compensation (OTC) methodology was developed to ensure escape from all singularities, particularly scenarios involving gimbal-lock configurations.

The compensation methodology can be incorporated with any attitude controller/steering

127 Table 6-3. Performance Comparisons ˙ Steering Algorithm δRMS τeRMS ||ess|| GSR 7.7901 10.1864 0.0024 SDA/OTC 7.3146 10.4080 0.0020 HSL/OTC (m0 = 0.5) 7.1693 6.1819 0.0038 HSL/OTC (m0 = 0.05) 7.0041 3.0416 2.1474e-09 HSL/OTC (m0 = 0.005) 6.9166 2.9852 1.8843e-09 logic combination and was shown through analysis to ensure stability with sufficiently large choice of the controller gain c. Since the compensator was designed to work with any attitude controller, then it is compatible with any steering algorithms. This could prove very beneficial for steering algorithms like HSL which reduce the amount of torque error at hyperbolic singularities (see Chapter 5). The OTC was also demonstrated through numerical simulation where it was shown to be effective in escaping gimbal-lock with near zero steady-state attitude error. These simulations were based on a four-SGCMG pyramidal arrangement using an quaternion regulator controller combined with the steering algorithms SDA and HSL and compared with GSR.

128 CHAPTER 7 SCALABILITY ISSUES FOR SGCMGS

7.1 Scalability Problems with SGCMG Hardware

Currently available CMG actuators are shown in Figure 7-1 with specifications from

Table C-1 in Appendix C do not meet the power, mass, and volume requirements for satellites smaller than the micro-sat class. Currently, development of CMG hardware underway will meet some of the constraints for these smaller classes of satellites. New steering algorithms to complement these newly developed CMG hardware is not being emphasized and will have a major effect on how systems of miniature CMGs perform.

This chapter highlights the effect of scaling on the performance of miniature CMGs.

Figure 7-1. Off-the-shelf CMGs

129 7.2 Effect of Igw on Torque Error

The gimbal accelerations are kinematically dependent on the choice of the gimbal rates and as a consequence, only one of them can be used as a control variable. Therefore, the gimbal rates are considered as measurable quantities and the gimbal accelerations are the control. The solution to the gimbal accelerations as a control is defined as

T T −1 δ¨ = B (BB ) [T − A2δ˙] (7–1) where A = A1 + A2 from Eqs.(2–7) and (A–26) and T = h˙ + A1δ˙ equivalent to Eq.(2–13). This solution is considered an exact solution but for some cases may be highly oscillatory and/or unstable for the gimbal rates and accelerations. A Lyapunov analysis is presented below.

It was stated previously that the direct solution in Eq.(7–1) may be unstable. To prove this we start with the given candidate Lyapunov function

1 V = ωT K−1J ω + eT e + (1 − e )2 (7–2) 1 2 c 4 Taking the time derivative, yields

T −1 × T V˙ 1 = ω K [−T − ω H] + ω e (7–3)

For the system to be globally asymptotically stable (i.e., h˙, e, and ω −→ 0 as t −→ ∞)

T = Aδ˙ + Bδ¨ = Ke + Cω − ω×H (7–4)

Next, a second candidate Lyapunov function is required to analyze the behavior of the gimbal rates and accelerations as time approaches infinity.

1 V = δ˙T δ˙ (7–5) 2 2

130 Taking the time derivative utilizing Eq.(7–1), we obtain

T T T T −1 V˙ 2 = δ˙ δ¨ = δ˙ B (BB ) [T − Aδ˙] (7–6)

From the previous Lyapunov analysis where h˙, e, and ω −→ 0 as t −→ ∞ it can be

assumed that

T T T −1 h0 T V˙ 2 = −δ˙ B (BB ) Aδ˙ = ( )δ˙ Sδ˙ (7–7) Igw

T T −1 where B = Igw Bˆ, A = h0Aˆ, and S = −Bˆ (BˆBˆ ) Aˆ. Matrix S is semi-indefinite and therefore the gimbal rates can be unstable. Furthermore, a Lyapunov analysis of V1 + V2

shows that the ratio ( h0 ) plays a key role in the stability of the whole system. Igw Next, we consider the use of the SR inverse where the gimbal rates are found from

1 SR δ˙SR = A (T − Igw Bˆδ¨) (7–8) h0 with

ASR = Aˆ T (AˆAˆ T + λ1)−1 (7–9)

where λ is the singularity parameter defined in Eq.(4–5).

Assuming the SR inverse is used to apply the gimbal rates as a control variable we

find that the torque error is expressed as

τe = Tact − T = h0Aˆδ˙SR + Igw Bˆδ¨ − T (7–10)

Furthermore,

AAˆ SR = [1 + λ(AˆAˆ T )−1]−1 (7–11)

Away from singularity, a series expansion of Eq.(7–11) with only the linear terms yields

131 AAˆ SR ≈ 1 − λ(AˆAˆ T )−1 (7–12)

This series expansion is convergent if away from singularity because the term |λ(AˆAˆ T )−1| < 1. Substituting Eq.(7–12) into the torque error, Eq.(7–10) we have

T −1 T −1 τe ≈ Igw λ(AˆAˆ ) Bˆδ¨ − λ(AˆAˆ ) T (7–13)

It can be seen that the torque error may be amplified by the magnitude of the gimbal-flywheel

inertia Igw . Furthermore, if δ¨ or Igw is considered negligible then the torque error is only affected by the singularity parameter λ, the distance from singularity which is related to

T −1 the determinant of (AˆAˆ ) , and T. It should be noted that an increase in Igw is followed by a decrease in AˆAˆ T , but its effectiveness in lowering the torque error requires a large ratio of Igw (i.e., effective when Igw >> 1 which could be thought of as being a system of h0 h0 RWs).

The eigen-axis control logic from Eq.(5–12) is used to define the torque needed for

a given maneuver to be mapped onto the gimbal states. The SGCMG system proposed in this analysis assumes that it is self-contained and therefore the metric of the hosted

algorithm performance is independent of the control logic chosen as long as it meets the

constraints of the SGCMG actuators. Therefore, no generality is lost for the choice of the

control logic in the analysis.

7.3 Numerical Simulation

The cases compared here are the SR Inverse and a filtered gimbal-acceleration

control law based on Oh and Vadali [84]. The filtered gimbal acceleration control law has the following form

¨ ˙ ˙ ¨ δ = Kδ(δSR − δ) + δSR (7–14)

132 where Kδ is the gain matrix that sizes the amount of gimbal acceleration utilized for

control and δ˙SR and δ¨SR are the gimbal rates and accelerations from the SR inverse and the time derivative of that rate. The effect of the gimbal-flywheel inertia is scaled in the

simulation by the gain Kgw (i.e., Igw = Kgw I gw ) where Kgw = 0 signifies that their is no torque or angular momentum contributed from the gimbal dynamics.

Simulations of these two steering algorithms were compared by scaling Igw through

two different values of Kgw : i) Kgw = 0 and ii) Kgw = 2. The model parameters for the nominal satellite inertia J and gimbal-flywheel inertia Igw are based on a four-SGCMG pyramidal arrangement sized for a 1U CubeSat. Both simulations were for a maneuver

o of 180 about the z-axis. The initial gimbal angles for all simulations are δ0 = [−90 −90 −90 −90]T deg corresponding to a elliptic saturation singularity about the z-axis.

This set of initial gimbal angles along with the required maneuver will force the system to enter gimbal-lock (i.e., AT h˙ = 0) and accumulate a steady state attitude error. This

situation was chosen to test the system to its performance limit. The parameters that were used for all of the results are shown in Table 7-1.

Table 7-1. Model Parameters Variable  Value  Units 533.8 0 0   −6 2 Js 0 533.8 0 × 10 kgm 0 0 895.6 θ 52 deg T e0 [0 0 1 0] −− T ω0 [0 0 0] deg/s −4 h0 4.486 × 10 Nms −6 2 I gw 5.154 × 10 kgm k 10 1/s2 c 50 1/s Kδ 10 I4×4 −− λ0 0.5 −− µ 10 −− T δ˙0 [0 0 0 0] deg/s

133 7.3.1 Case I: Kgw = 0

For this case, Figures 7-2 and 7-3 show that the gimbal rates and accelerations are quite similar for both the SR inverse and filtered acceleration control law, except at the very beginning. Since the filtered acceleration control law also uses an SR inverse in its formulation, it is reasonable to assume that the differences can be attributed to the

filter (see Eq.(7–14) ). The torque errors in Figure 7-4 are initially larger for the filtered acceleration algorithm as compared to the SR inverse by itself. Again, this is most likely due to the lower initial gimbal rates and accelerations attributed to the filter. Also, the torque error for both cases has a steady state offset where the system encounters gimbal-lock.

134 5 5

0 0 /dt(rad/s) /dt(rad/s) δ δ d d −5 −5

0 20 40 60 0 2 4 6 8 Time(s) Time(s) A SR Inverse B SR Inverse (transient response)

2 2

1 1 /dt(rad/s) /dt(rad/s)

δ 0 δ 0 d d

−1 −1

0 20 40 60 0 2 4 6 8 10 Time(s) Time(s) C Filtered gimbal acceleration D Filtered gimbal acceleration (transient re- sponse)

Figure 7-2. Gimbal rates for Kgw = 0

135 300 300 200 200 ) ) 2 2 100 100

(rad/s 0 (rad/s 0 2 2 /dt /dt

δ −100 δ −100 2 2 d −200 d −200 −300 −300

0 20 40 60 0 2 4 6 8 Time(s) Time(s) A SR Inverse B SR Inverse (transient response)

50 50 ) ) 2 2

(rad/s 0 (rad/s 0 2 2 /dt /dt δ δ 2 2 d −50 d −50

0 20 40 60 0 2 4 6 8 Time(s) Time(s) C Filtered gimbal acceleration D Filtered gimbal acceleration (transient re- sponse)

Figure 7-3. Gimbal accelerations for Kgw = 0

136 −3 −3 x 10 x 10 1 1

0 0

−1 −1 (Nm) (Nm) e e τ −2 τ −2

−3 −3

−4 −4 0 20 40 60 0 2 4 6 8 Time(s) Time(s) A SR Inverse B SR Inverse (transient response)

−3 −3 x 10 x 10

0 0

−2 −2

−4 −4 (Nm) (Nm) e e τ −6 τ −6

−8 −8

−10 −10 0 20 40 60 0 5 10 Time(s) Time(s) C Filtered gimbal acceleration D Filtered gimbal acceleration (transient re- sponse)

Figure 7-4. Torque error for Kgw = 0

137 The singularity measure m shown in Figure 7-5 is identical for both methods in these plots. The only discrepancy between the gimbal rates and accelerations of the two methods for this cases was at the very beginning of the maneuver. Therefore, the differences in m would not be obvious in these plots. The value of m here is shown to transit away from but return to singularity in Figure 7-5 for both methods. This is common to steering algorithms of the SR inverse type.

−10 −10 x 10 x 10 1.2 1.2

1 1

0.8 0.8

m 0.6 m 0.6

0.4 0.4

0.2 0.2

0 0 0 20 40 60 0 20 40 60 Time(s) Time(s) A SR Inverse B Filtered gimbal acceleration

Figure 7-5. Singularity measure for Kgw = 0

7.3.2 Case II: Kgw = 2

The initial gimbal rates and accelerations are less for the filtered acceleration algorithm than for SR inverse itself. This is the shown in Figures 7-6 and 7-7.

138 0.02

5 0.01

0 0 /dt(rad/s) /dt(rad/s) δ δ

d d −0.01 −5 −0.02

0 20 40 60 0 20 40 Time(s) Time(s) A SR Inverse B SR Inverse (transient response)

−3 x 10 2

1 1

0 0 /dt(rad/s) /dt(rad/s) δ δ d d −1 −1

−2 0 20 40 60 0 10 20 30 40 50 Time(s) Time(s) C Filtered gimbal acceleration D Filtered gimbal acceleration (transient re- sponse)

Figure 7-6. Gimbal rates for Kgw = 2

A closer look at the transient response for the gimbal rates and accelerations of the two methods is shown in Figures 7-6 B and D and 7-7 B and D. It is gathered from Figure 7-6 B and 7-7 B that the steady-state response for the gimbal rates and accelerations of the SR and filtered acceleration law inverse is nonzero. The steady-state response for the gimbal rates and accelerations of the filtered acceleration law although nonzero, is considerably smaller than that for the SR inverse which in turn prevents the torque error from diverging. However, Figure 7-8 shows the torque error for the SR inverse appears to diverge where as the torque error for the filtered acceleration algorithm remains bounded.

139 200 0.4

100

) ) 0.2 2 2

0 (rad/s (rad/s

2 2 0 /dt /dt

δ −100 δ 2 2 d d −0.2 −200

0 20 40 60 10 20 30 40 50 Time(s) Time(s) A SR Inverse B SR Inverse (transient response)

0.06 0.04 50 ) ) 2 2 0.02 0 (rad/s 0 (rad/s 2 2

/dt /dt −0.02 δ δ 2 2 d −50 d −0.04 −0.06

0 20 40 60 0 20 40 Time(s) Time(s) C Filtered gimbal acceleration D Filtered gimbal acceleration (transient re- sponse)

Figure 7-7. Gimbal accelerations for Kgw = 2

Furthermore, it appears as though the precision is improved with larger Igw for the filtered acceleration algorithm. This may be due to the fact that it relies less on the SR inverse which would be the source of the torque error in this example.

140 −3 −3 x 10 x 10 0 0

−5 −2

−4 −10 (Nm) (Nm) e e τ τ −6 −15 −8

−20 −10 0 20 40 60 0 20 40 60 Time(s) Time(s) A SR Inverse B Filtered gimbal acceleration

Figure 7-8. Torque error for Kgw = 2

The singularity measures shown in Figure 7-9 are identical except that the singularity is approached quicker for SR inverse. It should be noted that as the value of

Igw is increased, the singularity measure approaches singularity later in the simulation for the filtered steering algorithm (i.e., larger gimbal rates lead to larger gimbal angle excursions which in turn, make the system approach singularity quicker).

−10 −10 x 10 x 10 1.2 1.2

1 1

0.8 0.8

m 0.6 m 0.6

0.4 0.4

0.2 0.2

0 0 0 20 40 60 0 20 40 60 Time(s) Time(s) A SR Inverse B Filtered gimbal acceleration

Figure 7-9. Singularity measure for Kgw = 2

The gimbal-flywheel assembly inertia will also have a degrading effect on the actual torque amplification of SGCMG actuators. This will be explained in the next section.

141 7.4 Effect of Igw on Torque Torque Amplification

The torque amplification of a single SGCMG can be described by its output torque

divided by the input torque as

||τ || ||h × δ˙ + I δ¨|| out = gw || || (7–15) τin ||ω × h + Igw δ¨||

From Eq.(7–15) it is seen that as the gimbal-flywheel inertia Igw −→ ∞, the other terms in the equation become less dominant and the torque amplification converges to one.

This is undesirable for SGCMGs because at the point that the torque amplification converges to one, the system essentially becomes a reaction-wheel system and the benefits of using SGCMGs are lost. Fortunately, a system of SGCMGs of this scale does not exist.

The scaling of SGCMGs does reduce the torque amplification. To show actually

how much the torque amplification is degraded by scaling, the value of torque amplification

is calculated for the IMPAC SGCMGs in Figure 2-2 with the parameters in Table 7-2.

Table 7-2. Model Parameters Variable  Value  Units 533.8 0 0   −6 2 Js 0 533.8 0 × 10 kgm 0 0 895.6 θ 52 deg −4 h0 4.486 × 10 Nms −6 2 Igw 5.154 × 10 kgm ωmax 3 deg/s δ˙max 1 rad/s 2 δ¨max 1 rad/s

For this example,

||τ || h δ˙ + I δ¨ out = 0 max gw max ≈ 43.4 || || (7–16) τin ωmax h0 + Igw δ¨max Therefore, there is a significant value of torque amplification even when scaling as seen

by the result in Eq.(7–16).

142 7.5 Summary

Singularities from systems utilizing SGCMGs cannot be easily scaled when describing the algorithms for their control. Just as the performance on a hardware level for SGCMGs will eventually flatline with scaling, so will the use of current steering algorithms for singularity avoidance. This chapter showed that some current steering algorithms may have difficulty when the gimbal-wheel assembly inertia becomes significant. In addition, this chapter also showed that as a consequence of significant values for gimbal-wheel assembly inertia, the performance of the SGCMG system is affected by the torque amplification approaching 1 as Igw −→ ∞.

143 CHAPTER 8 CONCLUSION

Control of spacecraft attitude with single-gimbal control moment gyroscopes

(SGCMGs) is difficult and becomes more so with the scaling of these actuators to small satellites. The research presented in this manuscript began with a discussion of the dynamic model for systems containing CMGs and their singularities. For SGCMG systems, singularities were classified and tools were developed to quantify the form of the singularity. These tools provided insights into these singularities (i.e., singular surfaces) and were used to quantify them mathematically. The singularities associated with SGCMGs were discussed in detail and classified by the tools developed. Through this discussion, it was shown a complete explanation of SGCMG singularities is absent from the literature. For example, it was found that the special case of where the singular direction s is along a gimbal axis δˆ can occur for rooftop arrangements when the rank of the Jacobian is 2. This was further shown to be a degenerate case which could lead to degenerate hyperbolic singularities that were previously neglected in the literature for systems of SGCMGs. Using linear algebra, it was proven that rooftop arrangements are free of elliptic internal singularities but still contained elliptic external singularities (i.e., all elliptic singularities do not have null motion are are thus impassable by null motion) associated with angular momentum saturation. Furthermore, degenerate hyperbolic singularities were shown to exist for rooftop arrangements (i.e., degenerate hyperbolic singularities contain only singular null solutions exist and are also impassable by null motion).

It was shown that selecting an arrangement of SGCMGS through choice of a desirable angular momentum envelope is difficult. Thus, a method of offline optimization was suggested in a very constrained case that will provide the best SGCMG arrangement in terms of Euler angles. However, this method is not that applicable for real spacecraft

144 design, although, it suggested that the current common configurations do not necessarily have the best performance.

Next, it was shown that legacy steering algorithms, which can be categorized into the three families of singularity avoidance, singularity escape, and singularity avoidance and escape, did not consider the form of internal singularity (i.e., hyperbolic or elliptic). This was shown to be problematic when precise attitude tracking is required because the same amount of torque error was used for both hyperbolic and elliptic singularities.

A Hybrid Steering Logic (HSL) was developed that takes into account the form of singularity. This algorithm uses this knowledge to apply null motion from a local gradient

(LG) method for singularity avoidance when near a hyperbolic singularity and torque error from Singular Direction Avoidance (SDA) when near a elliptic singularities. Through analytic derivations and numerical simulations, HSL was shown to perform better (i.e., lower torque error at hyperbolic singularities than pseudo-inverse methods and the ability to escape both elliptic and hyperbolic singularities unlike LG methods) than legacy methods for precise attitude tracking when using a four-SGCMG pyramid arrangement of SGCMGs. Also, HSL was shown to have computation of flops on the same order as many legacy methods.

Gimbal-lock was shown to be a special case of singularity when the output torque lies in the singular direction of the Jacobian. With the exception of the Generalized-Singularity Robust (GSR) inverse, legacy steering algorithms are known to be ineffective in escaping gimbal-lock. To provide other steering algorithms with the same benefit as

GSR, a attitude controller augmentation defined as Orthogonal Torque Compensation

(OTC) was developed. This method was shown to be successful in escaping gimbal-lock by adding orthogonal components of torque error when at singularity. This method was combined with two separate steering algorithms, simulated, and compared to GSR where it was shown numerically to have a much smoother transient response for the gimbal rates.

145 Finally, the problems with scaling SGCMGs were discussed. It was shown that the performance of SGCMGs is degraded (i.e., a lower torque amplification) and same legacy algorithms previously used on larger SGCMGs could be ineffective for scaled SGCMGs. A mathematical proof was used to show that with the increase in the gimbal-flywheel assembly inertia Igw compared to the flywheel angular momentum h0 causes this degradation in performance and the ineffectiveness of SGCMG control with use of the Singularity Robust (SR) inverse. The utility of scaled SGCMGs is still viable because the approximate SGCMG torque amplification for a single acutator was shown to be on the order of 50 which is far more than the less than one-to-one ratio for systems of reaction wheels.

146 APPENDIX A RIGID BODY DYNAMICS FORMULATION FOR CONTROL MOMENT GYROSCOPE ACTUATORS (SGCMG/VSCMG) A.1 Assumptions

The dynamic formulation for single gimbal and variable speed control moment

gyroscope (CMG) actuators assumes the absence of friction and external torque in the system (spacecraft including CMGs). In addition, it is also assumed that the

center of mass (cm) of each CMG is along its gimbal axis and therefore does not affect

the position of the overall cm of the system. These assumptions are valid for current

state-of-the-art CMGs. A.2 Dynamics

The centroidal angular momentum of the system consisting of that from the

spacecraft and a single CMG is

Hc = hW + hG + hS/C (A–1)

with contributions from the flywheel hW , gimbal hG , and the spacecraft hS/C . The flywheel and gimbal angular momentum are expressed as

hW = Iw1Ωhˆ (A–2)

and

hG = Ig1δ˙δˆ (A–3)

where the gimbal frame basis [hˆ,τ ˆ, δˆ] is related to the spacecraft body-fixed basis through a 3-2-1 rotation through the angles [δ, ϕ, ψ] by

hˆ = (sδsψ − cδcψcθ)ˆeb1 − (sδcψ − cδsψcθ)ˆeb2 − (cδsθ)ˆeb3 = h1ˆeb1 + h2ˆeb2 + h3ˆeb3 (A–4)

147 τˆ = cψsθˆeb1 + sψsθˆeb2 + cθˆeb3 = t1ˆeb1 + t2ˆeb2 + t3ˆeb3 (A–5)

δˆ = −(cδsψ −sδcψcθ)ˆeb1 +(cδcψ −sδsψcθ)ˆeb2 +(sδsθ)ˆeb3 = d1ˆeb1 +d2ˆeb2 +d3ˆeb3 (A–6)

where c(·) = cos(·) and s(·) = sin(·) and [ˆeb1, ˆeb2, ˆeb3] is the basis for the spacecraft body frame. Therefore, equivalent vector components for these angular momenta shown

in the spacecraft body-fixed basis are

hW = Iw1Ω(h1ˆeb1 + h2ˆeb2 + h3ˆeb3) (A–7)

and

hG = Ig3δ˙(d1ˆeb1 + d2ˆeb2 + d3ˆeb3) (A–8)

where Iw1 and Ig3 are the first and third components of the flywheel and gimbal inertias. The angular momentum from the spacecraft is expressed as the tensor product of the spacecraft centroidal inertia dyadic Jc with the inertial spacecraft angular velocity ω.

hS/C = Jc · ω (A–9)

The spacecraft centroidal inertia dyadic is

Jc = IG + J0 + mGW (rc · rc 1 − rc ⊗ rc ) (A–10)

where rc is the position of the cm of a CMG’s cm from the cm of the system expressed as

rc = rc1ˆeb1 + rc2ˆeb2 + rc3ˆeb3 (A–11)

and the static spacecraft inertia dyadic J0 is made up of constant inertias (i.e., assuming that the cm of the CMGs lies along the gimbal axis) and the inertias due

148 to the gimbal-wheel assembly IG are time varying due to the rotation about the gimbal axis. The expression of the static spacecraft inertia dyadic is

∑3 ∑3 J0 = Jij ˆebi ⊗ ˆebj (A–12) i=1 j=1 where (ˆebi ⊗ ˆebj ) · ˆebi = 0 and (ˆebi ⊗ ˆebj ) · ˆebj = ˆebi . It is assumed that the gimbal-wheel assembly inertia is aligned with the principle axes and can be expressed as

IGW = Ig1hˆ ⊗ hˆ + Ig2τˆ ⊗ τˆ + Ig3δˆ ⊗ δˆ (A–13) where ∑3 ∑3 hˆ ⊗ hˆ = hi hj ˆebi ⊗ ˆebj (A–14) i=1 j=1

∑3 ∑3 τˆ ⊗ τˆ = ti tj ˆebi ⊗ ˆebj (A–15) i=1 j=1

∑3 ∑3 δˆ ⊗ δˆ = di dj ˆebi ⊗ ˆebj (A–16) i=1 j=1 The equations of motion (EOM) assuming torque free motion (i.e., no external torques) are found through taking the inertial time derivative of the total system centroidal angular momentum in Eq.(A–1) as

∑ dH ◦ c = M = H + ω × H = 0 (A–17) dt c c c where ◦ Hc = [(a11 + a21)δ˙ + b1δ¨ + c1Ω]˙ + Jc · ω˙ (A–18)

The final EOM for a single CMG that has a single gimbal is

[(a11 + a21)δ˙ + b1δ¨ + c1Ω]˙ + Jc · ω˙ + ω × Hc = 0 (A–19)

The Jacobian matrices a11, a21, b1, and c1 are

149 ∂h a = (A–20) 11 ∂δ

∂I a = G · ω (A–21) 21 ∂δ

∂h b1 = (A–22) ∂δ˙

∂h c = (A–23) 1 ∂Ω where the CMG angular momentum h = hW + hG . For a system of CMGs with a single gimbal, the EOM concatenated into matrix which is a consequence of Eq.(A–19), is expressed as

× [(A1 + A2)δ˙ + Bδ¨ + CΩ]˙ + Jc ω˙ + ω Hc = 0 (A–24) where for n CMGs the Jacobian matrices are represented as

A1 = [a11, a12, a13, ...a1n] (A–25)

A2 = [a21, a22, a23, ...a2n] (A–26)

B = [b1, b2, b3, ...bn] (A–27)

C = [c1, c2, c3, ...cn] (A–28)

This concludes the development of the EOM for a rigid body spacecraft system of n CMGs which contain a single gimbal.

150 APPENDIX B MOMENTUM ENVELOPE CODE

1 function [hx,hy,hz] = Momentum Envelope PM(th,si,h0,int ext)

2

3 % %

4 %

5 % This code is generate the singularity surfaces for a

6 % any general SGCMG cluster with skew angle theta or

7 % inclination angle phi(i) and spacing angle si(i)

8 % where i = num CMG.

9 %

10 % The angles th(i) and si(i) are the Euler angles relating the

11 % spin axis of each CMG to the body frames X−axis

12 % %

13 %

14 %Frederick Leve

15 %Last updated: 07/08/08

16 % %

17 %

18 % This function simulated the CMG algorithms

19 % %

20 % INPUTS:

21 % h0 = nominal SGCMG angular momentum (could be vector if each

22 % CMG does not have the same angular momentum

23 %

24 % th = vector of inclination angles

25 % si = vector of spacing angles

26 % %

27 % OUTPUTS:

28 % hx = angular momentum of envelope in the x−direction

29 % hy = angular momentum of envelope in the x−direction

151 30 % hz = angular momentum of envelope in the x−direction

31 % %

32

33 %epsilon parameter vector for surface generation

34 %to show internal singular surface make one epsilon −1 instead of 1

35

36

37 num CMG = length(si);

38

39 if length(h0) == 1

40 if int ext == 0

41 % external singular surface

42 eps = ones(num CMG,1);

43

44 elseif int ext ==1

45 % internal singular surface

46 % eps = [ones(num CMG−1,1);−1];

47 % eps = [1 1 −1 1];

48 eps = [1 1 −1 1];

49

50 else

51 display('int ext must be either 0 or 1...

52 for internal or external singular surface')

53 end

54 else

55 min h0 = min(h0);

56 if int ext == 0

57 % external singular surface

58 for i = 1:num CMG

59 eps(i) = h0(i)/min(h0);

60 end

61 elseif int ext ==1

62 % internal singular surface

152 63 for i = 1:num CMG−1

64 eps(i) = h0(i)/min(h0);

65 end

66 eps(num CMG) = −h0(num CMG)/min(h0);

67 else

68 display('int ext must be either 0 or 1...

69 for internal or external singular surface')

70 end

71 end

72

73 for l = 1:num CMG

74 % The transformation C1 is about the inclination angle phi(i)

75 C1(:,:,l) = [cos(th(l)+3*pi/2) 0 −sin(th(l)+3*pi/2);

76 0 1 0;

77 sin(th(l)+3*pi/2) 0 cos(th(l)+3*pi/2)];

78

79 C2(:,:,l) = [cos(si(l)) sin(si(l)) 0;

80 −sin(si(l)) cos(si(l)) 0;

81 0 0 1];

82

83 g(:,l) = transpose(C1(:,:,l)*C2(:,:,l))*[1;0;0];

84 end

85

86

87 %total angular momentum at the singular states corresponding to singular

88 %direction u

89 H = zeros(3,1);

90 n = 100; %number of grid point for unit sphere

91 [x,y,z] = sphere(n); %generate the unit sphere (domain of u)

92

93 red light = 5;

94 traffic light = zeros( n+1 , n+1 );

95

153 96 for i = 1:n+1

97 for j = 1:n+1

98

99 u = [ x(i,j) ; y(i,j) ; z(i,j) ];

100

101 for k = 1:num CMG

102

103 %this is the cosine of angle

104 %between vectors since

105 %both of unit norm

106 u dot gk = abs(u'*g(:,k));

107

108 if ( u dot gk ≥ 0.95 )

109 traffic light(i,j) = red light;

110 end

111

112 end

113 end

114 end

115

116

117 for i = 1:n+1

118 for j = 1:n+1

119

120 u = [ x(i,j) ; y(i,j) ; z(i,j) ]; %compose the

121 %singularity vector u

122

123 for k = 1:num CMG

124

125 H = H + eps(k)/norm(cross( g(:,k), u ) )...

126 *cross( cross( g(:,k), u ) , g(:,k) );

127

128 end

154 129

130 hx(i,j) = H(1); %parse out the components of the

131 hy(i,j) = H(2); %momentum vector for later

132 hz(i,j) = H(3); %surface or mesh plotting.

133 H = zeros(3,1);

134 end

135 end

136

137 surfl(hz,hy,hx);

138 alpha(0.05);

155 APPENDIX C CONTROL MOMENT GYROSCOPE ACTUATOR SPECIFICATIONS

Table C-1. Off-the-Shelf CMG Specifications CMG Output Torque (Nm) Mass (kg)) Power (W) Honeywell M50 74.6 33.1 75.0 M95 128.8 38.56 129.0 M160 216.9 44.0 217.0 M225 305.1 54.0 305.0 M325 441.0 61.2 441.0 M325D 441.0 61.3 441.0 M600 813.5 81.6 814 M715 969.4 89.8 949.0 M1300 1762.6 125.2 1716 M1400 1898.1 131.5 1899.0 EHCMG 2304.9 146.4482 2306 SSTL MicroWheel-10S-E 0.01 1.1 5.0 SSTL CMG 15-45S 45.0 18.4 25.0

156 REFERENCES [1] Johann Bohennberger. Description of a machine for the explanation of the laws of motion of earth around an axis, and the change in orientation of the latter. Tubinger Blatter Fur Naturwissenschaften und Arzneikunde, 3:72–83, 1817.

[2] Simeon-Denis Poisson. Memoir on a special case of rotational movement of massive bodies. Journal de l’Ecole Polytechnique, 9:247–262, 1813.

[3] Donald MacKenzie. Inventing accuracy: A historical sociology of nuclear missle guidance. MIT Press, pages 31–40, 1990.

[4] P.C. Hughes and P. Carlisle. Spacecraft attitude dynamics. Number p. 156-184. J. Wiley, 1986. [5] H. Krishnan, N.H. McClamroch, and M. Reyhanoglu. Attitude stabilization of a rigid spacecraft using two momentum wheel actuators. In In its Efficient Reorientation Maneuvers for Spacecraft with Multiple Articulated Payloads 20 p (SEE N93-29988 11-18), 1993.

[6] J.D. Adams and S.W. McKenney. Gyroscopic roll stabilizer for boats, June 4 2003. US Patent App. 10/454,905.

[7] II Skelton and C. Eugene. Mixed Control Moment Gyro and Momentum Wheel Attitude Control Strategies. PhD thesis, Virginia Polytechnic Institute and State University, 2003.

[8] A Pothiawala and MA Dahleh. Hoo Optimal Control for the Attitude Control and Momentum Management of the Space Station. MIT Press.

[9] F. Wu. Fixed-Structure Robust CMG Momentum Manager Design for the International Space Station. In AIAA Guidance, Navigation, and Control Con- ference and Exhibit, Denver, CO, Aug. 14-17, 2000.

[10] S.R. Vadali and H.S. Oh. Space Station Attitude Control and Momentum Management- A Nonlinear Look. Journal of Guidance, Control, and Dynamics, 15(3):577–586, 1992. [11] L.R. Bishop, R.H. Bishop, and K.L. Lindsay. Proposed CMG Momentum Management Scheme for Space Station. In IN: AIAA Guidance, Navigation and Control Conference, Monterey, CA, Aug. 17-19, Technical Papers, volume 2, 1987.

[12] P. Hattis. Predictive Momentum Management for the Space Station. Journal of Guidance, Control, and Dynamics, 9(4):454–461, 1986. [13] B. Wie and et al. New Approach to Attitude/Momentum Control for the Space Station. Journal of Guidance, Control, and Dynamics, 12(5):714–721, 1989.

157 [14] R.H. Bishop, S.J. Paynter, and J.W. Sunkel. Adaptive Control of Space Station with Control Moment Gyros. IEEE Control Systems Magazine, 12(5):23–28, 1992.

[15] R.H. Bishop, S.J. Paynter, and J.W. Sunkel. Adaptive Control of Space Station During Nominal Operations with CMGs. In Proceedings of IEEE Conference on Decision and Control, 30th, Brighton, United Kingdom, Dec. 11-13, volume 3, 1991.

[16] J. Zhou and D. Zhou. Spacecraft Attitude Control with Double-Gimbaled Control Moment Gyroscopes. In Robotics and Biomimetics, 2007. ROBIO 2007. IEEE International Conference on, pages 1557–1562, 2007.

[17] T. Yoshikawa. A Steering Law for Double Gimbal Control Moment Gyro System. NASA TM-X-64926, 1975.

[18] B.K. Powell, G.E. Lang, S.I. Lieberman, and S.C. Rybak. Synthesis of Double Gimbal Control Moment Gyro Systems for Spacecraft Attitude Control. In AIAA Guidance, Navigation and Control Conference, Snowmass, CO, August 19-21, 1985, pages 71s–937.

[19] H.F. Kennel. A Control Law for Double-Gimballed Control Moment Gyros Used for Space Vehicle Attitude Control. Technical report, NASA, 1970.

[20] J. Ahmed and D.S. Bernstein. Adaptive Control of Double-Gimbal Control-Moment Gyro with Unbalanced Rotor. Journal of Guidance, Control, and Dynamics, 25(1):105–115, 2002.

[21] D.J. Richie, V.J. Lappas, and G Prassinos. A Practical Small Satellite Variable-Speed Control Moment Gyroscope For Combined Energy Storage and Attitude Control. In AIAA/AAS Astrodynamics Specialist Conference and Exhibit Aug 18-21, Honolulu, HI, 2008.

[22] D.J. Richie, V.J. Lappas, and B. Wie. A Practical Variable-Speed Control Moment Gyroscope Steering Law for Small Satellite Energy Storage and Attitude Control. In AIAA/AAS Astrodynamics Specialist Conference and Exhibit Aug 18-21, Honolulu, HI, 2008.

[23] H. Yoon and P. Tsiotras. Spacecraft Line-of-Sight Control Using a Single Variable-Speed Control Moment Gyro. Journal of Guidance Control and Dynamics, 29(6):1295, 2006.

[24] H. Yoon. Spacecraft Attitude and Power Control Using Variable Speed Control Moment Gyros. PhD thesis, Georgia Institute of Technology, 2004. [25] H. Yoon and P. Tsiotras. Spacecraft Angular Velocity and Line-of-Sight Control Using A Single-Gimbal Variable-Speed Control Moment Gyro. In 2005 AIAA Guidance, Navigation, and Control Conference and Exhibit, pages 1–22, 2005.

158 [26] H Schaub and JL Junkins. Singularity Avoidance Using Null Motion and Variable-Speed Control Moment Gyros. Journal of Guidance, Control, and Dy- namics, 23(1):11–16, 2000. [27] H. Lee, I.H. Lee, and H. Bang. Optimal Steering Laws for Variable Speed Control Moment Gyros. In 2005 AIAA Guidance, Navigation, and Control Conference and Exhibit, pages 1–11, 2005. [28] H. Schaub, S.R. Vadali, and J.L. Junkins. Feedback Control Law for Variable Speed Control Moment Gyros. Journal of the Astronautical Sciences, 46(3):307–328, 1998. [29] H. Schaub and J.L. Junkins. CMG Singularity Avoidance Using VSCMG Null Motion (Variable Speed Control Moment Gyroscope). In AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Boston, MA, pages 213–220, 1998. [30] J.Y. Shin, KB Lim, and DD Moerder. Attitude Control for an Aero-Vehicle Using Vector Thrusting and Variable Speed Control Moment Gyros. In AIAA Guidance, Navigation, and Control Conference and Exhibit, pages 1–10, 2005.

[31] D. DeVon, R. Fuentes, and J. Fausz. Closed-Loop Power Tracking for an Integrated Power and Attitude Control System Using Variable-Speed Control Moment Gyroscopes. In AIAA Guidance, Navigation, and Control Conference and Ex- hibit, AIAA, Aug, 2004.

[32] H. Yoon and P. Tsiotras. Spacecraft Adaptive Attitude and Power Tracking with Variable Speed Control Moment Gyroscopes. Journal of Guidance Control and Dynamics, 25(6):1081–1090, 2002.

[33] D.A. DeVon and R.J. Fuentes. Adaptive Attitude Control and Closed-Loop Power Tracking for an Integrated Power and Attitude Control System using Variable Speed Control Moment Gyroscopes. In AIAA Guidance, Navigation, and Control Conference and Exhibit, Aug 15-18, San Francisco, CA., pages 1–23, 2005.

[34] J.L. Fausz and D.J. Richie. Flywheel Simultaneous Attitude Control and Energy Storage Using a VSCMG Configuration. In Proceedings of the 2000 IEEE Interna- tional Conference on Control Applications, 2000., pages 991–995, 2000.

[35] D.A. Bearden. Small-satellite costs. Crosslink, 2(1):32–44, 2001.

[36] E.B. Tomme. The Paradigm Shift to Effects-Based Space: Near-Space as a Combat Space Effects Enabler, 2005. [37] K. Schilling. Distributed small satellites systems in Earth observation and telecommunication.

[38] W.J. Larson and J.R. Wertz. Space Mission Analysis and Design. Microcrosm, 3rd edition, 1999.

159 [39] B. Wie, D. Bailey, and C. Heiberg. Singularity Robust Steering Logic for Redundant Single-Gimbal Control Moment Gyros. Journal of Guidance, Control, and Dynam- ics, 24(5):865–872, 2001. [40] B. Wie, D. Bailey, and C. Heiberg. Rapid Multitarget Acquisition and Pointing Control of Agile Spacecraft. Journal of Guidance Control and Dynamics, 25(1):96–104, 2002. [41] H. Kurokawa. A Geometric Study of Single Gimbal Control Moment Gyros. PhD thesis, University of Tokyo, 1998.

[42] G. Margulies and JN Aubrun. Geometric Theory of Single-Gimbal Control Moment Gyro Systems. Journal of the Astronautical Sciences, 26(2):159–191, 1978.

[43] N.S. Bedrossian, J. Paradiso, E.V. Bergmann, and D. Rowell. Steering Law Design for Redundant Single-Gimbal Control Moment Gyroscopes. Journal of Guidance, Control, and Dynamics, 13(6):1083–1089, 1990.

[44] B Wie. Singularity Escape/Avoidance Steering Logic for Control Moment Gyro Systems, August 2003. [45] B. Hamilton and B. Underhill. Modern Momentum Systems for Spacecraft Attitude Control. Advances in the Astronautical Sciences, 125:57, 2006.

[46] FB Abbott, B. Hamilton, T. Kreider, P. Di Leonardo, and D. Smith. MCS Revolution. Advances in the Astronautical Sciences, 125:99, 2006.

[47] H. Kurokawa. Survey of Theory and Steering Laws of Single-Gimbal Control Moment Gyros. Journal of Guidance Control and Dynamics, 30(5), 2007.

[48] T.A. Sands, J.J. Kim, and B. Agrawal. 2H Singularity-Free Momentum Generation with Non-Redundant Single Gimbaled Control Moment Gyroscopes. In 45th IEEE Conference on Decision and Control, pages 1551–1556, 2006.

[49] B. Underhill and B. Hamilton. Momentum Control System and Line-of-Sight Testbed. Advances in the Astronautical Sciences, 125:543, 2006.

[50] D. Brown and M.A. Peck. Scissored-Pair Control-Moment Gyros: A Mechanical Constraint Saves Power. Journal OF Guidance, Control, AND Dynamics, 31(6), 2008.

[51] D. Brown. Control Moment Gyros as Space-Robotics Actuators. AIAA/AAS Astrodynamics Specialist Conference and Exhibit 18 - 21 August 2008, Honolulu, HI, 2008.

[52] H. Kurokawa. Constrained Steering Law of Pyramid-Type Control Moment Gyros and Ground Tests. Journal of Guidance, Control, and Dynamics, 20(3):445–449, 1997.

160 [53] F Leve, G Boyarko, and N Fitz-Coy. Optimization in choosing gimbal axis orientations of optimization in choosing gimbal axis orientations of a cmg attitude control system. Infotech@Aerospace Conference April 6-10, Seattle WA, 2009. [54] B. Wie and J. Lu. Feedback Control Logic for Spacecraft Eigenaxis Under Slew Rate and Control Constraints. Journal of Guidance, Control, and Dynamics, 18(6):1372–1379, 1995. [55] Honeywell. Dynamic cmg array and method. Patent 20070029447, 2009.

[56] J. Baillieul, J. Hollerbach, and R. Brockett. Programming and Control of Kinematically Redundant Manipulators. In Decision and Control, 1984. The 23rd IEEE Conference on, volume 23, 1984.

[57] M.A. Peck, B.J. Hamilton, and B. Underhill. Method and System for Optimizing Torque in a CMG Array, July 30 2004. US Patent App. 10/903,774.

[58] D.A. Bailey, C.J. Heiberg, and B. Wie. Continuous Attitude Control that Avoids CMG Array Singularities, October 10 2000. US Patent 6,131,056.

[59] M.R. Elgersma, D.P. Johnson, M.A. Peck, B.K. Underhill, G. Stein, B.G. Morton, and B.J. Hamilton. Method and System for Controlling Sets of Collinear Control Moment Gyroscopes, November 30 2005. US Patent App. 11/291,706.

[60] L. Jones and M. Peck. A generalized framework for linearly-constrained singularity-free control moment gyro steering laws. In AIAA Guidance, Naviga- tion and Control Conference, 209.

[61] D. E. Cornick. Singularity Avoidance Control Laws for Single Gimbal Control Moment Gyros. AIAA, pages 20–33, 1979.

[62] R. D. Hefner and C. H. McKenzie. A Technique for Maximizing Torque Capability of Control Moment Gyro Systems. Astrodynamics, 54(83-387):905–920, 1983.

[63] B. Wie. Space Vehicle Dynamics and Control. AIAA, 1998. [64] D. Jung and P. Tsiotras. An Experimental Comparison of CMG Steering Control Laws. In Proceedings of the AIAA Astrodynamics Specialist Conference, 2004.

[65] M.D. Kuhns and A.A. Rodriguez. A Preferred Trajectory Tracking Steering Law for Spacecraft with Redundant CMGs. In Proceedings of the American Control Conference, 1995., volume 5, 1995.

[66] J.A. Paradiso. Global steering of single gimballed control moment gyroscopes using a directed search. Journal of Guidance, Control, and Dynamics, 15(5):1236–1244, 1992.

[67] J.A. Paradiso. A Search-Based Approach to Steering Single Gimballed CMGs. Technical report, NASA Johnson Space Center (JSC), Houston, TX, CSDL, 1991.

161 [68] S. Asghar, PL Palmer, and M. Roberts. Exact steering law for pyramid-type four control moment gyro systems. In AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Keystone, CO, 2006. [69] Y. Nakamura and H. Hanafusa. Inverse Kinematic Solutions with Singularity Robustness for Robot Manipulator Control. ASME, Transactions, Journal of Dynamic Systems, Measurement, and Control, 108:163–171, 1986. [70] K.A. Ford and C.D. Hall. Singular Direction Avoidance Steering for Control-Moment Gyros. Journal of Guidance Control and Dynamics, 23(4):648–656, 2000.

[71] A.N. Pechev. Feedback-based steering law for control moment gyros. Journal of Guidance Control and Dynamics, 30(3):848, 2007.

[72] F Leve, G Boyarko, J Munoz, and N Fitz-Coy. Comparison of state-of-the-art steering logics for single-gimbal control moment gyroscopes. In AAS Astrodynam- ics Conference, Pittsburgh, PA, 2009.

[73] T.A. Sands. Fine Pointing of Military Spacecraft. PhD thesis, Naval Postgraduate School, March 2007. [74] S.R. Vadali, S.R. Walker, and H.S. Oh. Preferred gimbal angles for single gimbal control moment gyros. Journal of Guidance, Control, and Dynamics, 13(6):1090–1095, 1990. [75] H. Leeghim, H. Bang, and J.O. Park. Singularity avoidance of control moment gyros by one-step ahead singularity index. Acta Astronautica, 2008.

[76] D.N. Nenchev and Y. Tsumaki. Singularity-Consistent Attitude Motion Analysis and Control Based on Euler Angle Parameterization. In SICE Annual Conference, volume 1, 2003.

[77] M.D. Kuhns and A.A. Rodriquez. Singularity Avoidance Control Laws For a Multiple CMG Spacecraft Attitude Control System. In American Control Conference, volume 3, 1994.

[78] J.S. Lee, H. Bang, and H. Lee. Singularity Avoidance by Game Theory for Control Moment Gyros. In AIAA Guidance, Navigation, and Control Conference and Exhibit, pages 1–20, 2005.

[79] S.R. Vadali. Variable-Structure Control of Spacecraft Large-Angle Maneuvers. Journal of Guidance, Control, and Dynamics, 9(2):235–239, 1986.

[80] W MacKunis, F Leve, A Waldrum, N Fitz-Coy, and W Dixon. Adaptive Neural Network Satellite Attitude Control with Experimental Validation. IEEE Transactions on Control Systems Technology, 2009.

162 [81] W. MacKunis, K. Dupree, N. Fitz-Coy, and W. Dixon. Adaptive Satellite Attitude Control in the Presence of Inertia and CMG Gimbal Friction Uncertainties. In American Control Conference, 2007. [82] F. Leve. Development of the spacecraft orientation buoyancy experimental kiosk. Master’s thesis, University of Florida, 2008.

[83] A. Fleming and I.M. Ross. Singularity-Free Optimal Steering Of Control Moment Gyros. Advances in the Astronautical Sciences, 123, 2006.

[84] H.S. Oh and SR Vadali. Feedback control and steering laws for spacecraft using single gimbal control moment gyros. Master’s thesis, Texas A& M University, 1988.

163 BIOGRAPHICAL SKETCH Frederick Aaron Leve was born in Hollywood, Florida, in 1981. In August 2000 he was accepted into the University of Floridas Department of Aerospace Engineering in the College of Engineering where he pursued his bachelors degrees in Mechanical and Aerospace Engineering. After completing his bachelors degrees in May 2005, he was accepted into the masters program in aerospace engineering at the University of

Florida. While in the masters program, he received two awards in academia. In January

2007, he received the American Institute of Aeronautics and Astronautic’s Abe Zarem

Award for Distinguished Achievement in Astronautics. For this award he was invited to Valencia, Spain, where he competed in the International Astronautical Federations International Astronautical Congress Student Competition. Here he received the silver

Herman Oberth medal in the graduate category. He completed the masters program in

May 2008 and continued on to his PhD. In May 2006, he was accepted to the Air Force

Research Lab (AFRL) Space Scholars Program, where spent his summer conducting space research. After space scholars, he was employed as a student temporary employee at AFRL where he received the Civilian Quarterly Award for all of AFRL in his category. Currently he works in the Guidance, Navigation, and Control group at AFRL

Space Vehicles Directorate. His interests include, applied math, satellite attitude control, satellite pursuit evasion, astrodynamics, and orbit relative motion.

164