Post on 15-May-2020
Control Moment Gyro Actuator for Small SatelliteApplications
by
Reimer Berner
Thesis presented at the University of Stellenboschin partial fulfilment of the requirements for the
degree of
Master of Science in Electrical & Electronic Engineering
Department of Electrical & Electronic EngineeringUniversity of Stellenbosch
Private Bag X1, 7602 Matieland, South Africa
Study leader: Prof W.H. Steyn
April 2005
Copyright © 2005 University of StellenboschAll rights reserved.
Declaration
I, the undersigned, hereby declare that the work contained in this thesis is my own originalwork and that I have not previously in its entirety or in part submitted it at any universityfor a degree.
Signature: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .R. Berner
Date: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ii
Abstract
Control Moment Gyro Actuator for Small Satellite Applications
R. Berner
Department of Electrical & Electronic EngineeringUniversity of Stellenbosch
Private Bag X1, 7602 Matieland, South Africa
Thesis: M Sc Eng (E & E)
April 2005
The aim of the thesis is to design a Control Moment Gyro (CMG) actuator which can beused in small satellite applications. The hardware and software of the CMG has to bedesigned according to specifications given. A satellite fitted with these CMGs has to beable to do a 30 degree rotation within 10 seconds.
A mathematical model of a satellite fitted with six CMGs was designed for simulationpurposes. This model was then extended to include a 3-axis control algorithm which con-trol the angular momentum vectors of the CMGs. An imaging sequence, which describesthe attitude and angular rate of the satellite at any point in time, was also implementedinto the design to produce a smooth attitude function during pointing maneuvers. Thisimaging sequence is used as input to the 3-axis control algorithm to ensure high precisionpointing of the satellite.
The CMG was tested on an air bearing table and the results of the tests were comparedto the mathematical simulations. The results of these tests were as expected and thefunctionality of the CMG was verified.
iii
Uittreksel
Control Moment Gyro Actuator for Small Satellite Applications
R. Berner
Departement Elektriese & Elektroniese IngenieursweseUniversiteit van Stellenbosch
Privaatsak X1, 7602 Matieland, Suid Afrika
Tesis: M Sc Ing (E & E)
April 2005
Die doel van die tesis is om ’n Beheer Moment Giro (BMG) aktueerder te ontwerp wat opklein satelliete gebruik kan word. Die hardeware en sagteware van die BMG is ontwerpvolgens gegewe spesifikasies. ’n Satelliet wat met hierdie BMGs toegerus is, moet ’n 30grade rotasie binne 10 sekondes afhandel.
’n Wiskundige model van ’n satelliet met ses BMGs was ontwerp vir simulasie doeleindes.Hierdie model is uitgebrei om ’n 3-as beheer algoritme in te sluit wat die hoekmomen-tum vektore van die BMGs beheer. ’n Beeldafneem sekwensie wat die posisie en diehoeksnelheid van die satelliet op enige gegewe oomblik beskryf, is ook geïmplementeerin die ontwerp om sodoende ’n gladde rotasie funksie te verkry wanneer die satelliet inverskillende rigtings moet mik. Hierdie beeldafneem sekwensie dien as intree tot die 3-asbeheerder om sodoende die satelliet akkuraat te kan rig.
Die BMG is getoets op ’n luglaertafel en die resultate van die toetse is vergelyk met diewiskundige simulasies. Die resultate van hierdie toetse is soos verwag en die funksionaliteitvan die BMG is bevestig.
iv
Acknowledgements
I would like to thank the following for their help and assistance in the successful completionof this thesis:
• Thank You Almighty God for Your guiding hand in my life.
• Prof. W.H. Steyn for his guidance and support throughout this thesis.
• Xandri Farr for all his help, and the design and layout of the microcontroller pcb.
• Mnr. J. Treurnicht and Corne van Daalen for their help on the air bearing table.
• Mnr. J. Blom and the SMD group for the mechanical design of the CMG.
• Eckhardt Kuhn, who helped with all the practical tests.
• My parents for their support and my education.
• All my friends for encouragement during the writing of my thesis.
v
Contents
List of Figures x
List of Tables xiii
List of Acronyms and Abbreviations xiv
1 Introduction 1
1.1 Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Overview of the Design Approach . . . . . . . . . . . . . . . . . . . . . . . 6
2 CMG and Satellite theory 7
2.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1 Coordinate Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.2 Attitude parameterization . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 Control Moment Gyros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.2 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.3 Single Gimbal CMG Model . . . . . . . . . . . . . . . . . . . . . . 11
2.2.4 Mathematical Model of Satellite with SGCMGs . . . . . . . . . . . 13
2.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3 Control Moment Gyro Design 19
3.1 System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
vi
CONTENTS vii
3.2 Mechanical System Overview and Design . . . . . . . . . . . . . . . . . . . 20
3.3 Motor Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.1 Brushless DC Motor . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3.2 Stepper Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4 BLDC Motor Power Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.5 Stepper Motor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.6 BLDC Motor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.6.1 Controller Component Values . . . . . . . . . . . . . . . . . . . . . 25
3.6.2 Current Loop Design . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6.3 Digital Speed Loop Design . . . . . . . . . . . . . . . . . . . . . . . 27
3.6.4 Speed Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.7 Microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.8 Computer Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4 Satellite Attitude Control 35
4.1 Single-Axis Attitude Control . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2 Three-Axis Quaternion Feedback Control . . . . . . . . . . . . . . . . . . . 38
4.2.1 Quaternion Feedback Control Logic . . . . . . . . . . . . . . . . . . 38
4.2.2 Eigenaxis Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2.3 Rotation Under Slew Rate Constraint and Control Input Saturation 41
4.3 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.3.1 Single-Axis Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.3.2 Three-Axis Quaternion Feedback Rotation . . . . . . . . . . . . . . 43
5 Control Demand for Imaging Sequence 46
5.1 Imaging Sequence Objective . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.2 Detailed Slew Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3 Attitude Demand Derivation . . . . . . . . . . . . . . . . . . . . . . . . . . 49
CONTENTS viii
5.3.1 Slew 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.3.2 Slew 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.3.3 Slew 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3.4 Slew 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.4 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6 Measurements and Results 60
6.1 Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.1.1 Gimbal Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.1.2 Moment of Inertia Calculation . . . . . . . . . . . . . . . . . . . . . 61
6.1.3 Glass Surface Test . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.1.4 Constant Angular Rate Test . . . . . . . . . . . . . . . . . . . . . . 64
6.2 CMG Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.2.1 Rest-to-Rest Slew . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.2.2 Moving Demand Test . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7 Conclusions 68
7.1 Results Obtained . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
7.2 Additional Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Bibliography 70
A CMG Machine Drawing 73
B Schematics of Brushless DC Motor Electronics 75
C CMG Setup for Practical Tests 82
D CMG Interface Program 85
D.1 Stepper Motor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
D.2 BLDCM Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
CONTENTS ix
D.3 Data Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
D.4 Data Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
E Matlab Simulation Design and S-function Code 89
F RF Link 94
G Datasheets 98
G.1 Brushless DC Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
G.2 Stepper Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
G.3 Stepper Motor Gearhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
G.4 Stepper Motor Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
List of Figures
1.1 Agile small satellites will increase the amount and quality of data collected 1
1.2 Pyramid configuration containing four SGCMGs . . . . . . . . . . . . . . . 3
1.3 Picture of a Control Moment Gyro . . . . . . . . . . . . . . . . . . . . . . 4
2.1 Coordinate Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 A 2-1-3 Euler Angle Rotation . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 The Euler Angles: Roll φ, Pitch θ and Yaw ψ . . . . . . . . . . . . . . . . 9
2.4 Torque, acceleration and angle diagrams for a small satellite executing a
30o maneuver in 10 seconds . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5 A Single Gimbal CMG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.6 SGCMG Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.7 Three Set SGCMG Configuration . . . . . . . . . . . . . . . . . . . . . . . 13
2.8 Simulation with constant CMG Torque . . . . . . . . . . . . . . . . . . . . 17
2.9 Simulation with constant Gimbal Rate . . . . . . . . . . . . . . . . . . . . 18
3.1 Block Diagram of CMG System . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Picture of the CMG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Gyro Torque acting back to the system . . . . . . . . . . . . . . . . . . . . 23
3.4 BLDC Motor Power Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5 Analogue PI Controller Circuit . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6 Measured acceleration per second for 1000 units input . . . . . . . . . . . . 28
3.7 Discrete Closed-loop speed control . . . . . . . . . . . . . . . . . . . . . . . 29
x
LIST OF FIGURES xi
3.8 Program flow diagram of Microcontroller . . . . . . . . . . . . . . . . . . . 32
4.1 Simulation results of the PID Saturation Control Logic in one axis . . . . . 42
4.2 Simulation results of the Quaternion Feedback Control Logic in one axis . 43
4.3 Simulation results of the Quaternion Feedback Control Logic in one axis . 44
4.4 Simulation results of the Quaternion Feedback Control Logic in three axis . 45
4.5 Simulation results of the Quaternion Feedback Control Logic in three axis . 45
5.1 Image Sequence Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 Quaternion Demand for Imaging Sequence . . . . . . . . . . . . . . . . . . 56
5.3 Body Rate Demand for Imaging Sequence . . . . . . . . . . . . . . . . . . 57
5.4 Simulation Result for Imaging Sequence - Torque Command . . . . . . . . 57
5.5 Simulation Result for Imaging Sequence - Euler Angles . . . . . . . . . . . 58
5.6 Simulation Result for Imaging Sequence - Gimbal Rate . . . . . . . . . . . 58
5.7 Simulation Result for Imaging Sequence - Euler Angle Error . . . . . . . . 59
6.1 Measuring the gimbal’s step size . . . . . . . . . . . . . . . . . . . . . . . . 60
6.2 Angular acceleration of Momentum Wheel and Cart (Gyro) . . . . . . . . 62
6.3 Diagram of the CMG setup . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.4 Measured results of ’Mirror’ Test . . . . . . . . . . . . . . . . . . . . . . . 63
6.5 Measurements for constant angular rate input . . . . . . . . . . . . . . . . 64
6.6 Measured results of the Rest-to-Rest Slew . . . . . . . . . . . . . . . . . . 66
6.7 Measured results of the Moving Demand . . . . . . . . . . . . . . . . . . . 67
A.1 Drawing of CMG stand with Gimbal . . . . . . . . . . . . . . . . . . . . . 74
C.1 Picture of aluminium frame with gas canister and nozzles . . . . . . . . . . 82
C.2 Picture of the table with glass surface . . . . . . . . . . . . . . . . . . . . . 83
C.3 Diagram of the CMG setup . . . . . . . . . . . . . . . . . . . . . . . . . . 84
C.4 Picture of the CMG setup . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
LIST OF FIGURES xii
D.1 Picture of the CMGprobe control panel . . . . . . . . . . . . . . . . . . . . 88
E.1 Picture of Matlab Simulation . . . . . . . . . . . . . . . . . . . . . . . . . 90
F.1 TX2 Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
F.2 RX2 Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
F.3 Voltage Regulator Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
F.4 Picture of the RF Link Unit . . . . . . . . . . . . . . . . . . . . . . . . . . 97
List of Tables
1.1 Satellite Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1 Minimum and maximum values for the two simulations . . . . . . . . . . . 18
3.1 CMG Command Packet IDs . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2 Packet frame of data transmitted from microcontroller . . . . . . . . . . . 33
3.3 Packet frame of data transmitted from PC . . . . . . . . . . . . . . . . . . 34
5.1 Mission Sequence of Attitude Demand . . . . . . . . . . . . . . . . . . . . 48
6.1 Results from Moment of Inertia Tests . . . . . . . . . . . . . . . . . . . . . 61
xiii
List of Acronyms and Abbreviations
A Ampere
Acc Accelerate
ACS Attitude Control System
ADCS Attitude Determination And Control Systems
BLDCM Brushless Direct Current Motor
CAN Controller Area Network
cm Centimetre
CMG Control Moment Gyro
CMOS Complementary Metal-Oxide-Semiconductor
CCW Counter Clockwise
CW Clockwise
DC Direct Current
Deg Degrees
DGCMG Double Gimble Control Moment Gyro
EPROM Erasable Programmable Read Only Memory
HB High Byte
I/O Input/Output
IC Integrated Circuit
ID Identification
kbit Kilobit
kHz Kilohertz
LB Low Byte
m Milli
Max Maximum
Mbit Megabit
MHz Megahertz
Min Minimum
mm Millimetre
MOSFET Metal Oxide Semiconductor Field Effect Transistor
Nm Newton Metre
xiv
LIST OF ACRONYMS AND ABBREVIATIONS xv
PC Personal Computer
PCB PC Board
PID Proportional, Integral and Derivative
PWM Pulse Width Modulation
RF Radio Frequency
ROM Read Only Memory
RPM Revolutions Per Minute
RW Reaction Wheel
s Seconds
Sat Saturate
SGCMG Single Gimble Control Moment Gyro
Sgn Signum
SUNSAT Stellenbosch UNiversity SATellite
V Volt
VSCMG Variable Speed Control Moment Gyro
XOR eXclusive OR
Chapter 1
Introduction
Satellites are required to have more rapid rotational maneuverability and agility than
before. These satellites, known as agile satellites, need attitude control systems (ACS)
that can provide rapid multi-target pointing and tracking capabilities [2]. An agile satellite
is much more efficient and functional, and it’s return of data is substantially increased by
it’s agility.
Future satellite applications, such as missile-tracking, imaging and the tracking of ground
moving targets will, as a necessity, require the ability to do rapid rotational maneuvers.
For instance, the next-generation commercial Earth imaging satellites would rather move
the whole spacecraft body rapidly than to sweep only the imaging system from side to
side. This ensures improved stability and high-resolution images with better definition.
Earth
Satellite ground track
Imaging
target
Figure 1.1: Agile small satellites will increase the amount and quality of data collected
Rapid retargeting maneuvers however, are subjected to the physical limits of sensors,
satellite’s structural rigidity, actuators and mission constraints. For a satellite to be agile,
it requires fast slew maneuvers in the range of 1-10o/s. Designing a high performance
ACS is also constrained by the physical size of a satellite, especially small satellites.
1
Chapter 1 — Introduction 2
Unfortunately, current ACS actuators such as reaction wheels and momentum wheels, are
not able to provide this degree of agility efficiently, because of their small control torque
capability. Control Moment Gyros (CMG) on the other hand are ideal, since it has much
bigger control torque output for a small torque input. CMGs have been used on various
large spacecrafts before, but yet, to date, not on small satellites.
Spacecraft missions [10] in which CMGs have been used are Skylab, MIR, ISS, KH-11
and some USSR spacecrafts. The CMGs used on these spacecrafts are large in size,
mechanically complex and very expensive. CMGs were employed as primary actuators
because of their much higher control torque capability [21] of 100 to 3000 Nm maximum
torque, whereas large reaction wheels have a maximum torque of only 1.5 Nm.
Due to the large size and weight of these CMGs it was not possible to use them on smaller
satellites. This situation however, has changed recently since the development of lighter
and more compact CMGs. Medium sized satellites use the large torque capability of
these smaller CMGs to do faster slew maneuvers. CMGs are becoming more attractive
for smaller satellites as well, such as micro satellites and nano satellites due to this torque
amplification capability.
Name Mass Class
Large satellites > 1000 kg Medium to Large
Medium satellites 500 - 1000 kg Satellites
Mini satellites 100 - 500 kg
Micro satellites 10 - 100 kg Small Satellites
Nano satellites 1 - 10 kg
Pico satellites 0.1 - 1 kg
Table 1.1: Satellite Classification
The biggest inherent problem encountered with these CMGs are the appearance of sin-
gularities [8]. These singularities are the condition when no torque can be produced for
certain gimbal angle outputs. When a gimbal encounters a singularity, it would stop (lock)
and not be able to move in any direction since that would produce the wrong torque.
This led to the development of a steering logic which will avoid singularities by steering
the CMGs away from a point with zero torque potential. Many control laws have been
developed which avoid singularities and still remain within the hardware contraints of the
system. The most popular one is for a pyramid configuration containing four SGCMGs.
Such a system has an approximate spherical momentum envelope with almost the same
momentum capability in all three axis.
Chapter 1 — Introduction 3
The pyramid mounting arrangement is shown in Figure 1.2. Four SGCMGs are con-
strained in such a way that the gimbal axes are orthogonal to the faces of the pyramid.
The faces of the pyramid are inclined with an angle of β from the horizontal to result in
gimbal axes angles of (90o−β) degrees from the horizontal. A nearly spherical momentum
envelope is achieved when all four CMGs have the same angular momentum about their
spin-axis and the skew angle is chosen as β = 54.73 degrees [23].
H1
H2
H3
H4
βδ1
δ2δ3
δ4
x
y
z
CMG #2
Gimbal Axis
CMG #1
Gimbal Axis
CMG #3
Gimbal Axis
CMG #4
Gimbal Axis
Figure 1.2: Pyramid configuration containing four SGCMGs
A CMG consists of a momentum wheel with large, constant angular momentum of which
the angular momentum vector can be rotated with respect to the satellite’s body [22]. The
momentum wheel is mounted on a gimbal or gimbals and can be pivoted by torquing the
gimbal. This results in a precessional, gyroscopic reaction torque orthogonal to both the
rotor spin and gimbal rotation axes. A more thorough explanation is given in Section 2.2.2.
CMGs consist out of two basic types: a single gimbal control moment gyro (SGCMG) and
a double gimbal control moment gyro (DGCMG). For a SGCMG, the momentum wheel
is constrained to rotate along a circle normal to the gimbal axis. The momentum wheel
of a DGCMG is suspended inside two gimbals and therefore the momentum vector can be
aimed along any direction on a sphere. The gimbal steering logic of a DGCMG can more
easily avoid singularities since it has an extra degree of freedom. However, a SGCMG is
a lot simpler from a hardware point of view, and it has a significant cost, power, weight
and reliability advantage over a DGCMG.
Another type of CMG is the variable speed control moment gyro (VSCMG) [24]. Where
a conventional CMG is constrained to a constant wheel spin rate, a VSCMG can vary it’s
wheel spin rate. This ensures an extra degree of freedom to the VSCMG, and enables it
to achieve additional objectives such as energy storage with attitude control.
CMGs increase the agility of a satellite which again increases the amount of earth and
space science data that can be collected while using the same resources. This directly
Chapter 1 — Introduction 4
Figure 1.3: Picture of a Control Moment Gyro
increase the scientific and commercial value of these satellites. Since the time available
for data transmission is severely limited on a small satellite, the use of CMGs will allow off-
nadir pointing for substantial larger times and thus increase the time available to transmit
data. This will also allow more frequent transmitting of data to available ground stations.
Since the wheel speed of a CMG is constant instead of varying as with reaction wheels,
the wheel induced vibrations in a satellite will decrease and the pointing accuracy of the
satellite will increase.
Chapter 1 — Introduction 5
1.1 Problem Definition
The aim of this thesis is to design a SGCMG with controller which can be used in small
satellite applications. The function of the CMG is to increase the agility of a small satellite
by enabling it to do rapid pointing maneuvers. It is very important for these maneuvers
to be very accurate, since the quality of images, for example, directly depends on it. The
following design specifications of the CMG system and satellite is given to ensure such
rapid pointing maneuvers:
• Satellite’s moment of inertia matrix = diagonal [20 20 15] kgm2
• Satellite should be able to do a 30o rotation in 10 seconds
• The maximum CMG torque = 0.25 Nm
• Maximum gimbal rate = 10o/second
• Gimbal minimum step size < 0.02 degrees
• Angular momentum of wheel = 1.6 Nms
A mathematical model of the CMG system and satellite has to be designed for simulation
purposes. This model must then be extended to include a 3-axis control algorithm which
controls the angular momentum vectors of the CMGs to produce the correct torque out-
put. A 30o step input to the controller has to be able to generate a 30o rotation of the
satellite within 10 seconds.
An imaging sequence, which describes the attitude and rate of the satellite at any point
in time, should be implemented into the design to produce a smooth attitude function
during pointing maneuvers. This imaging sequence should be used as input to the 3-axis
control algorithm to ensure high precision pointing of the satellite.
The results from these simulations should be compared to tests done on the CMG to
verify the functionality of the hardware design.
Chapter 1 — Introduction 6
1.2 Overview of the Design Approach
The presentation of the thesis document is given below:
Chapter 2: A brief explanation on coordinate systems and attitude parameterization
are given, followed by CMG fundamentals. Thereafter a mathematical model is derived
for the CMG system and satellite. The functionality of the mathematical model is then
verified by simulations.
Chapter 3: The design and development of the hardware and software of the CMG
system is explained. A brief explanation is given on the brushless DC motor and stepper
motor chosen for the CMG, as well as the controllers for the motors. The functions of the
microcontroller and computer interface are also described.
Chapter 4: A three-axis quaternion feedback control logic under slew rate constraint is
derived for the satellite’s attitude control. It is followed by simulations of the mathemat-
ical model with the attitude control law.
Chapter 5: The objective of this chapter is to design a control mode for the imaging phase
making use of the Moving Demand approach. This approach implements consecutive slew
maneuvers via a time varying attitude and rate demand. The attitude demand is used as
input to the control logic of Chapter 4.
Chapter 6: The CMG module designed in Chapter 3 is tested on an air bearing table.
The results obtained from these tests are compared to the theory and simulations from
Chapters 2, 4 and 5 to verify the functionality of the CMG module.
Chapter 7: The final conclusions on the CMG actuator and recommendations for future
work are discussed.
Chapter 2
CMG and Satellite theory
2.1 Background
2.1.1 Coordinate Systems
In spaceflight analysis it is important to know the position and motion of the satellite.
In order to do this, we must first select the correct coordinate system for the problem.
Any coordinate system will actually do, but choosing the correct one will increase insight
into the problem. To define a coordinate system for space applications, two characteristics
have to be specified firstly: whith respect to what the coordinate system is fixed to and the
location of the coordinate system’s center. This thesis uses the following three coordinate
systems to describe the attitude of a satellite: Body Frame, Orbit Reference Frame and
Inertial Reference Frame.
Body Frame
The origin of the body frame is located at the satellite’s center of mass and it is fixed with
respect to the satellite’s body. This frame is used to determine the satellite’s orientation
with respect to another reference frame. The coordinates XB, YB and ZB is shown in
Figure 2.1.
Orbit Reference Frame
The origin of the orbit reference frame, XO, YO, ZO, is located at the satellite’s center of
mass and it is fixed with respect to the orbit. The ZO axis is nadir pointing (i.e. pointing
towards the Earth’s center), the YO axis is in the orbit anti-normal direction and the XO
7
Chapter 2 — CMG and Satellite theory 8
axis completes the orthogonal set. In a circular orbit, the XO axis would point in the
direction of the velocity vector. The orbit reference frame is mainly used for attitude
maneuvers. See Figure 2.1.
Inertial Reference Frame
The inertial reference frame XI , YI , ZI has it’s origin at the center of the Earth and
it is fixed with respect to inertial space. The ZI axis is in the same direction as the
Earth’s geometric north pole, the XI axis is in the Vernal equinox direction and the YI
axis completes the orthogonal set. The inertial reference frame is normally used for orbit
analysis.
ZB
YB
XB
OX
OY
OZ
Vernal Equinox
Direction
ZI
YI
X I
Earth
Figure 2.1: Coordinate Systems
2.1.2 Attitude parameterization
A satellite’s attitude can be represented by a direction cosine matrix. There exist a few
alternative representations of three-axis attitude, but the two mostly used for present-
ing a satellite’s orientation are the Euler angle representation and the Euler symmetric
parameterization (quaternions). The Euler angle representation is often used in a user’s
interface during attitude computation because of it’s clear physical interpretation. It is
also useful for analysis, especially for finding closed-form solutions to the equations of
motion. It’s parameters consist of three rotation angles known as the roll angle φ, pitch
angle θ and yaw angle ψ.
There are 12 distinct representations for the Euler angle rotations (φ, θ, ψ). For instance, a
3-2-1 Euler angle rotation means that the first rotation is about the z-axis, second rotation
about the y-axis and the third rotation about the x-axis. The 2-1-3 sequence is used in
Chapter 2 — CMG and Satellite theory 9
Yo
Zo'
Xo'Xo
Yo
ZoZo'
Xo'
θ
θ
Yo'
Zo''
φ
φ
Xo'
Yo'
Zo''
Yo''
Xo''
ψ
ψ
2: Y Axis Rotationo 1: X Axis Rotationo' 3: Z Axis Rotationo
''
Figure 2.2: A 2-1-3 Euler Angle Rotation
this thesis. Thus, the first rotation θ is about the initial YO axis, the second rotation φ is
around the XO’ axis and the third rotation ψ is around the ZO” axis. Figure 2.2 shows
the rotation of the axis. The 2-1-3 direction cosine matrix A is given as:
A =
c(ψ)c(θ) + s(ψ)s(φ)s(θ) s(ψ)c(φ) −c(ψ)s(θ) + s(ψ)s(φ)c(θ)
−s(ψ)c(θ) + c(ψ)s(φ)s(θ) c(ψ)c(φ) s(ψ)s(θ) + c(ψ)s(φ)c(θ)
c(φ)s(θ) −s(φ) c(φ)c(θ)
(2.1)
where c = cosine function and s = sine function. The attitude matrix A transforms an
Earth pointing satellite which is orbit referenced to satellite body coordinates. The Euler
angles φ, θ and ψ can be seen in Figure 2.3.
Roll
Pitch
Yaw
Roll
Pitch
Yaw
Flight Direction
EarthOrbit
Figure 2.3: The Euler Angles: Roll φ, Pitch θ and Yaw ψ
Euler angle representation is best when used with small angles since it encounters singu-
Chapter 2 — CMG and Satellite theory 10
larities at certain large rotations. It is also computationally intensive to use in numerical
computation because of the trigonometric functions. For numerical computation Euler
symmetric parameterization (quaternions) is used, since it uses no trigonometric functions
and has no singularities. For these reasons Euler symmetric parameters are commonly
used for onboard attitude calculations. The attitude matrix A, expressed in quaternion
form, is given as:
A =
q21 − q2
2 − q23 + q2
4 2(q1q2 + q3q4) 2(q1q3 − q2q4)
2(q1q2 − q3q4) −q21 + q2
2 − q23 + q2
4 2(q2q3 + q1q4)
2(q1q3 + q2q4) 2(q2q3 − q1q4) −q21 − q2
2 + q23 + q2
4
(2.2)
2.2 Control Moment Gyros
2.2.1 Motivation
A satellite is required to do a 30 degree rotation in 10 seconds as specified in Section 1.1.
In order to do the 30o rotation within 10 seconds, an acceleration phase of 5 seconds is
needed, followed by a deceleration phase of 5 seconds as shown in Figure 2.4.
T
t(s)
105
.
t(s)5 10
6 /so
t(s)5 10
15
30
o
o
Figure 2.4: Torque, acceleration and angle diagrams for a small satellite executing a
30o maneuver in 10 seconds
The relationship between the torque T , the moment of inertia of the satellite Is and the
angular acceleration θ is given by Newton’s first law of rotation (around one axis):
T = Is θ (2.3)
Integrating this equation twice reveals the following two equations:
θ =T
Ist (2.4)
Chapter 2 — CMG and Satellite theory 11
θ = 0.5T
Ist2 (2.5)
With θ = 0.2618 radians (15o), Is = 20 kgm2 and t = 5 seconds, the torque required
for this maneuver is calculated using (2.5) as T = 0.4189 Nm. From (2.4) the maximum
angular velocity of the satellite is calculated as θ = 0.1047 rad/s (6o/s).
2.2.2 Fundamentals
To be able to derive a mathematical model for a CMG, it is neccesary to understand the
fundamentals of how a CMG works. As can be seen in Figure 2.5, the CMG consist of a
spinning wheel with an angular velocity of ω rotating about the x-axis. If the spinning
wheel has a moment of inertia I, then the angular momentum produced would be h = Iω
along the x axis. Rotating the spinning wheel about the gimbal axis z at a rate of δ, would
then result in a large torque output about an axis normal to the angular momentum axis
and the gimbal axis.
z
y
x
.
h
Tin
-Tout
Figure 2.5: A Single Gimbal CMG
The torque output about the y-axis in Figure 2.5, would thus be the cosine of the gimbal
angle δ times the total output torque of the CMG. The output torque of the CMG in
vector format is then given as [6]:
Tout = h × δ (2.6)
2.2.3 Single Gimbal CMG Model
When a SGCMG is gimballed, the output torque vector changes continuously because the
direction of the angular momentum vector does not stay along the same body axis. For this
Chapter 2 — CMG and Satellite theory 12
reason it is not possible to achieve a torque about only one body axis with one SGCMG.
To overcome this problem, two SGCMGs can be used together in the configuration shown
in Figure 2.6. If the wheel speeds ω1 and ω2 are in the directions shown, then the angular
momentums, h1 and h2, will be along the positive and negative y-axis respectively.
x
z
y
12
12
Figure 2.6: SGCMG Configuration
By gimballing both momentum wheels such that δ1 = −δ2 while ω1 = −ω2, the resulting
output torque will be about the x-axis only. The output torque of the two SGCMGs about
the other two axis will cancel each other since they have equal magnitudes in opposite
directions. With this configuration it is possible to increase or decrease the wheel speeds
without causing a resulting torque. As long as the angular momentum of the two wheels
are in opposite directions, the change of wheel speed, while ω1 = −ω2, will have no netto
effect on the satellite. This enables the possibility of increasing the wheel speeds for bigger
torque capabilities before large maneuvers are done.
A mathematical model of the SGCMG system is needed for analysis and to simulate
the influence it has on the satellite. The total angular momentum of the SGCMG setup
is needed for this mathematical model. Through inspection of Figure 2.6, the angular
momentum h is found as:
h =
−h1 sin δ1 + h2 sin δ2
h1 cos δ1 − h2 cos δ2
0
(2.7)
The derivative of the angular momentum is then given as
h =
−h1δ1 cos δ1 − h1 sin δ1 + h2δ2 cos δ2 + h2 sin δ2
h1 cos δ1 − h1δ1 sin δ1 − h2 cos δ2 + h2δ2 sin δ2
0
(2.8)
Chapter 2 — CMG and Satellite theory 13
with h1 = Iw ω1 and h2 = Iw ω2 with Iw the moment of inertia of the momentum wheel.
A satellite has to be controlled about all three axes. The SGCMG system shown in
Figure 2.6 is then extended to a model with three of these systems, one for every axis.
The three sets of the SGCMG configuration are shown in Figure 2.7.
x
z
y
1x2x
2x 1x
x
z
y
1y
1y
2y
2yx
z
y
1z
2z
1z
2z
Figure 2.7: Three Set SGCMG Configuration
The total angular momentum of all three sets together is:
hT =
−hx1 sin δx1 + hx2 sin δx2 + hz1 cos δz1 − hz2 cos δz2
hx1 cos δx1 − hx2 cos δx2 − hy1 sin δy1 + hy2 sin δy2
hy1 cos δy1 − hy2 cos δy2 − hz1 sin δz1 + hz2 sin δz2
(2.9)
2.2.4 Mathematical Model of Satellite with SGCMGs
It is necessary to develop a simple mathematical model for the steering and attitude
control of satellites with CMGs. This section develops the dynamic model of the satellite
with three SGCMG sets for agile steering. The rotational equation of motion of a satellite
equipped with CMGs is given by [9, 23]:
HIs + ωI
s × HIs = Text (2.10)
with HIs the angular momentum vector of the system expressed in the inertial reference
frame and ωIs = [ωxi ωyi ωzi]
T the body angular velocity vector of the satellite also
inertially referenced. The external torque vector Text expresses the solar pressure, gravity-
gradient and aerodynamic torques in the same body frame. The angular momentum vector
of the system HIs consists of the total angular momentum of the SGCMGs configuration
(2.9) and of the satellite body angular momentum. The angular momentum of the system
can thus be expressed as:
HIs = Is ωI
s + hT (2.11)
Chapter 2 — CMG and Satellite theory 14
where Is is the total inertia matrix of the whole satellite and hT is the total momentum
vector of the SGCMGs configuration (2.9). From (2.10) and (2.11) we obtain:
IsωIs + hT + ωI
s × (Is ωIs + hT ) = Text (2.12)
This equation can be rewritten in terms of the SGCMG control torque vector, u =
(ux, uy, uz), which gives:
IsωIs + ωI
s × Is ωIs = u + Text (2.13)
with
u = −hT − ωIs × hT (2.14)
The required control torque vector u is the input to the steering logic of the satellite and
can be assumed to be known. In Chapter 4 a non-linear feedback control law is derived
and implemented to compute the torque needed to maintain the correct attitude. Since
the control torque vector is known, Equation 2.14 can be written in terms of the desired
SGCMG angular momentum rate as:
hT = −u − ωIs × hT (2.15)
The angular momentum vector h of the SGCMG configuration is a function of the gimbal
angles δ = (δx1, δx2, δy1, δy2, δz1, δz2) and can be written as:
hT = hT (δ) (2.16)
Instead of finding an inverse for this equation to solve for h, the differential relationship
between the gimbal angles and the angular momentum vector of the SGCMG configuration
is used. The reason for choosing this method is because it offers less singularities for this
specific SGCMG configuration. The time derivative of h is obtained as:
hT = B(δ)δ (2.17)
where
B =∂hT
∂δ(2.18)
=
−hx1 cos δx1 hx2 cos δx2 0 0 −hz1 sin δz1 hz2 sin δz2
−hx1 sin δx1 hx2 sin δx2 −hy1 cos δy1 hy2 cos δy2 0 0
0 0 −hy1 sin δy1 −hy2 sin δy2 −hz1 cos δz1 hz2 cos δz2
Chapter 2 — CMG and Satellite theory 15
If we assume the speeds of the reaction wheels to stay constant during gimbal maneuvers
and that the gimbal rate of the two gimbals per set are of the same magnitude but opposite
sign (ωa1 = ωa2 = 0, ωa1 = ωa2, δa1 = −δa2 = δa, δa1 = −δa2 = δa, with a = x, y, z),
then the momentum rate is obtained from (2.17) and (2.18) as follows:
hT =
hx
hy
hz
=
−2hxδx cos δx
−2hyδy cos δy
−2hz δz cos δz
(2.19)
From this we achieve an equation for the gimbal rate vector, since the value of the mo-
mentum rate vector is already known from (2.15). The equation for the gimbal rate
follows:
δ =
δx
δy
δz
=
hx/[−2hx cos δx]
hy/[−2hy cos δy]
hz/[−2hz cos δz]
(2.20)
The gimbal angles are achieved by integrating the gimbal rate δ over time. These new
values are then used to determine new values for the angular momentum vector.
The angular momentum and momentum rates are fed into Euler’s equation. This basic
equation of attitude dynamics relates the time derivative of the angular momentum vector,
dH/dt, to the total external applied torque, Text, and is given as:
IsωIs = Text − ωI
s × [Is ωIs + hT ] − hT (2.21)
This equation is the same as Equation 2.12, but written in a different way. For the rest of
the thesis we will assume that no external torque disturbance is applied to the satellite,
which results in the external applied torque vector, Text, being equal to zero.
A kinematic equation is needed which relates the angular velocity of the satellite ωIs to the
attitude rate of change. For this a set of first-order differential equations are used which
specifies the time evolution of the attitude parameters. This is known as the kinematic
equations of motion and is given by:
q =1
2Ω q =
1
2Λ(q) ωo
s (2.22)
where Ω is the skew-symmetric matrix
Ω =
0 ωzo −ωyo ωxo
−ωzo 0 ωxo ωyo
ωyo −ωxo 0 ωzo
−ωxo −ωyo −ωzo 0
(2.23)
Chapter 2 — CMG and Satellite theory 16
and Λ the rotation matrix
Λ =
q4 −q3 q2
q3 q4 −q1−q2 q1 q4
−q1 −q2 −q3
(2.24)
The satellite angular velocity vector ωos is orbit referenced and determined as follows:
ωos = ωI
s − Aω0 (2.25)
with A the attitude matrix (Equation 2.2) in terms of Euler’s symmetric parameters and
which has no singularities. Assuming the satellite has a near circular orbit with a constant
orbital angular rate ω0, then we have a constant orbital rate vector:
ω0 =
0
−ω0
0
(2.26)
The angular velocity vector ωos can now be determined from Equation 2.25 and used
in Equation 2.22 to define the derivative of the quaternion vector q. This vector can
then be integrated to propagate the quaternion vector q. Comparing Equation 2.1 and
Equation (2.2 results in the equations:
θ = arctan4
(2(q1q3 + q2q4)
−q21 − q2
2 + q23 + q2
4
)(2.27)
φ = arcsin2 (−2(q2q3 − q1q4)) (2.28)
ψ = arctan4
(2(q1q2 + q3q4)
−q21 + q2
2 − q23 + q2
4
)(2.29)
which is used to convert the quaternions into the Euler angles θ, φ and ψ.
2.3 Simulation Results
The simulation results of a small satellite performing a 30 degree rotation maneuver in 10
seconds is depicted in Figure 2.8. The mathematical model derived in Section 2.2.4 was
used with the design specifications of Section 1.1 for the simulation. A constant x-axis
Chapter 2 — CMG and Satellite theory 17
torque, derived in Section 2.2, was used as an input to the model to generate a 30 degree
roll maneuver. A momentum wheel speed of 1000 rad/s was used .
The gimbal angle excursions, shown in Figure 2.8, does not exceed 45 degrees, while the
gimbal rates reach a maximum rate of 11.2 o/s (0.1955 rad/s). The total CMG torque
is 0.4188 Nm for the first 5 seconds (acceleration phase) and -0.4188 Nm for the next
5 seconds (deceleration phase). From Section 2.2 the maximum angular velocity of the
satellite of 6 o/s can be seen from Figure 2.8.
0 5 10 150
10
20
30
40Roll Angle
degr
ees
0 5 10 15−50
0
50Gimbal Angles
degr
ees
0 5 10 15−20
−10
0
10
20Gimbal Rates
degr
ees/
s
0 5 10 15−0.5
0
0.5Input Torque
Nm
0 5 10 15−3
−2
−1
0
1Angular Momentum
time (s)
Nm
s
0 5 10 15−5
0
5
10Angular Rates
time (s)
degr
ees/
s
Figure 2.8: Simulation with constant CMG Torque
Since the gimbal rates exceed the maximum gimbal rate according to the design speci-
fications, another simulation is done, where the gimbal rates are kept constant and the
torque varies. In Figure 2.9 the gimbal rate has a value of 0.146 rad/s (8.365 o/s). The
maximum gimbal angle excursions, angular momentum and angular rate is slightly less
in the second simulation. The maximum and minimum torque as well as gimbal rate of
the two simulations are compared in Table 2.1.
From this it can be seen that a larger initial torque for a maneuver results in smaller
excursion angles and smaller maximum satellite angular velocities. It is thus better to do
slew maneuvers as fast as possible without exceeding the specified maximum slew rate.
Chapter 2 — CMG and Satellite theory 18
Max Torque Min Torque Max Gimbal rate Min Gimbal rate
Simulation (Nm) (Nm) (deg/s) (deg/s)
Const. torque 0.4188 0.4188 11.121 8.0
Const. gimbal rate 0.438 0.326 8.365 8.365
Table 2.1: Minimum and maximum values for the two simulations
In Section 4.2.3 this knowledge is used to design a saturation control law for the satellite.
These two simulations give a better understanding of the mathematical model of the
satellite with a CMG configuration. They also assist in defining the design parameters
for the SGCMG and performance for the 3-set SGCMG configuration. This model is
expanded in Chapter 4 to a model with attitude feedback control logic.
0 5 10 150
10
20
30
40Roll Angle
degr
ees
0 5 10 15−50
0
50Gimbal Angles
degr
ees
0 5 10 15−10
−5
0
5
10Gimbal Rates
degr
ees/
s
0 5 10 15−0.5
0
0.5Input Torque
Nm
0 5 10 15
−2
−1
0
Angular Momentum
time (s)
Nm
s
0 5 10 15−2
0
2
4
6Angular Rates
time (s)
degr
ees/
s
Figure 2.9: Simulation with constant Gimbal Rate
Chapter 3
Control Moment Gyro Design
3.1 System Overview
The Control Moment Gyro (CMG) module uses a Brushless DC (BLDC) Motor with Hall
effect sensors and a Stepper Motor to spin and gimbal the momentum wheel respectively.
It also consists of a BLDC motor controller, a 3-phase drive stage, a stepper motor
controller, an optical encoder module and a microcontroller. A block diagram of the
CMG system is shown in Figure 3.1.
SpeedController
CurrentController
BLDC MotorController(UC2625)
3-PhaseElectronic
Drive Stage
BLDC Motorand
ReactionWheel
OpticalCodeWheel
Microcontroller
SpeedDemand
CurrentDemand
CurrentFeedback
Hall effect position sensors tocommutation circuit in UC2625
Optical encoder speed feedback
RS232Communication
StepperMotor
Controller(AD VL M1)
StepperMotor
Figure 3.1: Block Diagram of CMG System
The microcontroller (Cygnal - C8051F041) receives control data via RS232 from a PC,
19
Chapter 3 — Control Moment Gyro Design 20
implements it and then sends control commands to the UC2625 Brushless DC motor
controller and the AD-VL-M1 Stepper Motor controller. A speed control algorithm is
implemented in the microcontroller’s software which controls the BLDC motor via the
UC2625 controller. A Hewlett Packard Optical Encoder is used for high accuracy speed
feedback to the microcontroller.
The low voltage 2 phase stepper motor driver (AD-VL-M1) receives command signals
from the microcontroller such as clock pulse, direction and inhibit. It has it’s own full
bridge drivers to drive the stepper motor. The UC2625 controller has all the necessary
functions for driving a BLDC motor, and directly controls the 3-phase drive stage which
connects to the motor. A current control loop runs internal to the speed control loop to
ensure a smoother motor current.
3.2 Mechanical System Overview and Design
The CMG has to be as compact and light as possible to satisfy the constraints of a
small satellite. These aspects were taken into account while designing the CMG. The
most significant problem encountered, which also has a great influence on the size of the
CMG, is the backlash inherent to gears. Since zero backlash is needed to ensure the
gimbal has a rotational resolution less than 0.02 degrees, specially designed gears had to
be manufactured.
The CMG platform consists of a base with a free moving platform rotating on ball-
bearings. Attached to the base is an anti-backlash gear. This anti-backlash gear consists
of two seperate flushed gears of same size which are spring-loaded to generate a thrust in
opposite directions. This would cause the teeth of the anti-backlash gear to lock into the
driving gear and thus avoid the backlash. The driving gear is attached to the gearhead
of the stepper motor, which in turn is mounted on the free moving platform. When the
stepper motor is pulsed, the driving gear rotates around the outside of the fixed anti-
backlash gear and thus cause the platform to rotate. A mechanical drawing of the CMG
platform is shown in Appendix A.
A BLDC motor is mounted on the free moving platform. An optical encoder is attached
to the one end of BLDC motor for accurate speed measurement. On the other end, a
momentum wheel with a moment of inertia of 0.0015 kgm2 is attached to the shaft using
a shaft-lock. The prototype mechanical system is shown in Figure 3.2.
The base of the CMG is attached to a stand in such a way that the gimbal axis is parallel
to the ground. This is also used in the setup for the practical tests (Chapter 6). Since
this is only a prototype for testing, the weight of the CMG was not important. The size
Chapter 3 — Control Moment Gyro Design 21
and weight of this prototype CMG can easily be reduced by using lighter materials and
by removing or resizing certain parts such as the platform, stand and anti-backlash gear.
Stepper Motor
& Gearhead Anti-backlash Gear
Momentum
Wheel
Optical Encoder
Driving Gear
Stand
Rotating Platform
BLDC Motor
Figure 3.2: Picture of the CMG
3.3 Motor Descriptions
The Control Moment Gyro depends on two motors for operation. The one is a brushless
DC motor which is used to spin the momentum wheel and the other one is a stepper
motor used to gimbal the momentum wheel around an axis which is perpendicular to the
spin axis.
Chapter 3 — Control Moment Gyro Design 22
3.3.1 Brushless DC Motor
The momentum wheel is driven by a 3-phase (star connected), 2-pole Brushless DC motor
designed by Faulhaber (Part number: 3056 036B). The motor has electronic commutation
via Hall effect sensors placed 120 mechanical degrees apart for rotor position feedback.
Since the maximum angular wheel momentum per CMG was chosen as 1.6 Nms and the
moment of inertia of the wheel is only 0.0015 kgm2, a maximum wheel speed of 10187
rpm will be needed. The nominal voltage of the BLDC motor is 36 Volt, but only 12 Volt
is applied to the power stage. Thus the maximum speed of the BLDC motor is only a
third of the no-load speed of 8840 rpm. It will not be possible to achieve the specified
wheel momentum with the current wheel inertia and speed specifications, however it is
still good enough to illustrate the theory.
3.3.2 Stepper Motor
A maximum gimbal rate of 10 degrees/second is needed according to specifications, with a
single step smaller than 0.02 degrees. A Faulhaber 2-phase stepper motor (AM 1524 V6)
with anti-backlash gearhead (15/8 Series) was chosen for this application. The stepper
motor has a nominal voltage of 6 Volts and a step angle of 15 degrees.
Since the gimbal step size should be smaller than 0.02 degrees, the total gear reduction
ratio should be bigger than 150.02
= 750 : 1. A gearhead with a 262:1 ratio was chosen. An
additional anti-backlash gear system with a 3:1 ratio is connected to the output of the
gearhead to give a total gear reduction ratio of 786:1. The maximum step rate for the
stepper motor to achieve a gimbal rate of 10 degrees/second is given:
Total gear ratio
Motor step size× gimbal rate =
786
15× 10 = 524 steps/second (3.1)
Another important consideration when sizing the CMG is the effect of the ”gyro torque”
acting back to the gimbal system. This torque can have a great effect, especially at high
angular rates. This ”gyro torque” is generated when the satellite’s inertial body rate is
in the same direction as the torque output of the CMG. The rotation of the satellite has
the same effect as a gimbal has on the momentum wheel, but the output torque due to
the satellite’s rotation acts directly onto the gears of the gimbal. The ”gyro torque” is
calculated as follows:
TGyro = ωI−i × hi (3.2)
where ωI−i is the inertial body rate of the satellite in the same direction as the torque
Chapter 3 — Control Moment Gyro Design 23
output of CMGi. hi is the angular momentum vector of CMGi. The ”gyro torque” for a
simulation similar to the one from Section 4.3.1 is shown in Figure 3.3. From the figure,
0 5 10 15−0.02
0
0.02
0.04
0.06
0.08
0.1
0.12Gyro Torque
Nm
time (s)
Figure 3.3: Gyro Torque acting back to the system
the maximum torque acting back to the system is 0.112 Nm.
Since the maximum allowable continuous torque output of the gearhead is 100 mNm,
and the additional 3:1 ratio gears system has an efficiency of at least 80%, the maximum
torque the gimbal can deliver is approximately 100 × 3/0.8 = 375 mNm. The ”gyro
torque” calculated is well within the limits of the gimbal’s maximum torque and would
thus not damage the gears of the gearhead.
3.4 BLDC Motor Power Stage
The BLDC Motor power stage is in full-bridge configuration which enables 4 quadrant
motor driving. Thus the motor can accelerate and brake in both directions. N-channel
and P-channel HEXFET Power MOSFETs are used as switching devices for the power
stage. Dual high speed 1.5 A MOSFET Drivers are used for the high-side and low-side
drivers. The current sense resistors, RCS, are used to feedback the measured current in the
motor phases for the current control loop. These resistors have a value of 0.27Ω, which
are calculated in Section 3.6.1 to limit the maximum motor current. The power stage is
shown in Figure 3.4.
High frequency, fast recovery Schottky rectifiers (30BQ100) are used for the free-wheeling
diodes in the power stage. The function of these diodes are to protect the MOSFETs
when the motor is running freely acting like a generator. The phases A, B and C are
connected directly to the BLDC motor.
Chapter 3 — Control Moment Gyro Design 24
Phase APhase BPhase C
VCC
R CS R CS
PUCPUBPUA
PDA PDB PDC
Figure 3.4: BLDC Motor Power Stage
3.5 Stepper Motor Control
The AD-VL-M1 stepper motor driver [3] was used to drive a small 2-phase stepper motor
in full step or half step mode. These drivers are in voltage mode and can operate with
low power supply such as 3 V to 12 V. Full step mode is chosen for this application,
which results in steps of 15 degrees. Three inputs are used, namely: CW (CCW), clock
pulse and inhibit. The CW (CCW) input controls the direction of rotation of the stepper
motor. Each time a pulse is generated on the clock pulse input, the stepper motor will
take one step. The inhibit input switches off all currents to the motor, saving energy
while the motor is not stepping.
The stepper motor controller consists mainly of two sections, the power stage (HIP4020)
and the translator (COP8SAB720). The translator is an 8-Bit CMOS ROM based, one-
time programmable (OTP) microcontroller with 2k EPROM memory. Inputs from the
Cygnal microcontroller to the stepper motor controller is processed by the translator
which again controls the power stage. The power stage consists of two 0.5A full bridge
power drivers which directly drives the stepper motor.
Chapter 3 — Control Moment Gyro Design 25
3.6 BLDC Motor Control
The UC2625 motor controller [18] IC has most of the functions required for high perfor-
mance four quadrant, 3-phase brushless DC motor control integrated into one package.
The following are a few of the functions incorporated into the CMG design:
• Drives Power MOSFETs directly on low side
• Latched Soft Start
• High-speed Current-sense Amplifier with Ideal Diode
• Average Current Sensing
• Direction Latch for Safe Direction Reversal
• Trimmed Reference Source
• Programmable Cross-conduction Protection
• Four-Quadrant Operation
The operating temperature range of the UC2625 is from -40oC to +105oC.
3.6.1 Controller Component Values
The UC2625 controller has the functions: current-limit mode, tachometer pulse width and
oscillator frequency selection for which specific component values have to be calculated.
This enables the IC’s parameters to be adjusted for different applications.
Current-limit Mode
The current sense amplifier, internal to the UC2625, has a fixed gain of two. A peak-
current comparator allows the PWM to enter a current-limit mode when the voltage
across the current sense resistors exceeds 0.2 V. An over-current comparator provides a
fail-safe shutdown in case the voltage across the resistors exceeds 0.3 V. The current sense
resistors were chosen as 0.27 Ω which will limit the motor current to 740 mA.
Chapter 3 — Control Moment Gyro Design 26
Tachometer Pulse Width
A fixed-width 5V pulse is triggered on the Tach-Out pin with the average voltage on the
pin directly proportional to the speed. Each time the Tach-Out pulses, a capacitor tied
to the RC-Brake discharges from 3.33 V down to 1.67 V through a resistor. The pulse
width of the tachometer is approximately T = 0.67RTCT, with RT and CT a resistor
and capacitor from RC-Brake to ground. The maximum length of the pulse depends on
the maximum speed of the motor. With each change in the Hall effect sensor outputs,
a pulse will be generated. The maximum speed needed for the motor (Section (3.3.1) is
approximately 10200 rpm. Since the motor has 2 magnet poles and 3 Hall effect sensors,
there will be 6 pulses per revolution. Thus a pulse width of less than 0.49 ms is needed
to prevent the tachometer output from saturating. RT and CT are chosen as 150 kΩ and
4.7 nF respectively to give a pulse width of 0.47 ms.
Oscillator Frequency
The motor current can be regulated using fixed-frequency pulse width modulation (PWM)
which is set by an RC oscillator circuit. The oscillator frequency is given by:
FOSC =2
ROSC COSC
A switching frequency of approximately 30 kHz is desired, which results in ROSC and
COSC values of 68 kΩ and 1 nF respectively.
3.6.2 Current Loop Design
From [16], a first order open-loop model is determined for the 4-quadrant PWM amplifier.
It is done by breaking the feedback loop between the output pin 7 of U7B (LM358A) and
E/A OUT pin 27 of U8 (UC2625) and applying a square wave signal varying between 1.5
and 2.5 Volt at 20 Hz to E/A OUT pin 27 of U8 (See Appendix B, BLDCcurrentsense).
The open-loop output of the amplifier is measured at output pin 1 of U7A (LM358A).
The DC gain of the first order model is given by the peak-to-peak voltage of the output
and the time constant is calculated from the rise and fall times. The open-loop current
model is as follows:
GOL(s) =k
1 + Ts=
3
1 + 0.0128s=
240
s+ 80(3.3)
Chapter 3 — Control Moment Gyro Design 27
An analogue PI controller is used to obtain a closed loop system with unit gain and the
same time constant as the open-loop model:
GCL(s) =GOL(s)GPI(s)
1 +GOL(s)GPI(s)=
80
s+ 80(3.4)
⇒ GPI(s) =kp(s+ a)
s=
0.333(s+ 80)
s(3.5)
R
R C
VV
I 1
2
O
Figure 3.5: Analogue PI Controller Circuit
The analogue PI controller from Figure 3.5 has the following transfer function:
GPI(s) =VO
VI=
−R2
R1
(s+ 1/CR2
s
)(3.6)
Comparing Equation 3.5 and Equation 3.6, the best values for the resistors and capacitors
are selected as:
R1 = 39kΩ, R2 = 12kΩ, C = 1µF
Since the microcontroller has a maximum output voltage of 2.4V, which is applied to ISET
(See Appendix B, BLDCcurrentsense), the maximum voltage measured at IMON will also
be 2.4V. The maximum voltage measured over the 0.27Ω current resistors will then be
2.4V devided by the gain of the differential amplifier (gain=10), which gives 0.24V. Thus
the maximum current in the phases of the BLDC motor is limited to 0.24/0.27 = 0.888 A.
The current-limit mode of the BLDC motor controller is set to 740 mA, and thus would
the motor current never reach 0.888 A.
3.6.3 Digital Speed Loop Design
An integrator open-loop model is chosen for the speed control loop. The input to the
speed control loop is the D/A current (torque) demand output from the microcontroller
Chapter 3 — Control Moment Gyro Design 28
and the output of the speed control loop is the measured encoder speed (in 0.6*rpm units,
see Section 3.6.4). From a simple open-loop test it can be seen in Figure 3.6 that the
speed will accelerate at 48 units per second on average if the D/A output is 1000 units.
Thus, the integrator model used is:
GOL(s) =Speed(0.6 ∗ rpm)
D/A(units)=
0.048
swhere 0.048 =
48
1000(3.7)
0 5 10 15 20 25 30 35 4030
32
34
36
38
40
42
44
46
48
50
Time (sec)
Uni
ts /
sec
Wheel acceleration per second
Figure 3.6: Measured acceleration per second for 1000 units input
The discrete sampling time is chosen as Ts = 0.1 seconds. From Equation 3.7, the Z-
transform open-loop model of the speed control loop and ZOH is calculated as:
GOL(z) =0.0048
z − 1(3.8)
The following specifications are chosen for the closed-loop system:
• Bandwidth, ΩBW , is 20 times lower than the sampling frequency
• Second order system is optimally damped
The desired closed-loop poles in the discrete domain can then be calculated as:
ΩBW =2π
20Ts
= 3.1416 = Ωn; ζ = 0.707; 5%tsettling =3
ζΩn
= 1.35 seconds
Chapter 3 — Control Moment Gyro Design 29
⇒ sCL = −2.221 ± j2.2219
⇒ zCL = 0.7803 ± j0.1765 (3.9)
A discrete PI controller is used to ensure a zero tracking error for constant speed demands
and a transfer function expression for the closed-loop system is obtained as:
GCL(z) =GPIGOL
1 +GPIGOL=
0.0048K(z − a)
z2 − (2 − 0.0048K)z + (1 − 0.0048Ka)(3.10)
where
GPI(z) =K(z − a)
z − 1
From Equation 3.9 and Equation 3.10 the constants K and a can be calculated as:
K = 91.542
a = 0.819 (3.11)
The difference equation for the discrete PI controller can then be implemented as:
G(z−1) =U(z)
E(z)=
91.542(1 − 0.819z−1)
1 − z−1
⇒ u(k) = u(k − 1) + 91.542e(k) − 74.973e(k − 1) (3.12)
The values of K1 and K2 is respectively taken as 91 and 74 for the program code.
PI ControlD/A
ReactionWheel
ZOHe(k) u(k)+
-
ST
K(z - a)z - 1
0.048s
SpeedCommand
Wheelspeed
Figure 3.7: Discrete Closed-loop speed control
Chapter 3 — Control Moment Gyro Design 30
3.6.4 Speed Measurement
The two outputs of the shaft encoder are XOR’ed together to give 1000 pulses per wheel
revolution from a 500ppr code wheel. This increments a counter in the microcontroller
which is read and cleared every 100ms. The speed measurement accuracy (rpm) is then
calculated as:
∆Ωwheel =60
1000Ts
= 0.6 rpm per clock pulse
⇒ Ωwheel = ∆Ωwheel × Count rpm (3.13)
The wheel speed is expressed as an integer and it is given in 0.6 rpm units. Therefore the
commanded wheel speed has also to be converted into 0.6 rpm units before it is sent to
the microcontroller. The direction of the wheel speed is determined from the phases of
the outputs of the shaft encoder. If the clock output A is lagging clock output B by 90o,
then the wheel speed is negative, else the wheel speed is positive.
3.7 Microcontroller
The Cygnal C8051F041 microcontroller is used to control the CMG and to serve as an
interface to the rest of the spacecraft via the CAN bus. For this thesis an RS232 serial link
is used to send data packages between the microcontroller and a PC. Control commands
for the CMG is received from the PC and then implemented by the microcontroller. The
functions of the microcontroller are described as follows:
• Digital Speed Controller - A discrete PI controller is used with a sampling time of
TS = 0.1 seconds to control the wheel speed accurately to within 0.6 rpm units. The
controller has a 5% settling time of 1.35 seconds to small disturbance inputs and it
controls the speed smoothly from -10000 to +10000 rpm.
• Speed Measurement - The speed of the BLDC motor is measured by a two channel
Optical Incremental Encoder Module with a 500 cpr codewheel. The two channels
are XOR’ed together to give a resolution of 1000 pulses per revolution. This is then
fed back to the microcontroller which counts the amount of pulses per 100 ms and
uses it in the digital speed controller. The two channels are also fed into a flip-flop
to obtain the direction of rotation of the BLDC motor.
• Direction Control - The microcontroller outputs a digital signal which controls the
direction bit of UC2625. This controls the direction of rotation of the BLDC motor.
Chapter 3 — Control Moment Gyro Design 31
• Coast Command - This is used to shut off the power to the BLDC motor. If the
microcontroller enables the coast command, the UC2625 opens the high side and
low side MOSFETs, which shuts off the power.
• Stepper Motor Pulse - From the control data received from the PC, the microcon-
troller calculates the frequency needed to achieve the necesary gimbal step rate.
This signal is fed to the Stepper Motor Controller which steps the stepper motor.
• Stepper Motor Direction - This outputs the direction of rotation of the stepper
motor to the Stepper Motor Controller.
• Inhibit - After each gimbal rotation, the Inhibit bit is set. This informs the Stepper
Motor Controller to shut off the power to the stepper motor to save power. At the
start of a gimbal instruction, the Inhibit bit is cleared.
• Rate Gyro Data - Every 100 ms a pulse is sent to the Rate Gyro, which commands
it to send the angle increment of the past 100 ms. All the angle increments are
added together to give the total angle of rotation of the whole system. The data
transfer between the microcontroller and the Rate Gyro is via RS422.
• Serial Communications - Communication between the microcontroller and the PC
is via a RS232 link with a baudrate of 38.4 kbps. Every 100 ms data packages
containing the wheel speed, gimbal angle, package number and system rotation
angle is send to the PC. RF link modules (Radiometrix) were used for wireless
communications during tests on the air bearing table.
A flowchart describing the flow of processes in the microcontroller is shown in Figure 3.8.
The following interrupts are running parallel to the processes:
• Timer1 - Set to overflow every 1 ms. A counter increments with each overflow and
sets a flag after 100 ms. When the counter reach 97, the rate gyro is polled to sent
the latest angle increment.
• Timer4 - The overflow rate of Timer4 depends on the gimbal rate needed. With
each overflow the stepper motor controller is toggled.
• UART0 - This UART is used for communication between the microprocessor and
PC. A checksum is used to determine the validity of data received. All data is sent
twice.
• UART1 - This UART is used to poll the rate gyro and to receive the new angle
increment.
Chapter 3 — Control Moment Gyro Design 32
Start
New
Command received
from PC
Initialize all variables
and configure registers
Gyro data
available
Byte has
been sent
Data
packet has been sent
once
100ms flag
is set
Receive
new
parameters
Get new
Gyro angle
increment
Send next
byte
Send data a
2nd time
Speed control loop
- new current demand
- output on dac1
Send new data to PC
Yes
No
No
No
No
No
Yes
Yes
Yes
Yes
Figure 3.8: Program flow diagram of Microcontroller
Chapter 3 — Control Moment Gyro Design 33
3.8 Computer Interface
The PC program (RWprobe2) was written in Delphi. The CMG is fully controllable from
this program. The gimbal can be rotated by a certain amount of degrees, or it can be
stepped by a certain amount of steps. The gimbal rate is adjustable from 10 to 500 steps
per second and the direction of rotation can be selected as well.
A gimbal angle profile with the rotation angle for each 100 ms interval can also be used
to control the gimbal. The wheel speed is adjustable from -10000 to +10000 rpm. CMG
data is received from the microcontroller every 100 ms and can be written to a file. When
a new command is send to the microcontroller, an ID corresponding to the particular
command is also sent. The IDs are shown in Table 3.1.
Packet ID Description
0x02 Output current demand (Current controller)
0x03 Switch RW on/off
0x05 Wheel speed command
0x06 New controller gains
0x07 CMG gimbal rate and rotation angle
0x08 Zero gimbal angle
0x09 Step Gimbal to zero position
0x0A Step gimbal (x steps)
0x0B Stop gimbal immediately
0x0C CMG gimbal data from file
0x0D Zero Gyro angle
Table 3.1: CMG Command Packet IDs
The data packet received from the microcontroller is made up of 11 bytes. The first one
is the PC’s ID, 0xCC. The following nine bytes are telemetry containing the wheel speed,
gimbal angle, packet number and the gyro angle. The last byte is a checksum. Table 3.2
shows the packet received from the microcontroller.
Byte No 1 2 3 4 5 6 7 8 9 10 11
Data CC (HB) (LB) (HB) (LB) (HB) (LB)
Content PC ID Wheel Gimbal Packet Gyro angle Checksum
speed angle No
Table 3.2: Packet frame of data transmitted from microcontroller
Chapter 3 — Control Moment Gyro Design 34
The command data packet transmitted by the PC is made up of 6 bytes. The first byte
is the microcontroller’s ID. The second byte corresponds to the command packets shown
in Table 3.1 and the last four bytes are the command data. Table 3.3 displays the packet
transmitted by the PC.
Byte No 1 2 3 4 5 6
Data 7F (02-0D)
Content Microcontroller ID Packet ID Command Data
Table 3.3: Packet frame of data transmitted from PC
An RF link was used for communications when testing on the air bearing table. It consists
of two receiver modules and two transmitter modules. When a transmitter is on and thus
transmitting, both receivers would recieve the data. For this reason it was necessary to
include another ID in the data packets to differentiate between data which was meant for
the microcontroller and data for the PC.
Chapter 4
Satellite Attitude Control
In this chapter an attitude control system is developed for an agile spacecraft requiring
rapid retargeting and fast transient settling. Section 4.1 describes a single-axis attitude
control problem to illustrate a nonlinear control algorithm achieving rapid, large-angle
retargeting and robust transient settling subject to constraints such as actuator saturation
and slew rate limit. In Section 4.2 a three-axis quaternion feedback control problem is
described, which was extended from the model in Section 4.1. Simulation results of rapid,
large-angle retargeting is presented in Section 4.3.
4.1 Single-Axis Attitude Control
To illustrate a nonlinear control algorithm with rapid, large-angle retargeting and robust
transient settling, consider the single-axis attitude control problem of a rigid spacecraft
described by [21]
Iθ = u; |u(t)| ≤ U (4.1)
where I is the spacecraft moment of inertia, θ the attitude angle, and u the control torque
input with the saturation limit of ±U .
The feedback control logic which assures the time-optimal control for the commanded
constant attitude angle of θc is given by
u = −Usgn(e+
1
2aθ∣∣∣θ∣∣∣) (4.2)
where e = θ − θc and a = U/I is the maximum control acceleration. The signum
function is defined as: sgn(x) = 1 if x ≥ 0 and sgn(x) = −1 if x < 0.
35
Chapter 4 — Satellite Attitude Control 36
A direct implementation of this ideal, time-optimal switching control logic results in a
chattering problem in practice. There exist various ways of avoiding this problem which
is inherent to the ideal, time-optimal switching control logic. However, a feedback control
logic of the following form is used:
u = − satU
K sat
L(e) + Cθ
(4.3)
where e = θ− θc and K and C are respectively the attitude and attitude rate gains to be
properly determined. The saturation function is defined as
satL
(e) =
L if e ≥ L
e if |e| < L
−L if e ≤ −L
and it can also be represented as
satL
(e) = sgn(e)min |e| , L
The limiter in the attitude-error feedback loop is constraining the attitude rate to
−∣∣∣θ∣∣∣
max≤ θ ≤
∣∣∣θ∣∣∣max
where∣∣∣θ∣∣∣
max= LK/C. The proper use of the feedback control logic of Eq. (4.3) will in
most practical cases result in a ”bang-off-bang” control.
For all the possible attitude-error signals that do not saturate the actuator, the controller
gains, K = kI and C = cI can be determined as
k = ω2n and c = 2ζωn (4.4)
where ωn and ζ are respectively the specified linear control bandwidth and damping ratio.
If the maximum slew rate is specified as∣∣∣θ∣∣∣
max, the limiter in the attitude-error feedback
loop can be selected as
L =C
K
∣∣∣θ∣∣∣max
=c
k
∣∣∣θ∣∣∣max
(4.5)
Due to the actuator saturation as the attitude-error signal and the slew rate limit becomes
larger for rapid maneuvers, the overall response becomes sluggish with increased transient
overshoot. One way of still achieving rapid transient settling for large commanded attitude
angles, is to adjust the slew rate limit as developed in [22] as follows:
∣∣∣θ∣∣∣max
= min√
2a |e|, |ω|max
(4.6)
Chapter 4 — Satellite Attitude Control 37
where e = θ− θc is the attitude error, |ω|max is the maximum specified slew rate and a =
U/I is the maximum control acceleration. The value a should be scaled to accommodate
uncertainties in the spacecraft inertia and actuator dynamics. The attitude-error feedback
loop limiter can then be written as
L =C
K
∣∣∣θ∣∣∣max
=c
k
∣∣∣θ∣∣∣max
=c
kmin
√2a |e|, |ω|max
and the nonlinear control logic obtained has the following form:
u = − satU
K sat
L(e) + Cθ
= − satU
kI sgn(e)min
(|e| , c
k
√2a |e|, c
k|ω|max
)+ cIθ
(4.7)
If there is a constant external disturbance present which results in a steady-state pointing
error, the use of integral control has to be introduced. The feedback control logic of
Eq. (4.7) can then be modified into the following PID (proportional-integral-derivative)
saturation control logic:
u = − satU
K sat
L(e+
1
T
∫e) + Cθ
(4.8)
where T is the time constant of the integral control and
L =c
kmin
√2a |e|, |ω|max
The gains for the PID controller in terms of the standard notation: KP , KI and KD is
KP = K, KI = K/T, KD = C
The PID controller gains can be determined as
KP = I(ω2n + 2ζωn/T ) (4.9)
KI = I(ω2n/T ) (4.10)
KD = I(2ζωn + 1/T ) (4.11)
and the integral control time constant T is normaly selected as T ≈ 10/(ζωn).
Chapter 4 — Satellite Attitude Control 38
If the attitude reference input to be tracked is not a multi-step input, but a smooth
function, then a PID saturation control logic of the following form can be implemented:
u = − satU
kI sat
L(e +
1
T
∫e) + cIe
(4.12)
where e = θ − θc.
When working with PID-type controllers with actuator saturation, a phenomenon known
as ”integrator windup” causes substantial transient overshoot and control effort. This
phenomenon appears when the actuator or a limiter in the control loop saturates and the
integrator control keeps on integrating. This can easily be prevented if the controller is
implemented on a digital computer by switching off the integral action when the actuator
or any other limiter in the control loop saturates.
4.2 Three-Axis Quaternion Feedback Control
A 3-axis quaternion feedback control problem is described in this section, using a nonlinear
control algorithm from [21].
4.2.1 Quaternion Feedback Control Logic
The rotational equation of motion of a rigid spacecraft is described by
IωIs + ωI
s × IωIs = u (4.13)
where I is the inertia matrix, ωIs = [ωxi ωyi ωzi]
T the inertially referenced angular
velocity vector, and u = [uxi uyi uzi]T the control torque input vector. Angular velocity
vector components ωi along the body-fixed control axes are measured by angular rate
gyros to ensure high accuracy.
A parameterization of the attitude rotation matrix referenced to, either an inertial frame
or the orbit frame has proved to be quite useful in spacecraft attitude modeling. If the
Euler rotation unit vector is denoted by λ = [λx λy λz]T , then the four elements of
quaternions are defined as
q1 = λx sin(θ/2)
q2 = λy sin(θ/2)
q3 = λz sin(θ/2)
q4 = cos(θ/2)
Chapter 4 — Satellite Attitude Control 39
where θ denotes the rotation angle about the Euler axis. The four Euler symmetric
parameters are dependant by the following constraint equation:
q21 + q2
2 + q23 + q2
4 = 1
From Equation 2.22 to Equation 2.26, the quaternion kinematic differential equations are
given by
q1
q2
q3
q4
=1
2
0 ωzo −ωyo ωxo
−ωzo 0 ωxo ωyo
ωyo −ωxo 0 ωzo
−ωxo −ωyo −ωzo 0
q1
q2
q3
q4
(4.14)
A quaternion vector q = [q1 q2 q3]T can be defined such that
q = λ sin
θ
2
and Eq. (4.14) can then be written in terms of the quaternion vector
q = −1
2ωO
s × q +
1
2q4ω
Os (4.15)
q4 = −1
2ωO T
s
q (4.16)
with
ωOs ×
q ≡
0 −ωzo ωyo
ωzo 0 −ωxo
−ωyo ωxo 0
q1
q2
q3
Since the use of quaternions are so useful for the onboard real-time computation of space-
craft orientation, it can be used in a linear state feedback controller for real-time imple-
mentation of the following form:
u = −Kq −CωO
s (4.17)
where K and C are controller gain matrices which have to be determined.
Chapter 4 — Satellite Attitude Control 40
From the commanded attitude quaternions (q1c, q2c, q3c, q4c) and the current attitude
quaternions (q1, q2, q3, q4), the attitude-error quaternions (e1, e2, e3, e4) can be derived as
follows:
e1
e2
e3
e4
=
q4c q3c −q2c −q1c
−q3c q4c q1c −q2c
q2c −q1c q4c −q3c
q1c q2c q3c q4c
q1
q2
q3
q4
The control logic of Eq. (4.17) can be modified using the quaternion error vector e =
[e1 e2 e3]T into the following form:
u = −Ke −CωO
s (4.18)
4.2.2 Eigenaxis Rotation
The gyroscopic term of Euler’s rotational equation of motion is not significant for most
practical rotational maneuvers. It may in some cases however, be desirable to directly
counteract this term by applying a control torque, as follows:
u = −Ke −CωO
s + ωIs × IωI
s (4.19)
In [21] it was shown that the closed-loop system with the controller from Eq. (4.19) is
globally asymptotically stable if the matrix K−1C is positive definite. To guarantee such
conditions, K and C should be selected as follows: K = 2kI and C = cI where k and c
are positive scalar constants to be properly selected, similar to the single-axis case:
k ≈ ω2n and c ≈ 2ζωn
where ωn and ζ are respectively the desired or specified linear control bandwidth and
damping ratio of the three-axis attitude control system. Furthermore, a rigid spacecraft
with the controller
u = −I(2ke +cωO
s ) + ωIs × IωI
s (4.20)
performs a rest-to-rest reorientation maneuver about an eigenaxis along the commanded
quaternion vector qc. If needed, an integral control can also be added to the quaternion-
error feedback control logic of Eq. (4.20) as follows:
u = −I(2ke +
2k
T
∫e +cωO
s ) + ωIs × IωI
s (4.21)
Chapter 4 — Satellite Attitude Control 41
where T is the time constant of quaternion-error integral control. The gyroscopic decou-
pling control term, ωIs × IωI
s , from Eq. (4.21) is not significant during most practical
rotational maneuvers [21], and the term can be neglected without much impact on per-
formance and stability.
4.2.3 Rotation Under Slew Rate Constraint and Control Input
Saturation
To demonstrate the slew rate constraint and control saturation, first consider a rigid
spacecraft which is required to maneuver about an orbit fixed axis. The maneuver should
be as fast as possible, but it should not exceed the specified maximum slew rate about
that eigenaxis. The following saturation control logic provides such a rest-to-rest eigenaxis
rotation under a slew rate constraint [21]:
u = −K satLi
(e +
1
T
∫e) − CωO
s
= −I2k satLi
(e +
1
T
∫e) + cωO
s (4.22)
where e = [e1 e2 e3]T is the quaternion-error vector, K = 2kI, C = cI and the saturation
limits Li are determined as:
Li =c
2k|ωi|max (4.23)
where |ωi|max is the specified maximum angular rate about each axis. Let the control
torque input for each axis be constrained such that
−U ≤ ui(t) ≤ +U ; i = 1, 2, 3
where U is the saturation limit of each control input. This can then be used to set up
a control logic with a control torque input which saturates at a maximum value U , but
that still provides an eigenaxis rotation under a slew rate constraint. The control logic
can be expressed as
τ = −I2k sat
Li
(e +
1
T
∫e) + cωO
s
(4.24)
u = satU
(τ ) =
τ if ‖τ‖∞ < U
U τ‖τ‖∞ if ‖τ‖∞ ≥ U
(4.25)
Chapter 4 — Satellite Attitude Control 42
where ‖τ‖∞ = max |τ1| , |τ2| , |τ3|. The slew rate limit needs to be adjusted to achieve
robust, rapid transient settlings for large attitude-error signals. This is similar to the
single-axis attitude control case discussed in Section (4.1). The saturation limits Li are
Li =c
2kmin
√4ai |ei|, |ωi|max
where ai = U/Iii are the maximum control acceleration about the ith control axis.
4.3 Simulation Results
4.3.1 Single-Axis Rotation
The single-axis attitude control law of Section 4.1 is implemented in the mathematical
model of Section 2.2.4. The maximum slew rate is assumed as |ω|max = 6 deg/s and the
maximum control torque command U is limited to 0.42 Nm to prevent the gimbal rate
from exceeding 10 degrees/s. A maximum control acceleration a is chosen as 70% of U/J
to accommodate the actuator dynamics and the nonlinearity of quaternion kinematics.
The angular velocity of the momentum wheels are assumed as 1000 rad/s.
0 5 10 150
5
10
15
20
25
30
35Attitude Angle
degr
ees
0 5 10 15−1
0
1
2
3
4
5
6Attitude Rate
degr
ees/
s
0 5 10 15−0.5
0
0.5Control Torque
Nm
time (s)0 5 10 15
−15
−10
−5
0
5
10
15Gimbal Rate
degr
ees/
s
time (s)
Figure 4.1: Simulation results of the PID Saturation Control Logic in one axis
Chapter 4 — Satellite Attitude Control 43
Choosing the slew maneuver 5% settling time ts = 2 seconds and the damping ratio
ζ = 0.9, gives the undamped natural frequency ωn = 3/ζts = 1.667 rad/s and integral
control time constant T = 10 seconds. The controller gains are derived as:
k = ω2n + 2ζωn/T = 3.078
c = 2ζωn + 1/T = 3.1
A commanded attitude rotation angle of 30 degrees is assumed for the slew maneuver.
The simulation results are shown in Figure 4.1. The time taken for the satellite to do a
30 degree rotation to within 5% is less than 10 seconds with a maximum attitude rate of
5.5 degrees/s. The maximum gimbal rate is kept below 10 degrees/s while the maximum
control torque is 0.42 Nm.
4.3.2 Three-Axis Quaternion Feedback Rotation
The three-axis quaternion feedback control law of Section 4.2.3 is now implemented in
the mathematical model of Section 2.2.4. The parameters are assumed to be the same as
in the previous simulation.
0 10 20 30−1
−0.5
0
0.5
1q1
0 10 20 300
0.1
0.2
0.3
0.4
0.5q2
0 10 20 30−1
−0.5
0
0.5
1q3
time (s)0 10 20 30
0
10
20
30
40
50
60Pitch Angle
degr
ees
time (s)
Figure 4.2: Simulation results of the Quaternion Feedback Control Logic in one axis
Chapter 4 — Satellite Attitude Control 44
Figure 4.2 and Figure 4.3 show the results for two successive rest-to-rest maneuvers for
the commanded attitude angles: θc = 30 degrees for 0 ≤ t < 15 seconds and θc = 50
degrees for 15 ≤ t < 30 seconds.
From Figure 4.2 one can see the pitch angle rotation and the corresponding quaternions.
The pitch rotation is smooth with almost no overshoot and very fast settling time. The
gimbal rates, shown in Figure 4.3, are within the permitted 10 degrees/s parameter for
the two successive rest-to-rest maneuvers. The gimbal angle excursions reach a maximum
of 39 degrees with a maximum attitude rate of almost 5.4 degrees/s.
0 10 20 30−0.5
0
0.5Control Torque
Nm
0 10 20 30−1
0
1
2
3
4
5
6Attitude Rate
degr
ees/
s
0 10 20 30−40
−20
0
20
40Gimbal Angles
degr
ees
time (s)0 10 20 30
−15
−10
−5
0
5
10
15Gimbal Rates
degr
ees/
s
time (s)
Figure 4.3: Simulation results of the Quaternion Feedback Control Logic in one axis
Figure 4.4 and Figure 4.5 display the simulation results for a simultaneous 30o pitch, 20o
roll and 5o yaw maneuver. The total settling time is a little bit longer since the rotation
around the different axes influence each other. The corresponding quaternions for the
maneuver are also shown.
Chapter 4 — Satellite Attitude Control 45
0 5 10 150
0.05
0.1
0.15
0.2q1
0 5 10 150
0.1
0.2
0.3q2
0 5 10 15−8
−6
−4
−2
0x 10
−3 q3
time (s)0 5 10 15
−10
0
10
20
30
40Euler Angles
degr
ees
time (s)
Figure 4.4: Simulation results of the Quaternion Feedback Control Logic in three axis
0 5 10 15−0.5
0
0.5Roll Torque
Nm
0 5 10 15−0.5
0
0.5Pitch Torque
Nm
time (s)
0 5 10 15−0.04
−0.02
0
0.02
0.04Yaw Torque
Nm
time (s)
Figure 4.5: Simulation results of the Quaternion Feedback Control Logic in three axis
Chapter 5
Control Demand for Imaging
Sequence
5.1 Imaging Sequence Objective
The use of CMG’s provide a satellite with more agility and thus enabling it to do rapid
pointing maneuvers. Pointing an entire satellite with larger moment of inertia instead of
sweeping the imaging system from side to side, allows the imaging system to achieve higher
definition due to smaller noise sensitivity and improves the resolution for it’s images. The
objective of this chapter is to design a control mode for the imaging phase making use
of the Moving Demand approach. This approach implement consecutive slew maneuvers
via a time varying attitude and rate demand. The advantage of this approach is that the
desired 3-axis attitude and rate are known at all times which ensures better tracking of
the attitude command.
In [7], the imaging sequence shown consist of 4 slew maneuvers. Starting from nadir
pointing, the satellite will slew to the attitude qS1, shown in Figure 5.1. The second slew
is from qS1 to qMID. Imaging starts during slew 2 after a specific constant slew rate is
reached. This rate is continued into slew 3 until the imaging period stops. After imaging
the satellite will slew until qS3. The last slew is back to nadir pointing under 3-axis
control.
A few inputs for the Moving Demand calculation is needed to dictate the target attitude
and rate to be achieved at a certain target time. The inputs for the demand derivation is
as follows:
• The time tMID at the mid-point of the imaging slew.
• The target attitude quaternion qMID at tMID.
46
Chapter 5 — Control Demand for Imaging Sequence 47
• The required orbit referenced body rate vector, ωoIMG, during imaging.
• The lead-in angle up to the mid-point of the imaging period, ρS2,TOT .
Nadir Pointing
Along Track
Start of Imaging
End of Imaging
Across Track
qS3
qS1
qMID
Figure 5.1: Image Sequence Schematic
5.2 Detailed Slew Sequence
The detailed image sequence consists of 4 slews determined by the Moving Demand. These
slews are defined in detail in Table 5.1.
It is assumed that the settling times ∆tSET12 and ∆tSET34 are taken as constants derived
from the satellite’s characteristics. The value of ∆tPM is calculated as a fraction of
ρS2,TOT .
A detail derivation of the stages in the time varying demand, derived from the input
information, are given in the following sections.
Chapter 5 — Control Demand for Imaging Sequence 48
Maneuver Attitude Description Comment
Slew1 Slew from nadir pointing Slew performed as eigenaxis
to target attitude qS1. rotation.
Slew time ∆tS1.
Total slew angle ρS1,TOT .
aS1 - Demanded angular acceleration
for first half of slew, −aS1 for
second half of slew.
Settle at qS1. Settling time ∆tSET12.
Slew 2 Slew from qS1 to qMID. Slew performed as eigenaxis
rotation.
Slew time ∆tS2.
Total slew angle ρS2,TOT .
Demanded angular acceleration of
aS2 until rate reaches ωoIMG,
then constant rate.
qMID reached at time tMID.
Slew 3 Continuation of Slew 2 Slew performed as eigenaxis
from qMID to qS3. rotation at rate ωoIMG for time
∆tPM .
Deceleration to rest with demanded
angular acceleration −aS3.
Slew time ∆tS3.
Settle at qS3. Settling time ∆tSET34.
Slew 4 Slew from attitude qS3 Slew performed as eigenaxis
to nadir pointing. rotation.
Slew time ∆tS4.
Total slew angle ρS4,TOT .
aS4 - Demanded angular acceleration
for first half of slew, −aS4 for
second half of slew.
Table 5.1: Mission Sequence of Attitude Demand
Chapter 5 — Control Demand for Imaging Sequence 49
5.3 Attitude Demand Derivation
This section describes the derivation of the attitude and rate demands for the slews of
the Moving Demand.
5.3.1 Slew 2
The slewing axis for Slew 2, λSLEW2, can be derived from the required imaging rate since
they are in the same direction.
λSLEW2 =ωo
IMG
|ωoIMG|
(5.1)
The quaternion describing the transformation between the initial and final attitudes of
Slew 2, qS2,TOT , can be derived from the slewing axis and angle for Slew 2 as follows:
qS2,TOT =
λSLEW2(1) sin(12ρS2,TOT )
λSLEW2(2) sin(12ρS2,TOT )
λSLEW2(3) sin(12ρS2,TOT )
cos(12ρS2,TOT )
(5.2)
Given the final attitude of Slew 2, qMID, the initial demanded attitude which is also the
final attitude for Slew 1, qS1, can be derived as:
qS1 =
qS2,TOT (4) −qS2,TOT (3) qS2,TOT (2) −qS2,TOT (1)
qS2,TOT (3) qS2,TOT (4) −qS2,TOT (1) −qS2,TOT (2)
−qS2,TOT (2) qS2,TOT (1) qS2,TOT (4) −qS2,TOT (3)
qS2,TOT (1) qS2,TOT (2) qS2,TOT (3) qS2,TOT (4)
qMID (5.3)
The total time for Slew 2, ∆tS2, can be derived from the total slew angle, ρS2,TOT , and
the initial angular acceleration, aS2, as follows:
∆tS2 =ρS2,TOT
|ωoIMG|
+|ωo
IMG|2aS2
(5.4)
where the angular acceleration, aS2, is a constant value depending on the satellites char-
acteristics such as moment of inertia and maximum torque from the CMG’s. The start
time for Slew 2, tST2, is then given by:
tST2 = tMID − ∆tS2 (5.5)
Chapter 5 — Control Demand for Imaging Sequence 50
The previous equations of Section 5.3.1 derived the start time and attitude for Slew 2.
This can be used to derive the rotation angle and rate as a functions of time, based on
an initial angular acceleration aS2 and constant imaging rate as follows:
ρS2(t) =
0 (t < tST2
12aS2(t− tST2)
2
(tST2 ≤ t < tST2 +
|ωoIMG|aS2
)
|ωoIMG|
(t− tST2 − |ωo
IMG|2aS2
) (tST2 +
|ωoIMG|aS2
≤ t < tMID
)
(5.6)
ρS2(t) =
0 (t < tST2
aS2(t− tST2)(tST2 ≤ t < tST2 +
|ωoIMG|aS2
)
|ωoIMG|
(tST2 +
|ωoIMG|aS2
≤ t < tMID
)
(5.7)
Now the demanded quaternion qD(t) and demanded orbit-referenced body rate ωoD(t) for
the period tST2 ≤ t < tMID can be determined as follows:
qSLEW2(t) =
λSLEW2(1) sin(12ρS2(t))
λSLEW2(2) sin(12ρS2(t))
λSLEW2(3) sin(12ρS2(t))
cos(12ρS2(t))
(5.8)
qD(t) =
qSLEW2(4) qSLEW2(3) −qSLEW2(2) qSLEW2(1)
−qSLEW2(3) qSLEW2(4) qSLEW2(1) qSLEW2(2)
qSLEW2(2) −qSLEW2(1) qSLEW2(4) qSLEW2(3)
−qSLEW2(1) −qSLEW2(2) −qSLEW2(3) qSLEW2(4)
qS1 (5.9)
ωoD(t) = ρS2(t).λSLEW2 (5.10)
5.3.2 Slew 1
Slew 1 is performed as an eigenaxis rotation with the starting attitude nadir pointing and
the final attitude at qS1. The rotation axis and angle can then be derived as:
ρS1,TOT = 2 arccos(qS1(4)) (5.11)
λSLEW1 =[qS1(1) qS1(2) qS1(3)]T
sin(ρS1,TOT/2)(5.12)
Chapter 5 — Control Demand for Imaging Sequence 51
A constant demanded angular acceleration, aS1, is performed for the first half of Slew 1,
followed by a constant demanded angular deceleration, −aS1, for the second half. The
total time used for Slew 1, ∆tS1, is derived from the total slew angle as follows:
∆tS1 = 2
√ρS1,TOT
aS1(5.13)
and the start time for Slew 1, tST1, is given by:
tST1 = tMID − ∆tS2 − ∆tSET12 − ∆tS1 (5.14)
The previous equations of Section 5.3.2 derived the start time and attitude for Slew 1.
This can be used to derive the rotation angle and rate as a functions of time, based on
an angular acceleration parameter aS1 as follows:
ρS1(t) =
0 (t < tST1)12aS1(t− tST1)
2(tST1 ≤ t < tST1 + ∆tS1
2
)ρS1,3(t)
(tST1 + ∆tS1
2≤ t < tST1 + ∆tS1
)ρS1,TOT (tST1 + ∆tS1 ≤ t < tST1 + ∆tS1 + ∆tSET12)
(5.15)
ρS1(t) =
0 (t < tST1)
aS1(t− tST1)(tST1 ≤ t < tST1 + ∆tS1
2
)ρS1,3(t)
(tST1 + ∆tS1
2≤ t < tST1 + ∆tS1
)0 (tST1 + ∆tS1 ≤ t < tST1 + ∆tS1 + ∆tSET12)
(5.16)
with
ρS1,3(t) = 2√ρS1,TOTaS1(t− tST1) − aS1(t− tST1)
2
2− ρS1,TOT
ρS1,3(t) = aS1∆tS1
2− aS1(t− tST1 − ∆tS1
2)
where the time interval ∆tSET12, between the end of Slew 1 and the start of Slew 2,
serve as a settling period for the rotation angle . Now the demanded quaternion qD(t)
and demanded orbit-referenced body rate ωoD(t) for the period tST1 ≤ t < tST2 can be
determined as follows:
qD(t) =
λSLEW1(1) sin(12ρS1(t))
λSLEW1(2) sin(12ρS1(t))
λSLEW1(3) sin(12ρS1(t))
cos(12ρS1(t))
(5.17)
ωoD(t) = ρS1(t).λSLEW1 (5.18)
Chapter 5 — Control Demand for Imaging Sequence 52
5.3.3 Slew 3
Slew 3 is a continuation of Slew 2 with the rotation axis identical to that for Slew 2. It is
performed as an eigenaxis rotation starting at the midpoint of the image defined by the
time tMID and attitude qMID. The duration of Slew 3, ∆tS3, is given by:
∆tS3 = ∆tPM +|ωo
IMG|aS3
(5.19)
where ∆tPM is the time after the image midpoint where braking commences and the
second term is the time it takes for a constant angular deceleration of aS3 until the rate
is zero. The total rotation angle for Slew 3 is derived as follows:
ρS3,TOT = |ωoIMG|
(∆tPM +
|ωoIMG|aS3
)− |ωo
IMG|22aS3
(5.20)
The previous equations of Section 5.3.3 derived the start time and attitude for Slew 3.
This can be used to derive the rotation angle and rate as a functions of time, based on
an angular acceleration parameter aS3 as follows:
ρS3(t) =
0 (t < tST3)
|ωoIMG| (t− tST3) (tST3 ≤ t < tST3 + ∆tPM)
ρS3,3(t) (tST3 + ∆tPM ≤ t < tST3 + ∆tS3)
ρS3,TOT (tST3 + ∆tS3 ≤ t < tST3 + ∆tS3 + ∆tSET34)
(5.21)
ρS3(t) =
0 (t < tST3)
|ωoIMG| (tST3 ≤ t < tST3 + ∆tPM)
ρS3,3(t) (tST3 + ∆tPM ≤ t < tST3 + ∆tS3)
0 (tST3 + ∆tS3 ≤ t < tST3 + ∆tS3 + ∆tSET34)
(5.22)
with
ρS3,3(t) = |ωoIMG| (t− tST3) − 0.5aS3(t− tST3 − ∆tPM)2
ρS3,3(t) = |ωoIMG| − aS3(t− tST3 − ∆tPM)
Now the demanded quaternion qD(t) and demanded orbit-referenced body rate ωoD(t) for
the period tST3 ≤ t < tST3 + ∆tS3 + ∆tSET34 can be determined as follows:
qSLEW3(t) =
λSLEW2(1) sin(12ρS3(t))
λSLEW2(2) sin(12ρS3(t))
λSLEW2(3) sin(12ρS3(t))
cos(12ρS3(t))
(5.23)
Chapter 5 — Control Demand for Imaging Sequence 53
qD(t) =
qSLEW3(4) qSLEW3(3) −qSLEW3(2) qSLEW3(1)
−qSLEW3(3) qSLEW3(4) qSLEW3(1) qSLEW3(2)
qSLEW3(2) −qSLEW3(1) qSLEW3(4) qSLEW3(3)
−qSLEW3(1) −qSLEW3(2) −qSLEW3(3) qSLEW3(4)
qMID (5.24)
ωoD(t) = ρS3(t).λSLEW2 (5.25)
5.3.4 Slew 4
The start time of Slew 4, tST4, is the same as the end time of Slew 3 with the settling
interval ∆tSET34 included and is given by:
tST4 = tST3 + ∆tS3 + ∆tSET34 (5.26)
Since the rotation axis for Slew 3 is the same as for Slew 2, the quaternion describing the
transformation between the initial and final attitudes of Slew 3, qS3,TOT , is given by:
qS3,TOT =
λSLEW2(1) sin(12ρS3,TOT )
λSLEW2(2) sin(12ρS3,TOT )
λSLEW2(3) sin(12ρS3,TOT )
cos(12ρS3,TOT )
(5.27)
The initial attitude of Slew 4 is identical to the final attitude for Slew 3, qS3, and the
initial attitude of Slew 3 is known to be qMID. Thus qS3 can be derived as:
qS3 =
qS3,TOT (4) qS3,TOT (3) −qS3,TOT (2) qS3,TOT (1)
−qS3,TOT (3) qS3,TOT (4) qS3,TOT (1) qS3,TOT (2)
qS3,TOT (2) −qS3,TOT (1) qS3,TOT (4) qS3,TOT (3)
−qS3,TOT (1) −qS3,TOT (2) −qS3,TOT (3) qS3,TOT (4)
qMID (5.28)
Since the final attitude for Slew 4 is nadir pointing, the rotation axis and angle for Slew
4 are derived as:
ρS4,TOT = 2 arccos(qS3(4)) (5.29)
λSLEW4 =−[qS3(1) qS3(2) qS3(3)]T
sin(ρS4,TOT/2)(5.30)
Chapter 5 — Control Demand for Imaging Sequence 54
A constant demanded angular acceleration, aS4, is performed for the first half of Slew 4,
followed by a constant demanded angular deceleration, −aS4, for the second half. The
total time used for Slew 4, ∆tS4, is derived from the total slew angle as follows:
∆tS4 = 2
√ρS4,TOT
aS4(5.31)
The previous equations of Section 5.3.4 derived the start time and attitude for Slew 4.
This can be used to derive the rotation angle and rate as a functions of time, based on
an angular acceleration parameter aS4 as follows:
ρS4(t) =
0 (t < tST4)12aS4(t− tST4)
2(tST4 ≤ t < tST4 + 1
2∆tS4
)ρS4,3(t)
(tST4 + 1
2∆tS4 ≤ t < tST4 + ∆tS4
)ρS4,TOT (tST4 + ∆tS4 ≤ t < tEND)
(5.32)
ρS4(t) =
0 (t < tST4)
aS4(t− tST4)(tST4 ≤ t < tST4 + 1
2∆tS4
)ρS4,3(t)
(tST4 + 1
2∆tS4 ≤ t < tST4 + ∆tS4
)0 (tST4 + ∆tS4 ≤ t < tEND)
(5.33)
with
ρS4,3(t) = 2√ρS4,TOTaS4(t− tST4) − aS4(t− tST4)
2
2− ρS4,TOT
ρS4,3(t) = aS4∆tS4
2− aS4(t− tST4 − ∆tS4
2)
Now the demanded quaternion qD(t) and demanded orbit-referenced body rate ωoD(t) for
the period tST4 ≤ t < tEND can be determined as follows:
qSLEW4(t) =
λSLEW4(1) sin(ρS4(t)2
)
λSLEW4(2) sin(ρS4(t)2
)
λSLEW4(3) sin(ρS4(t)2
)
cos(ρS4(t)2
)
(5.34)
qD(t) =
qSLEW4(4) qSLEW4(3) −qSLEW4(2) qSLEW4(1)
−qSLEW4(3) qSLEW4(4) qSLEW4(1) qSLEW4(2)
qSLEW4(2) −qSLEW4(1) qSLEW4(4) qSLEW4(3)
−qSLEW4(1) −qSLEW4(2) −qSLEW4(3) qSLEW4(4)
qS3 (5.35)
ωoD(t) = ρS4(t).λSLEW4 (5.36)
Chapter 5 — Control Demand for Imaging Sequence 55
5.4 Simulation Results
An approach was presented in Section 5 to derive the demanded attitude quaternion and
orbit reference body rate for the entire imaging sequence. This is based on input values
for the defined image mid-point time, tMID, the target attitude quaternion at the mid-
point, given as qMID, the required imaging body rate vector (orbit referenced) denoted
by ωoIMG, and the size of the lead-in angle up to the mid-point of the imaging period,
ρS2,TOT .
The simulation is based on the following parameter selection:
• tMID = 65 seconds after the start of slew 1.
• qMID = [0.2156 0.01886 − 0.08509 0.9726]T (0o pitch, 25o roll, −10o yaw).
• ωoIMG = [0 − 0.6 0]T degrees/s.
• ρS2,TOT = 20o.
The settling times at the end of slew 1 and slew 3 are assumed to be ∆tSET12 = ∆tSET34 =
5 seconds. The demanded angular accelerations for each slew are chosen as aS1 = aS2 =
aS3 = aS4 = 0.005 rad/s2 and the time ∆tPM = 0.5ρS2/ |ωoIMG|. This simulation uses
the three-axis quaternion feedback controller from Section 4.2.3. A faster settling time
is chosen for this simulation, since the commanded angles are very small. A 5% settling
time of ts = 0.1 seconds is used with a damping ratio of ζ = 0.9. The undamped natural
frequency ωn = 3/ζts = 33.33 rad/s and the integral time constant T = 10/ζωn = 0.333
seconds. The controller gains are calculated as:
k = ω2n + 2ζωn/T = 1291
c = 2ζωn + 1/T = 63
The generated quaternion demand and the orbit-referenced body rate demands are shown
in Figure 5.2 and Figure 5.3 respectively. The settling periods at the end of Slew 1 and
Slew 3 are clearly visible in both figures. In Figure 5.3 the body rates of the satellite
for the different slew maneuvers can be seen. During Slew 1 and Slew 3 the body rate
ramps to a maximum value and then reduces linearly to 0. This behaviour is expected
since both slews are performed with an angular acceleration for the first half of the slew,
followed by an angular deceleration.
Chapter 5 — Control Demand for Imaging Sequence 56
Slew 2 starts with an acceleration phase until the required imaging rate is obtained and
then continues at a constant rate. This rate is maintained during Slew 3 until the end of
the imaging period, where after the rate reduces at a constant deceleration to 0.
0 20 40 60 80 100 120−0.15
−0.1
−0.05
0
0.05
0.1
0.15
0.2
0.25Quaternion Demand
time (s)
q1q2q3
Slew 1 &SettlingTime
Slew 2
Slew 3 &SettlingTime
Slew4
ImagingPeriod
Figure 5.2: Quaternion Demand for Imaging Sequence
The commanded torque for the imaging sequence and the corresponding gimbal rate is
shown in Figure 5.4 and Figure 5.6 respectively. The maximum torque needed is 0.12 Nm
and the maximum gimbal rate is 2.2 deg/s. The errors between the commanded Euler
angles and the measured Euler angles are also depicted. These angle errors are very small,
especially during imaging (Slew 2 and Slew 3) when accuracy is most important. The
maximum error during imaging is less than 0.001 degrees.
From these simulation results one can see that the maneuvers are quite accurate when
using the Moving Demand approach since the reference angle and rate demand are con-
tinuously known.
Chapter 5 — Control Demand for Imaging Sequence 57
0 20 40 60 80 100 120−2.5
−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
2.5Orbit Referenced Rate Demand
time (s)
wxwywz
Slew 1 &SettlingTime
Slew 2
Slew 3 &SettlingTime
Slew 4
ImagingPeriod
Figure 5.3: Body Rate Demand for Imaging Sequence
0 20 40 60 80 100 120
−0.1
−0.05
0
0.05
0.1
0.15Torque Command
Nm
time (s)
Tx
Ty
Tz
Imaging Period
Figure 5.4: Simulation Result for Imaging Sequence - Torque Command
Chapter 5 — Control Demand for Imaging Sequence 58
0 20 40 60 80 100 120−20
−15
−10
−5
0
5
10
15
20
25
30Euler Angles
Deg
rees
time (s)
PitchRollYaw
Imaging Period
Figure 5.5: Simulation Result for Imaging Sequence - Euler Angles
0 20 40 60 80 100 120−2.5
−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
2.5Gimbal Rate
Deg
rees
/s
time (s)
Delta dotx
Delta doty
Delta dotz
Imaging Period
Figure 5.6: Simulation Result for Imaging Sequence - Gimbal Rate
Chapter 5 — Control Demand for Imaging Sequence 59
0 20 40 60 80 100 120−6
−4
−2
0
2
4
6x 10
−3 Euler Angle Error
degr
ees
time (s)
Pitch ErrorRoll ErrorYaw Error
Imaging Period
Figure 5.7: Simulation Result for Imaging Sequence - Euler Angle Error
Chapter 6
Measurements and Results
The Control Moment Gyro module designed in Chapter 3 is tested on an air bearing table
and the measurements are compared to the simulation results of Chapters 2, 4 and 5 to
verify the functionality of the CMG design. Communications between the CMG module
and the PC is done via an RF link to minimize external forces. The CMG module with
battery, RF link and rate gyro is mounted on a cart with three carbon nozzles which are
used to levitate the system. This whole setup will be referred to as the CMG system. The
air bearing table, levitating cart and CMG setup are further described in Appendix C.
6.1 Calibration
6.1.1 Gimbal Accuracy
The step size of the gimbal is measured by means of a laser pointer. The laser pointer
was attached to the gimbal, pointing horizontally onto a wall. After a rotation of 100
steps, the distance covered on the wall was measured. The typical geometry are shown
in Figure 6.1.
1805 mm
60 mm
θ
Wall
Laser
Pointer
Figure 6.1: Measuring the gimbal’s step size
60
Chapter 6 — Measurements and Results 61
The angle, θ, which represents 100 steps is calculated as:
θ = arctan60
1805= 1.904o
Thus the measured size of one gimbal step = 0.01904o. From Section 3.3.2, the rotational
resolution of the gimbal is:
Motor step size
Total gear ratio=
15
786= 0.01908o
The measured gimbal step angle of 0.01904o is very close to the calculated value of
0.01908o.
6.1.2 Moment of Inertia Calculation
The aim of the first test on the air bearing table is to calculate the moment of inertia
of the cart and CMG system. This is done by using the CMG as a reaction wheel with
the spin-axis of the momentum wheel perpendicular to the ground level. The momentum
wheel is accelerated from zero and the angular acceleration of the cart is measured. The
moment of inertia of the ideal cart and CMG system Is is given from the conservation of
angular momentum as:
Is =Iwω
θ
with Iw = 0.0015 kgm2 the moment of inertia of the momentum wheel, ω the angular
acceleration of the momentum wheel and θ the angular acceleration of the cart. The
results of five consecutive tests are shown in Table 6.1. The measurements shown in the
table are the average for the first few seconds of each maneuver when the torque is still
at maximum.
ω/100 (o/s2) θ (o/s2) Is (kgm2)
9.9 2.85 0.521
9.8 2.85 0.5158
9.9 2.80 0.5304
10.5 2.96 0.5321
9.88 2.65 0.559
Table 6.1: Results from Moment of Inertia Tests
Chapter 6 — Measurements and Results 62
The average moment of inertia calculated from the measurements for the cart and CMG
system is Is = 0.535 kgm2. Figure 6.2 display the angular acceleration of the momentum
wheel and the cart, as well as the angular rotation and angular rate of the cart.
0 5 10 150
50
100
150
200
250
300
350Gyro Angular Rotation
Ang
le (
degr
ees)
0 5 10 150
5
10
15
20
25
30Gyro Rate
degr
ees/
s
time (s)
0 5 10 15
−2
0
2
4
6
8
10
12Gyro Acceleration & Wheelacc/100
degr
ees/
s2
time (s)
Gyro AccWheel Acc/100
Figure 6.2: Angular acceleration of Momentum Wheel and Cart (Gyro)
6.1.3 Glass Surface Test
Since the CMG setup consists of only one CMG, the resulting torque output of the CMG is
around two axes. The spin-axis of the momentum wheel is parallel to the ground plane and
the gimbal is rotated around an axis also parallel to the ground plane, but perpendicular
to the spin-axis as shown in Figure 6.3. For small gimbal angles, the output torque will
be large about an axis perpendicular to the ground plane. This will cause the cart to
rotate. The torque generated about the second axis will be very small and will have no
effect since the cart can only rotate around one axis.
The gimbal is rotated through a specific angle and then back to zero again. Repeating
this process will be referred to as ‘mirror’. The CMG is ‘mirrored’ from +15 degrees to
an inclination angle of -15 degrees with a gimbal rate of 500 steps/s (9.54 o/s). A wheel
speed of ω = 2000 rpm is used for the tests.
Chapter 6 — Measurements and Results 63
Spin-axis
Gimbal-axisGround plane
Figure 6.3: Diagram of the CMG setup
When a CMG is gimballed to a certain inclination angle and back to zero again, the
angular rate of the cart should reach a maximum at the maximum gimbal inclination angle
and return to zero when the gimbal is back at zero degrees, as described in Section 2.2.1.
In Figure 6.4 the gimbal inclination angle is plotted with the angular rate of the cart
(Gyro).
0 10 20 300
50
100
150
200
250
300Gyro Angular Rotation
Ang
le (
degr
ees)
0 10 20 30
−10
0
10
20
30Gyro Rate & Gimbal Angle
degr
ees/
s &
deg
rees
0 10 20 30−10
−5
0
5
10Gyro Acceleration
degr
ees/
s2
time (s)0 10 20 30
−10
−5
0
5
10Gimbal Rate
degr
ees/
s
time (s)
Gyro RateGimb Angl
Figure 6.4: Measured results of ’Mirror’ Test
As shown in the measured results, the angular rate of the cart does not always return
to zero when the gimbal angle is zero. This is as a result of the unevenness of the glass
Chapter 6 — Measurements and Results 64
surface and a little bit of friction. Since it is not possible to achieve a 100% even glass
surface by adjusting the legs of the table, all the measurements done on the air bearing
table will have a small error.
6.1.4 Constant Angular Rate Test
It is important to know the magnitudes of the disturbances due to the glass surface of
the air bearing table. Once it is determined, the accuracy of the results from the tests
on the air bearing table can more easily be explained. The disturbances are measured by
looking at the effect it has when the cart is rotating at a constant rate.
0 10 20 30 400
100
200
300
400
500
600Gyro Angular Rotation
degr
ees
0 10 20 30 400
5
10
15
20Gyro Rate
degr
ees/
s
time (s)
0 10 20 30 40−2
0
2
4
6
8Gyro Acceleration
degr
ees/
s2
time (s)
Figure 6.5: Measurements for constant angular rate input
The CMG is gimballed to an inclination angle of 30 degrees at a rate of 500 steps/s. In an
ideal case this would result in the cart moving at a constant angular rate. The measured
values are shown in Figure 6.5. Looking at the angular rate and acceleration of the cart,
one can clearly see the effect friction and an uneven glass surface has on the cart. The
change in angular rate can be divided into two parts. The one is a linear decrease in the
angular rate due to friction, and the other one is a periodic disturbance due to the uneven
surface.
Chapter 6 — Measurements and Results 65
The average deceleration of the cart due to friction is measured as θ = −0.586 o/s2. Using
Equation 2.3, the disturbance friction torque is calculated as:
Tavg = Isθ = 5.47 mNm
where the moment of inertia of the cart Is = 0.535 kgm2. The unevenness of the glass
surface causes a sinusoidal disturbance in the acceleration of the cart, with an amplitude
of between 0.5 and 1 o/s2 which results in a maximum torque of approximately 4.7 to 9.3
mNm.
6.2 CMG Tests
6.2.1 Rest-to-Rest Slew
The CMG is gimballed from +15 degrees to an inclination angle of -15 degrees, and back
to +15 degrees again, at a gimbal rate of 500 steps/s (9.54 o/s). This results in the cart
rotating almost 55 degrees with a maximum angular rate measured as 17.4 degrees/s.
The average angular acceleration of the cart is measured as 5.77 degrees/s2. The shape of
the results displayed in Figure 6.6 are very similar to the shape of the simulation results
from Section 2.3.
From Equation 2.6 the CMG torque is calculated as:
T = h× δ = 0.052315 Nm
with the angular momentum h = 209.42 × 0.0015 × cos δ Nms and the gimbal rate δ =
0.1665 rad/s. Since the gimbal angle δ is small, cos δ ≈ 1. Using this with Equation 2.3
gives:
θ =T
Is=
0.052315
0.535= 0.09779 rad/s2 (5.61 o/s2)
This calculated value of the angular acceleration (5.61 o/s2) is close to the average mea-
sured value of 5.77 o/s2. Using Equation 2.5, the rotation of the cart can be calculated.
Since the cart accelerates for the first half of the slew, and decelerates for the second
half, the rotation of the cart is calculated for the first half and then multiplied by two to
obtain the total slew rotation angle. The time, thalf , for half of the slew is obtained from
Figure 6.6 as thalf = 3.15 seconds. The rotation angle is then calculated as:
θT = 2 × θhalf =T
Ist2half = 0.9703 rad (55.6 o)
Chapter 6 — Measurements and Results 66
0 2 4 60
10
20
30
40
50
60Gyro Angular Rotation
Ang
le (
degr
ees)
0 2 4 6−20
−10
0
10
20
30Gyro Rate & Gimbal Angle
degr
ees/
s &
deg
rees
0 2 4 6−8
−6
−4
−2
0
2
4
6Gyro Acceleration
degr
ees/
s2
time (s)0 2 4 6
−10
−5
0
5
10Gimbal Rate
degr
ees/
s
time (s)
Gyro RateGimb Angl
Figure 6.6: Measured results of the Rest-to-Rest Slew
The calculated value of the rotation angle (55.6 o) is very similar to the measured value
(≈ 55 o) from the test. The calculated values of the angular acceleration and rotation
angle proof the validity of the measurements.
6.2.2 Moving Demand Test
The Moving Demand simulation done in Section 5 is used to obtain an array of gimbal
angle rotations which will cause the cart to do a slew maneuver similar to the pitch
rotation of the satellite in the moving demand simulation of Section 5.4. The moment
of inertia of the CMG system as measured in Section 6.1.2 is used with the following
parameters:
• tMID = 25 seconds after the start of slew 1.
• qMID = [0 0 0 1]T (0o pitch, 0o roll, 0o yaw).
• ωoIMG = [0 − 6 0]T degrees/s.
• ρS2,TOT = 80o.
Chapter 6 — Measurements and Results 67
The angular rotation and rate obtained from a mathematical simulation are displayed
together with the measured results in Figure 6.7.
0 10 20 30 40−40
−20
0
20
40
60Angular Rotation
degr
ees
0 10 20 30 40−5
0
5
10
15Angular Rate
degr
ees/
s
0 10 20 30 40−60
−40
−20
0
20
40
60Gyro Angular Rotation
degr
ees
time (s)0 10 20 30 40
−10
−5
0
5
10
15Gyro Rate
degr
ees/
s
time (s)
Figure 6.7: Measured results of the Moving Demand
From the Measured Angular Rate figure, the effect of friction and the uneven glass surface
is clearly visible, especially when the cart is suppose to move at a constant angular
rate. The friction causes a constant deceleration of the cart. Keeping the effects of the
disturbances in mind, the measured results are quite similar to the simulations and clearly
illustrates the pitch rotation of the Moving Demand.
Chapter 7
Conclusions
This thesis showed the design of a Single Gimbal Control Moment Gyro actuator which
can be used in small satellite applications. The CMG was tested on an air bearing table
to evaluate the working of the controller and the CMG. A mathematical model of a small
satellite with an actuator configuration containing six CMG’s and an attitude controller
were derived to simulate the rotation of the satellite when using CMG’s. These simulations
were compared to practical tests done with a single CMG prototype on the air bearing
table to verify the performance of the CMG.
7.1 Results Obtained
The following results were obtained in this thesis:
• The BLDC motor was successfully controlled with inner analogue current and outer
discrete speed control loops to within 0.6 rpm of the commanded wheel speed.
• The gimbal has a rotational resolution of 0.0191 degrees.
• A mathematical model of a satellite was developed according to the parameters
given in Section 1.1 and was used to simulate the behaviour of the satellite with
CMG’s. It was shown in the simulations of Section 2.3 that a 30 degree rotational
maneuver is possible within 10 seconds.
• A three-axis quaternion feedback control law under slew rate constraint was de-
rived for the satellite’s attitude control. This was successfully implemented in the
mathematical model of the satellite to demonstrate a 30 degree rotation within the
permitted 10 seconds with less than 0.2% overshoot.
68
Chapter 7 — Conclusions 69
• A control mode known as the Moving Demand approach, used during imaging, was
also introduced into the mathematical model. This approach successfully imple-
mented consecutive slew maneuvers via a time varying attitude and rate demand to
ensure better tracking of the attitude command. Tracking errors were kept below
0.005 degrees during simulations.
• A single CMG prototype was designed and built according to the specifications of
Section 1.1 and tested on an air bearing table. The results of the tests correspond
to the mathematical simulations and the theory of Chapter 2, 4 and 5.
7.2 Additional Work
The following is a list of additional work that can still be done:
• The steering logic of the CMG’s can be extended to a pseudoinverse steering logic.
This would mean only four CMG’s are required to gimbal at different gimbal rates,
giving the controller full 3-axis freedom, but also making it more vulnerable to
singularities.
• The prototype CMG can be used as a VSCMG and a control law for an integrated
power and attitude control system can be developed.
• All the electronics used for controlling the CMG can be combined on one pcb.
This would dramatically downsize the area needed and thus a more compact CMG
‘package’ can be designed.
• A complete CMG product with all the electronics included can be developed, de-
signed to specific specifications. This product has to be as compact and light as
possible so it can be used on a small satellite.
• The surface of the air bearing table needs to be leveled more accurately to conduct
tests with reduced disturbances. From the tests done in Chapter 6, one can see the
unevenness of the glass surface has a noticable influence on the measurements. Re-
search in developing a smooth surface which is 100% level, would thus tremendously
increase the quality of the measurements.
Bibliography
[1] AGILENT TECHNOLOGIES, INC. HEDS-9100 - Two Channel Optical
Incremental Encoder Modules, August 2001.
[2] AHMED, J., COPPOLA, V., and BERNSTEIN, D., “Adaptive Asymptotic
Tracking of Spacecraft Attitude Motion with Inertia Matrix Identification.” Journal
of Guidance, Control, and Dynamics, 1998, Vol. 21, No. 5, No. 5, pp. 684–691.
[3] ARSAPE. Low voltage driver for 2 phase stepper motors, May 2000.
[4] CYGNAL INTEGRATED PRODUTS, INC. C8051F040/1/2/3 Mixed-Sygnal ISP
FLASH MCU Family , August 2002.
[5] DE LA MORINAIS, G. C., SALENC, C., and PRIVAT, M., “Mini CMG
Development for Future European Agile Satellite.” 5th International ESA
Conference on Spacecraft Guidance Navigation and Control Systems, Frascati
(Rome), October 2002.
[6] DEFENDINI, A., FAUCHEUX, P., GUAY, P., MORAND, J., and HEIMEL, H.,
“A Compact CMG Product for Agile Satellites.” 5th International ESA Conference
on Spacecraft Guidance Navigation and Control Systems, Frascati (Rome),
October 2002.
[7] DUNGATE, D. G. et al., “Topsat Imaging Mode ADCS Design.” 5th International
ESA Conference on Spacecraft Guidance Navigation and Control Systems, Frascati
(Rome), October 2002.
[8] FORD, K. A. and HALL, C. D., “Singular Direction Avoidance Steering for
Control Moment Gyros.” Journal of Guidance, Control, and Dynamics, 2000,
Vol. 23, No. 4, No. 4, pp. 648–656.
[9] HEIBERG, C., BAILEY, D., and WIE, B., “Precision Spacecraft Pointing Using
Single-Gimbal Control Moment Gyroscopes with Disturbance.” Journal of
Guidance, Control, and Dynamics, 2000, Vol. 23, No. 1, No. 1, pp. 77–85.
70
BIBLIOGRAPHY 71
[10] LAPPAS, V. J., STEYN, W. H., and UNDERWOOD, C., “Attitude Control for
Small Satellites using Control Moment Gyros.” Acta Astronautica, 2002, Vol. 51,
No. 1-9, No. 1-9, pp. 101–111.
[11] LITEF GMBH. uFORS User Manual , May 2001.
[12] ONERA. Satellite attitude control using CMG , May 1999. [Online] Available:
http://www.onera.fr/dcsd-en/gyrodynes.
[13] RADIOMETRIX LTD. TX2 & RX2 Data Sheet , February 2002.
[14] SCHAUB, H. and JUNKINS, J. L., “Singularity Avoidance Using Null Motion and
Variable-Speed Control Moment Gyros.” Journal of Guidance, Control, and
Dynamics, January-February 2000, Vol. 23, No. 1, pp. 11–15.
[15] SHAMMA, M. and MICHAELIS, T., “Double Gimballed Momentum Wheel Design
for Small Satellites.” Proc. 1st International Conf. on Spacecraft Guidance,
Navigation and Control Systems, Noordwijk, The Netherlands, June 1991,
pp. 369–391.
[16] STEYN, W. H., “Reaction Wheel Electronics Design.” Private communication,
January 2004.
[17] TSIOTRAS, P. and SHEN, H., “Satellite Attitude Control and Power Tracking
with Energy/Momentum Wheels.” Journal of Guidance, Control, and Dynamics,
January-February 2001, Vol. 24, No. 1, pp. 23–33.
[18] UNITRODE CORPORATION. UC2625 - Brushless DC Motor Controller ,
November 1999.
[19] WERTZ, J. R. (Ed.), Spacecraft Attitude Determination and Control . Kluwer
Academic Publishers, 1990.
[20] WERTZ, J. R. and LARSON, W. J. (Eds), Space Mission Analysis and Design.
Microcosm Press and Kluwer Academic Publishers, 1999.
[21] WIE, B., BAILEY, D., and HEIBERG, C., “Rapid Multi-Target Acquisition and
Pointing Control of Agile Spacecraft.” AIAA Guidance, Navigation, and Control
Conference, Denver, August 2000.
[22] WIE, B. and LU, J., “Feedback Control Logic for Spacecraft Eigenaxis Rotations
Under Slew Rate and Control Constraints.” Journal of Guidance, Control, and
Dynamics, November 1995, Vol. 18, No. 6, pp. 1372–1377.
BIBLIOGRAPHY 72
[23] WIE, B., Space Vehicle Dynamics and Control . AIAA Education Series, AIAA,
Washington, DC, 1998.
[24] YOON, H. and TSIOTRAS, P., “Spacecraft Adaptive Attitude and Power Tracking
with Variable Speed Control Moment Gyroscopes.” Journal of Guidance, Control,
and Dynamics, November-December 2002, Vol. 25, No. 6, pp. 1081–1090.
Appendix A
CMG Machine Drawing
73
APPENDIX A - CMG MACHINE DRAWING 74
Figure A.1: Drawing of CMG stand with Gimbal
Appendix B
Schematics of Brushless DC Motor
Electronics
75
APPENDIX B - SCHEMATICS OF BRUSHLESS DC MOTOR ELECTRONICS 76
12
34
ABCD
43
21
D C B A
SH
TO
F6
1V
ER
SIO
N:
0.0
A
DW
G.N
O.:
ES
L0
3-1
04
02
0-2
13
-01
-0.0
A
TIT
LE
:
Bru
sh
less D
C M
oto
r E
lectr
on
ics
CO
PY
RIG
HT
RE
SE
RV
ED
FIL
E:
BLD
Cdri
ver0
.Sch
RE
VIS
ION
DE
TA
ILS
VE
RS
ION
C/N
OT
ED
RW
NC
HK
AP
PR
S.E
NG
DA
TEESL
HA
LL
1H
AL
L2
HA
LL
3
ISE
NS
E1
ISE
NS
E2
E/A
_O
UT
E/A
_O
UT
2.5
V R
EF
I_M
ON
SP
EE
D_D
IR
ISE
T
ISE
T_M
ON
2.5
V R
EF
I_M
ON
SP
EE
D_O
UT
SP
EE
D_D
IRS
PE
ED
_P
PR
SP
EE
D_O
UT
INH
IBIT
ST
EP
_D
IR
DE
BU
G
TE
ST
TP
2T
ES
TT
P1
DE
BU
G
ISE
T_M
ON
ISE
T
XC
FS
econ
d D
raft
12-1
1-20
03
4-O
ct-2
004
Prin
t
+12V
PG
ND
AG
ND
+5V
AG
ND
+5V
PG
ND
+12V
+5V
GN
D
GN
D
PW
M_Q
UA
DS
EL
PW
M_C
OA
ST
PW
M_D
IR
ISE
NS
E2
ISE
NS
E1
ISE
TE
/A_O
UT
2.5
V R
EF
+5V
RE
F
ISE
T_M
ON
I_M
ON
+5V
AG
ND
BL
DC
curr
ents
ense
BL
DC
curr
ents
ense
.Sch
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
AO
UT
1A
OU
T0
AIN
0
AV
RE
F
VB
US
+5V
GN
D
+3.3
V
A+
3.3
VA
GN
D
SD
AS
CL
VB
US
_G
ND
AIN
1A
IN2
P1.0
P1.1
TX
D1
RX
D1
AIN
3
CA
NH
_B
CA
NL_B
AD
CS
_S
YN
C_S
HIE
LD
CA
N_S
HIE
LD
_B
AD
CS
_S
YN
C_L
CA
NL_B
AD
CS
_S
YN
C_H
CA
NH
_B
CA
NH
_A
CA
NL_A
CA
N_S
HIE
LD
_A
CA
NL_A
CA
NH
_A
UN
RE
G_P
WR
_S
UP
PLY
UN
RE
G_P
WR
_S
UP
PLY
UN
RE
G_P
WR
_R
ET
UR
NU
NR
EG
_P
WR
_R
ET
UR
N
RE
G5_P
WR
_R
ET
UR
NR
EG
5_P
WR
_R
ET
UR
N
RE
G5_P
WR
_S
UP
PLY
RE
G5_P
WR
_S
UP
PLY
TM
ST
DI
TC
K
TD
O
TX
D0
RX
D0
P0.6
P0.7
gen
eric
gen
eric
.node.
sch
PD
AP
DB
PD
C
PU
AP
UB
PU
C
ISE
NS
E1
ISE
NS
E2
HA
LL3
HA
LL2
HA
LL1
+12V
PG
ND
+5V
GN
D
HA
LLA
+5V
HA
LLB
PH
AS
E A
HA
LLC
PH
AS
E B
GN
D
PH
AS
E C
BL
CD
mosf
ets
BL
CD
mosf
ets.
Sch
+5V
GN
D
+5V
GN
D
+12V
PG
ND
HA
LL
1H
AL
L2
HA
LL
3
ISE
NS
E1
ISE
NS
E2
TC
KT
MS
TD
IT
DO
RX
D0
TX
D0
PH
AS
E A
PH
AS
E B
PH
AS
E C
+5V
GN
D
HA
LL
AH
AL
LB
HA
LL
C
TC
KT
MS
TD
IT
DO
RX
D0
TX
D0
PH
AS
E A
PH
AS
E B
PH
AS
E C
HA
LL
AH
AL
LB
HA
LL
C
+3.3
V
GN
D
+3.3
V
PD
AP
DB
PD
C
PU
AP
UB
PU
C
HA
LL3
HA
LL2
HA
LL1
ISE
NS
E1
ISE
NS
E2
SP
EE
D_P
PR
PW
M_D
IR
E/A
_O
UT
+5V
RE
F
SP
EE
D_O
UT
SP
EE
D_D
IR
+12V
PG
ND
+5V
GN
D
PW
M_Q
UA
DS
EL
PW
M_C
OA
ST
CH
AN
NE
L_A
CH
AN
NE
L_B
BL
DC
dri
ver
contr
oll
erB
LD
Cdri
ver
contr
oll
er.S
ch
CH
AN
NE
L_A
CH
AN
NE
L_B
HA
LLA
+5V
HA
LLB
PH
AS
E A
HA
LLC
PH
AS
E B
GN
D
PH
AS
E C
CA
NH
_B
CA
NL_B
AD
CS
_S
YN
C_S
HIE
LD
CA
N_S
HIE
LD
_B
AD
CS
_S
YN
C_L
CA
NL_B
AD
CS
_S
YN
C_H
CA
NH
_B
CA
NH
_A
CA
NL_A
CA
N_S
HIE
LD
_A
CA
NL_A
CA
NH
_A
UN
RE
G_S
UP
PLY
UN
RE
G_S
UP
PLY
UN
RE
G_R
ET
UR
NU
NR
EG
_R
ET
UR
N
RE
G5_R
ET
UR
NR
EG
5_R
ET
UR
N
RE
G5_S
UP
PLY
RE
G5_S
UP
PLY
TM
ST
DI
TC
K
TD
O
TX
D0
RX
D0
+3.3
V
GN
D
CH
AN
NE
L_A
+5V
CH
AN
NE
L_B
RX
D1
TX
D1
BL
CD
dri
ver
Intr
fsB
LC
Ddri
ver
Intr
fs.S
ch
+5V
CH
AN
NE
L_A
CH
AN
NE
L_B
RX
D1
TX
D1
P0.6
CL
K_P
UL
SE
RF
EN
AB
LE
P1.0
SP
EE
D_P
PR
APPENDIX B - SCHEMATICS OF BRUSHLESS DC MOTOR ELECTRONICS 77
12
34
56
78
ABCD
87
65
43
21
D C B A
SH
TO
F6
2V
ER
SIO
N:
0.0
A
DW
G.N
O.:
ES
L03-1
04020-2
13-0
2-0
.0A
TIT
LE
:
Bru
sh
less D
C M
oto
r E
lectr
on
ics
CO
PY
RIG
HT
RE
SE
RV
ED
FIL
E:
generic.n
ode.s
ch
RE
VIS
ION
DE
TA
ILS
VE
RS
ION
C/N
OT
ED
RW
NC
HK
AP
PR
S.E
NG
DA
TEESL
P3
.0P
3.1
P3
.2P
3.3
P3
.4P
3.5
P3
.6P
3.7
P2
.0P
2.1
P2
.2P
2.3
P2
.4P
2.5
P2
.6P
2.7
P1
.2P
1.3
P1
.4P
1.5
P1
.6P
1.7
AO
UT
1A
OU
T0
AIN
0
AV
RE
FA
VR
EF
VB
US
+5
V
GN
D
+3
.3V
A+
3.3
V
+5
V
+3
.3V
A+
3.3
V
AG
ND
Sta
ndard
Bus Inte
rface (
SB
I)
TX
D1
GN
D2
VC
C3
RX
D4
Vre
f5
CA
NL
6C
AN
H7
RS
8
U3
PC
A82C
250?
TX
D1
GN
D2
VC
C3
RX
D4
Vre
f5
CA
NL
6C
AN
H7
RS
8
U4
PC
A82C
250?
+5
V
+5
V
CA
NS
EL
CA
NH
_A
CA
NL
_A
CA
NH
_B
CA
NL
_B
nC
AN
SE
L
CA
NR
X
CA
NT
X
CA
NR
X_A
CA
NR
X_B
CA
N tra
nceiv
ers
and m
ultip
lexer
R3
120
R2
120
Note
: O
nly
the
last
node
should
hav
e a
term
inat
ion r
esis
tor.
RE
2R
O1
DE
3A
6
B7
DI
4
VC
C8
GN
D5
U1
LT
C1480
AD
CS
_S
YN
C_H
AD
CS
_S
YN
C_L
+3
.3V
AD
CS
_S
YN
C
RS
485 d
river
for
AD
CS
_S
YN
C
L1
EX
XC
3216
A+
3.3
V+
3.3
V
Analo
gue G
round P
lane
Dig
ital G
round P
lane T
P4
AG
ND
TP
5G
ND
R13
1M
C22
1nFC
hassis
Gro
und P
lane
Dig
ital G
round P
lane
C18
1uF
C6
0.1
uF
R10
0E
+5
V
TP
6+
5V
C24
10uF
, 25V
C2
4.7
uF
, 20V
C7
0.1
uF
+5
V
TP
7+
3.3
V
R14
0.2
7R
, 1%
X2
DC
FIL
TE
R
R12
0E
RE
G5_P
WR
_S
UP
PL
Y
RE
G5_P
WR
_R
ET
UR
N
TM
ST
CK
TD
IT
DO
+3
.3V
A+
3.3
V+
3.3
V
VDD24
VDD41
VDD57
AV+3
DGND25
DGND40
DGND56
AV+6
AGND4
AGND5
TM
S5
8
TC
K5
9
TD
I6
0
TD
O6
1
/RS
T6
2
XT
AL
11
7
XT
AL
21
8
MO
NE
N1
9
VR
EF
7
VR
EF
A8
AIN
0.0
9
AIN
0.1
10
AIN
0.2
11
AIN
0.3
12
HV
CA
P1
3
HV
RE
F1
4
HV
AIN
+1
5
HV
AIN
-1
6
CA
NT
X2
CA
NR
X1
DA
C0
64
DA
C1
63
P0
.05
5
P0
.15
4
P0
.25
3
P0
.35
2
P0
.45
1
P0
.55
0
P0
.64
9
P0
.74
8
P1
.02
9
P1
.12
8
P1
.22
7
P1
.32
6
P1
.42
3
P1
.52
2
P1
.62
1
P1
.72
0
P2
.03
7
P2
.13
6
P2
.23
5
P2
.33
4
P2
.43
3
P2
.53
2
P2
.63
1
P2
.73
0
P3
.04
7
P3
.14
6
P3
.24
5
P3
.34
4
P3
.44
3
P3
.54
2
P3
.63
9
P3
.73
8
U5
C8051F
041
R4
100k
TX
D0
RX
D0
SD
AS
CL
CE
X0
T2
TP
3A
DC
S_S
YN
C
XT
AL
1X
TA
L2
C5
0.1
uF
DA
C B
yp
ass C
ap
s
C17
<tb
d>
Y1
16M
Hz
C3
22pF
C4
22pF
R9
10k
SD
A
R8
10k
SC
L
SD
AS
CL
+3
.3V
CA
NT
XC
AN
RX
+5V
_se
nse
+5V
_se
nse
+5V
AV
RE
F
R1
120
Pow
er
filter
and c
urr
ent m
easure
ment re
sis
tor
Initia
l desig
nF
.G.R
A??/0
3/2
003
Pow
er
Regula
tor
Decouplin
g c
apacitors
C9
0.1
uF
C12
0.1
uF
C13
0.1
uF
C15
0.1
uF
C16
0.1
uF
+5
V
A+
3.3
V
C11
0.1
uF
C10
0.1
uF
+3
.3V
OU
T1
SE
NS
E2
GN
D3
BY
P4
SH
DN
5
GN
D6
GN
D7
IN8
U6
LT
1763-3
.3
C25
0.0
1uF
+5
V
+5
V
X1
DC
FIL
TE
R
R11
0E
UN
RE
G_P
WR
_S
UP
PL
Y
UN
RE
G_P
WR
_R
ET
UR
NV
BU
S_
GN
D
Pow
er
filter
AIN
1A
IN2
TX
D1
RX
D1
P1
.0P
1.1
TX
D1
RX
D1
AIN
3
C21
1nF
C14
0.1
uF
C1
4.7
uF
, 20V
XC
FS
econ
d D
raft
(Add
apte
d fo
r R
W d
esig
n)12
-11-
2003
4-O
ct-2
004
Prin
t
ES
L04-1
00000-2
13-0
1-0
.0A
Ori
gin
ally
the
Gen
eric
Node:
AD
CS
_S
EL
+3
.3V
C54
0.1
uF
123
U2A
SN
74H
C00N
GN
D7
VC
C1
4
U2E
SN
74H
C00N
89 1
0
U2C
SN
74H
C00N
11
12
13
U2D
SN
74H
C00N
4 56
U2B
SN
74H
C00N
Pow
er
Addit
ional
100nF
outp
ut
cap. at
gro
undin
g c
ircu
it.
Gen
eric
CA
N N
od
e.
CA
NL
_A
CA
NH
_A
CA
N_S
HIE
LD
_A
AD
CS
_S
YN
C_H
AD
CS
_S
YN
C_L
CA
N_S
HIE
LD
_B
J3J2
J1
AD
CS
_S
YN
C_S
HIE
LD
CA
NL
_A
CA
NH
_A
CA
NH
_B
CA
NL
_B
CA
NH
_B
CA
NL
_B
CA
N
CA
NH
_B
CA
NL
_B
AD
CS
_S
YN
C_
SH
IEL
D
CA
N_
SH
IEL
D_
BA
DC
S_
SY
NC
_L
CA
NL
_B
AD
CS
_S
YN
C_
H
CA
NH
_B
CA
NH
_A
CA
NL
_A
CA
N_
SH
IEL
D_
A
CA
NL
_A
CA
NH
_A
UN
RE
G_P
WR
_S
UP
PL
Y
UN
RE
G_P
WR
_R
ET
UR
NR
EG
5_P
WR
_S
UP
PL
Y
RE
G5_P
WR
_R
ET
UR
NU
NR
EG
_P
WR
_S
UP
PL
Y
UN
RE
G_P
WR
_R
ET
UR
N
RE
G5_P
WR
_S
UP
PL
Y
RE
G5_P
WR
_R
ET
UR
N
UN
RE
G_
PW
R_
SU
PP
LY
UN
RE
G_
PW
R_
SU
PP
LY
UN
RE
G_
PW
R_
RE
TU
RN
UN
RE
G_
PW
R_
RE
TU
RN
RE
G5
_P
WR
_R
ET
UR
N
RE
G5
_P
WR
_R
ET
UR
N
RE
G5
_P
WR
_S
UP
PL
Y
RE
G5
_P
WR
_S
UP
PL
Y
R6
10k
R5
10k
R7
10k
+3
.3V
TM
S
TD
IT
CK
TD
O
TX
D0
RX
D0
APPENDIX B - SCHEMATICS OF BRUSHLESS DC MOTOR ELECTRONICS 78
12
34
ABCD
43
21
D C B A
SH
TO
F6
3V
ER
SIO
N:
0.0
A
DW
G.N
O.:
ES
L0
3-1
04
02
0-2
13
-03
-0.0
A
TIT
LE
:
Bru
sh
less D
C M
oto
r E
lectr
on
ics
CO
PY
RIG
HT
RE
SE
RV
ED
FIL
E:
BLD
Cdri
verc
ontr
olle
r.S
ch
RE
VIS
ION
DE
TA
ILS
VE
RS
ION
C/N
OT
ED
RW
NC
HK
AP
PR
S.E
NG
DA
TEESL
ISE
NS
E2
5
E/A
IN
(+
)1
VR
EF
2
ISE
NS
E3
ISE
NS
E1
4
DIR
6
SP
EE
D-I
N7
H1
8
H2
9
H3
10
RC
-BR
AK
E21
QU
AD
SE
L22
0V
-CO
AS
T23
SS
TA
RT
24
RC
-OS
C25
PW
M IN
26
E/A
OU
T27
E/A
IN
(-)
28
PD
C12
PD
B13
PD
A14
GND15
PU
C16
PU
B17
PU
A18
VCC19 T
AC
H-O
UT
20
PWR VCC11
U8
UC
2625
+C
42
4.7
uF
, 35V
C35
100nF
VD
D6
INA
2
INB
4
GN
D3
OU
TA
7
OU
TB
5
U9
MA
X4427E
SA
VD
D6
INA
2
INB
4
GN
D3
OU
TA
7
OU
TB
5
U10
MA
X4427E
SA
+12V
+12V
+12V
C43
4n7
C34
100nF
C23
1nF
CO
AS
TD
IRC
MD
QU
AD
SE
L
+5V
C44
10nF
+12V
TP
16
TP
17
TP
20
TP
14
TP
15
TP
19
TP
29
PD
AT
P30
PD
BT
P31
PD
C
TP
13
TP
18
PD
AP
DB
PD
C
PD
AP
DB
PD
C
PU
A
PU
BP
UC
+12V
+12V
+12V
HA
LL3
HA
LL2
HA
LL1
R37
150k
+5V
ISE
NS
E1
ISE
NS
E2
DIR
CM
DP
WM
_D
IR
4 56
U11B
HC
86
TP
32
SP
EE
D_P
PR
TP
35
DIR
CM
D
1 23
14 7V+
V-
U11A
HC
86
+5V
UC
2625
MA
X4427E
SA
's
SP
EE
D_P
PR
PW
M_D
IR
E/A
_O
UT
R32
68k, 1%
R30
10k
R31
20k
+5V
RE
F
SP
EE
D_O
UT
SP
EE
D_P
PR
R36
0E
PG
ND
Ref
er a
lso t
o g
ener
ic_node.
Sch
C46
220pF
+5V
C45
220pF
TP
37
CH
AN
NE
L_A
TP
36
CH
AN
NE
L_B
+5V
TP
38
SP
EE
D_D
IR
VC
C14
GN
D7
D2
CLK
3
nS4
nR1
Q5
nQ
6
U12A
74H
CT
74
SP
EE
D_D
IRS
PE
ED
_D
IR
CH
AN
NE
L_A
CH
AN
NE
L_B
VC
C14
GN
D7
D12
CLK
11
nS10
nR13
Q9
nQ
8
U12B
74H
CT
74
+5V
C47
100nF
+5V
74H
C74
CH
AN
NE
L_A
CH
AN
NE
L_B
C32
100nF
+C
40
4.7
uF
, 35V
+12V
C33
100nF
+C
41
4.7
uF
, 35V
+12V
C36
100nF
+5V
74H
C86
XC
FS
econ
d D
raft
12-1
1-20
03
4-O
ct-2
004
Prin
t
CH
AN
NE
L_A
CH
AN
NE
L_B
R33A
10k
R33B
10k
R33C
10k
R34A
10k
R34B
10k
R34C
10k
+12V
PG
ND
+12V
PG
ND
+5V
+5V
GN
DG
ND
EN
CO
DE
R
QU
AD
SE
LP
WM
_Q
UA
DS
EL
TP
33
QU
AD
SE
L
9
10
8U
11C
HC
86
PW
M_Q
UA
DS
EL
CO
AS
TP
WM
_C
OA
ST
TP
34
CO
AS
T
12
13
11
U11D
HC
86
PW
M_C
OA
ST
CH
AN
NE
L_A
CH
AN
NE
L_B
APPENDIX B - SCHEMATICS OF BRUSHLESS DC MOTOR ELECTRONICS 79
12
34
ABCD
43
21
D C B A
SH
TO
F6
4V
ER
SIO
N:
0.0
A
DW
G.N
O.:
ES
L0
3-1
04
02
0-2
13
-04
-0.0
A
TIT
LE
:
Bru
sh
less D
C M
oto
r E
lectr
on
ics
CO
PY
RIG
HT
RE
SE
RV
ED
FIL
E:
BLC
Dm
osfe
ts.S
ch
RE
VIS
ION
DE
TA
ILS
VE
RS
ION
C/N
OT
ED
RW
NC
HK
AP
PR
S.E
NG
DA
TEESL
+12V
C38
100nF
+C
53
22uF
, 25V
PG
ND
C37
100nF
PG
ND
ISE
NS
E1
ISE
NS
E2
PH
AS
E C
PH
AS
E B
PH
AS
E A
PG
ND
PG
ND
PG
ND
TP
24
TP
25
TP
26
TP
28
TP
27
TP
40
+12V
TP
39
PG
ND
R44
240
R45
240
R42
0.2
7R
43
0.2
7
PD
A
PD
B
PD
C
PU
A
PU
B
PU
C
+12V
ISE
NS
E1
ISE
NS
E2
PH
AS
E A
PH
AS
E B
PH
AS
E C
HA
LL
A
HA
LL
B
HA
LL
C
+5V
GN
D
C52
2n2
C51
2n2
C50
2n2
TP
23
TP
22
TP
21
HA
LL3
HA
LL2
HA
LL1
HA
LL
1H
AL
L2
HA
LL
3
G
SD
2
7,8
1
Q3A
IRF
7319
GS D
4
5,6
3Q
2B
IRF
7319
GS D
4
5,6
3Q
3B
IRF
7319
G
SD
2
7,8
1
Q2A
IRF
7319
GS D
4
5,6
3Q
1B
IRF
7319
G
SD
2
7,8
1
Q1A
IRF
7319
XC
FS
econ
d D
raft
12-1
1-20
03
4-O
ct-2
004
Prin
t
R35A
10k
R35B
10k
R35C
10k
C49A
10nF
C49B
10nF
C49C
10nF
C48A
10nF
C48B
10nF
C48C
10nF
R40A
100k
R40B
100k
R40C
100k
R38C
10
R38B
10
R38A
10
R39A
10
R39B
10
R39C
10
R41D
1k
R41C
1k
R41B
1k
+12V
PG
ND
+12V
PG
ND
+5V
+5V
GN
D
D8
30B
Q100
D9
30B
Q100
D10
30B
Q100
D3
30B
Q100
D5
30B
Q100
D7
30B
Q100D
230B
Q100
D6
30B
Q100
D4
30B
Q100
HA
LLA
+5V
HA
LLB
PH
AS
E A
HA
LLC
PH
AS
E B
GN
DP
HA
SE
C
APPENDIX B - SCHEMATICS OF BRUSHLESS DC MOTOR ELECTRONICS 80
12
34
ABCD
43
21
D C B A
SH
TO
F6
5V
ER
SIO
N:
0.0
A
DW
G.N
O.:
ES
L0
3-1
04
02
0-2
13
-05
-0.0
A
TIT
LE
:
Bru
sh
less D
C M
oto
r E
lectr
on
ics
CO
PY
RIG
HT
RE
SE
RV
ED
FIL
E:
BLD
Ccurr
ents
ense.S
ch
RE
VIS
ION
DE
TA
ILS
VE
RS
ION
C/N
OT
ED
RW
NC
HK
AP
PR
S.E
NG
DA
TEESL
567
48
U7B
LM
358A
48
2 31
U7A
LM
358A
R26
12k, 1%
R24
39k
R23 0
R21 0
R28
2M
2C
19
1uF
R25
39k
R27
12k, 1%
R29
2M
2 C20
1uF
E/A
_O
UT
R18
100k, 1%
R16
10k
R17
10k
R19
100k, 1%
R20
10k
C31
100nF
C26
100nF
C29
100nF
ISE
T
TP
8IS
EN
SE
1T
P9
ISE
NS
E2
TP
10
I_M
ON
TP
11
ISE
T
TP
12
E/A
_O
UT
I_M
ON
ISE
NS
E2
ISE
NS
E1
+5V
+5V
ISE
T
ISE
T_M
ON
E/A
_O
UT
LM
358A
C27
100nF
+5V
RE
F
2.5
V R
EF
+5V
RE
F
ISE
T_M
ON
I_M
ON
XC
FS
econ
d D
raft
12-1
1-20
03
17-N
ov-2
004
Prin
t
+5V
+5V
AG
ND
AG
ND
NC
1
IN2
NC
3
GN
D4
NC
5O
UT
6N
C7
NC
8D
1
MA
X6166
C39
100nF
TP
41
2.5
V R
EF
APPENDIX B - SCHEMATICS OF BRUSHLESS DC MOTOR ELECTRONICS 81
12
34
ABCD
43
21
D C B A
SH
TO
F6
6V
ER
SIO
N:
0.0
A
DW
G.N
O.:
ES
L0
3-1
04
02
0-2
13
-06
-0.0
A
TIT
LE
:
Bru
sh
less D
C M
oto
r E
lectr
on
ics
CO
PY
RIG
HT
RE
SE
RV
ED
FIL
E:
BLC
Ddri
verI
ntr
fs.S
ch
RE
VIS
ION
DE
TA
ILS
VE
RS
ION
C/N
OT
ED
RW
NC
HK
AP
PR
S.E
NG
DA
TEESL
XC
FS
econ
d D
raft
12-1
1-20
03
4-O
ct-2
004
Prin
t
WP
24 W
P28
WP
25 W
P29
WP
26 W
P30
WP
27 W
P31
BL
DC
MO
TO
R
HA
LLA
+5V
HA
LLB
PH
AS
E A
HA
LLC
PH
AS
E B
GN
DP
HA
SE
C
Pow
er
CA
N
WP
1W
P9
WP
2W
P10
WP
3W
P11
WP
4W
P12
WP
5W
P13
WP
6W
P14
WP
7W
P15
WP
8
CA
NH
_B
CA
NL_B
AD
CS
_S
YN
C_S
HIE
LD
CA
N_S
HIE
LD
_B
AD
CS
_S
YN
C_L
CA
NL_B
AD
CS
_S
YN
C_H
CA
NH
_B
CA
NH
_A
CA
NL_A
CA
N_S
HIE
LD
_A
CA
NL_A
CA
NH
_A
WP
23
WP
19W
P22
WP
18W
P21
WP
17W
P20
WP
16
UN
RE
G_P
WR
_S
UP
PLY
UN
RE
G_P
WR
_S
UP
PLY
UN
RE
G_P
WR
_R
ET
UR
N
UN
RE
G_P
WR
_R
ET
UR
N
RE
G5_P
WR
_R
ET
UR
N
RE
G5_P
WR
_R
ET
UR
N
RE
G5_P
WR
_S
UP
PLY
RE
G5_P
WR
_S
UP
PLY
12
34
56
78
910
P2
JTA
G
+3.3
V
TM
ST
DI
TC
KT
DO
JT
AG
TM
ST
DI
TC
KT
DO
TX
D0
RX
D0
1 2 3
P4
UA
RT
0
TX
D0
Ser
ial
Inte
rface
RX
D0
+3.3
V+
3.3
VG
ND
GN
D
CH
AN
NE
L_A
CH
AN
NE
L_B
WP
32
WP
34 W
P33
WP
35
CH
AN
NE
L_A
+5V
CH
AN
NE
L_B
+5V
+5V
Op
tica
l In
crem
enta
l E
nco
der
TX
D0
RX
D0
1 2 3
P8
UA
RT
1
TX
D1
RX
D1
Appendix C
CMG Setup for Practical Tests
The practical tests of the CMG were done on an air bearing table, which consists of a table
with a glass surface. The CMG with electronics are placed on an aluminium frame which
has three carbon nozzles and a small gas canister. The canister is filled with nitrogen to
a pressure of about 15 MPa. This is slowly released through the carbon nozzles, which
then lifts the frame from the glass surface, leaving it almost frictionless and very sensitive
to any disturbance. For this reason the glass surface has to be as level as possible and
dustfree. The aluminium frame with gas canister is shown in Figure C.1.
Figure C.1: Picture of aluminium frame with gas canister and nozzles
82
APPENDIX C - CMG SETUP FOR PRACTICAL TESTS 83
The air bearing table has a metal frame with 15 legs of which the height are seperately
adjustable. The legs can be extended or shortened by adjusting a nut. A cable is attached
to the frame next to each leg. This is used to pull the frame down and keep it in place
once the height of the table has been adjusted. A 35mm thick Superwood surface is placed
on top of the metal frame. This is covered by a layer of felt to protect the glass surface.
The glass surface is then placed on top of the felt. A picture of the table is shown in
Figure C.2.
Figure C.2: Picture of the table with glass surface
A miniature fibre optic rate sensor [11] was used in the CMG setup to measure the
angular rotation of the CMG system. The sensor transmits an angle increment to the
microcontroller each time it receives a trigger pulse. One angle increment has a resolution
of 0.00024414 degrees. The angle increment is transmitted as RS422 by the sensor and has
to be converted to RS232 before the microcontroller can receive the data. The measured
data is then transmitted from the microcontroller to a PC via an RF link to minimize the
external disturbances.
A 12V battery was used to provide power to the BLDC motor and RF link. An LM317
adjustable regulator was used to adjust the 12V supply to 5V for the rate sensor, stepper
motor and all the electronics. A diagram of the setup is shown in Figure C.3 and a picture
in Figure C.4.
APPENDIX C - CMG SETUP FOR PRACTICAL TESTS 84
Stepper
MotorRate
Gyro
RF Link
BLDC
Motor
12V
Power
Supply
CMG
Electronics
PC
RF Link
Figure C.3: Diagram of the CMG setup
Figure C.4: Picture of the CMG setup
Appendix D
CMG Interface Program
The program, CMGprobe, is used as interface between the user and the Control Moment
Gyro. The CMG is fully controllable from this program and has functions such as load
and save. A picture of the control panel is shown in Figure D.1. The control panel consists
mainly of the following four parts: stepper motor control, BLDCM control, data sampling
and data display.
D.1 Stepper Motor Control
The stepper motor control panel is used to control the gimbal maneuvers. The rotation
angle of the gimbal is controlled by the Gimble Rotation window. A maximum angle
increment of 90 degrees is allowed to protect the gimbal. The gimbal rate can be modified
in the Steps/Sec window. A minimum of 10 steps/sec and a maximum of 500 steps/sec is
allowed. The direction of the gimbal rotation is set by the Clockwise bit. The Mirror bit
is used when the gimbal needs to rotate by an angle increment and back. This process
repeats until it is stopped. When the gimbal needs to rotate by a certain amount of
stepper motor steps, the Steps window is used. The total angle deviation of the gimbal
is displayed in the Gimbal Angle window.
The definition of the buttons are as follows:
• Start - When the Start button is pressed, the gimbal will rotate by the angle specified
in the Gimbal Rotation window at a rate of Steps/Sec and in the direction selected
by the Clockwise bit.
• Stop - The Stop button will immediately stop the gimbal.
• Step - Pressing the Step button will cause the gimbal to step the amount of steps
85
APPENDIX D - CMG INTERFACE PROGRAM 86
specified in the Steps window at a rate of Steps/Sec in the selected direction.
• Go to Zero - This button cause the gimbal to rotate back to the zero degree gimbal
angle position.
• Zero Angle - This button resets the Gimbal Angle to zero.
• Start Sending - When this button is pressed, gimbal excursion angles are read in
from the file specified in the window. This is used to implement a ’Moving Demand’.
Each 100 ms the new excursion angle will be sent to the microcontroller and the
needed gimbal rate is calculated from the difference between two following angles
excursions.
D.2 BLDCM Control
The speed of the BLDC motor is controlled with the BLDCM Control panel. The current
loop of the BLDCM control can be accessed directly from this panel for current control.
A definition of the buttons are given below:
• Output Current Dem - The current loop command is directly controllable with this
button. The input range is from -4095 to 4095 where a negative value means rotation
in the anti-clockwise direction.
• Switch RW On/Off - Power to the momentum wheel is switched on and off, de-
pending on the RW On bit.
• Send Wheel Speed - A new speed command for the momentum wheel is sent when
the Send Wheel Speed button is pressed. The speed range for the momentum wheel
is -5000 to 5000 rpm with an accuracy of 0.6 rpm.
• Send Controller Gains - The controller gains of the speed loop can be changed by
sending new gain values. The default values are: K1 = 91 and K2 = 74.
D.3 Data Sampling
The telemetry received from the microcontroller can be sampled and stored in a file. This
is done by entering the path in the Files Directory window and a name for the file in the
File Name window. When the Start Sampling button is pressed, the telemetry received
will be written to the specified file. Sampling will stop when the Stop Sampling button
is pressed.
APPENDIX D - CMG INTERFACE PROGRAM 87
D.4 Data Display
The received telemetry is displayed in the Data Received window. It includes the mo-
mentum wheel speed, gimbal angle excursion, package number and the gyro angle. The
correct comport for the serial link can also be set on this panel.
APPENDIX D - CMG INTERFACE PROGRAM 88
Figure D.1: Picture of the CMGprobe control panel
Appendix E
Matlab Simulation Design and
S-function Code
89
APPENDIX E - MATLAB SIMULATION DESIGN AND S-FUNTION CODE 90
Uc
Pitch
Roll
Yaw
wheel speed
gim
b a
ngle
Torq
ue c
om
m
CM
G H
_H
do
t
Eu
ler
An
gle
s
Qu
ate
rnio
ns
W_
Sa
t
Sate
llite
Contr
olD
erivation
S-F
unction
Co
mm
an
d T
orq
ue
W_
Sa
t
CM
G d
ata
Gim
b r
ate
s
Req g
imb r
ate
s
Req G
imb r
ate
-K-
R2D
8
-K-
R2D
2
-K-
R2D
1Q
uate
rnio
ns
Quate
rnio
n d
em
and
Pa
ram
ete
rs
Input P
ara
mete
rs
In1
gim
b
wh
ee
l sp
ee
d
Gim
b a
ngle
s
Eule
r A
ngle
s
em
Qu
ate
rnio
ns
Qu
ate
rn c
om
m
W_
sa
t
Co
mm
an
d T
orq
ue
Contr
ol B
lock
Body R
ate
dem
and
3se
t G
imb
ra
tes
H_
Hd
ot
To
tal
da
ta
3 S
ets
of V
SC
MG
s
Figure E.1: Picture of Matlab Simulation
APPENDIX E - MATLAB SIMULATION DESIGN AND S-FUNTION CODE 91
function [sys,x0,str,ts] = ControlDerivation(t,x,u,flag)
switch flag, case 0, [sys,x0,str,ts]=mdlInitializeSizes; case 3, sys=mdlOutputs(t,x,u); case 1, 2, 4, 9, % Unused flags sys=[]; otherwise error(['Unhandled flag = ',num2str(flag)]);end% end sfuntmpl
%=========================================================================% mdlInitializeSizes% Return sizes, initial conditions, and sample times for the S-function.%=========================================================================%function [sys,x0,str,ts]=mdlInitializeSizessizes = simsizes;sizes.NumContStates = 0;sizes.NumDiscStates = 0;sizes.NumOutputs = 7;sizes.NumInputs = 9;sizes.DirFeedthrough = 1;sizes.NumSampleTimes = 1; % at least one sample time is needed
sys = simsizes(sizes);x0 = [];str = [];ts = [0 0];% end mdlInitializeSizes
%=========================================================================% mdlOutputs% Return the block outputs.%=========================================================================function sys=mdlOutputs(t,x,u)
%Constantsas1 = 0.005; % Torque/Is =versnelling (0.1/20)= 0.005as2 = as1;as3 = as1;as4 = as1;deltaT12 = 5; % Setttling time after slew 1 (seconds)deltaT34 = deltaT12;
%Inputtmid = u(1);ps2 = u(2)*pi/180;wimage = [u(3) u(4) u(5)]'*pi/180;qmid = [u(6) u(7) u(8) u(9)]';
%Derivations%Slew2size_w = sqrt(wimage(1)^2+wimage(2)^2+wimage(3)^2);n_slew2 = wimage/size_w; %Eq5-1qs1s2 = [n_slew2(1)*sin(ps2/2) n_slew2(2)*sin(ps2/2) n_slew2(3)*sin(ps2/2) cos(ps2/2)]'; %Eq5-2qs1 = [qs1s2(4) -qs1s2(3) qs1s2(2) -qs1s2(1); qs1s2(3) qs1s2(4) -qs1s2(1)
APPENDIX E - MATLAB SIMULATION DESIGN AND S-FUNTION CODE 92
-qs1s2(2); -qs1s2(2) qs1s2(1) qs1s2(4) -qs1s2(3); qs1s2(1) qs1s2(2) qs1s2(3) qs1s2(4)] * qmid; %Eq5-3Dts2 = ps2/size_w + 0.5*size_w/as2; %Eq5-4ts2start = tmid-Dts2; %Eq5-5%Slew1ps1 = 2*acos(qs1(4)); %Eq5-11n_slew1 = [qs1(1) qs1(2) qs1(3)]'/sin(ps1/2); %Eq5-12Dts1 = 2*sqrt(ps1/as1); %Eq5-13ts1start = tmid - Dts2 - deltaT12 - Dts1; %Eq5-14%Slew3Dtpostmid = 0.5*ps2/size_w; %choose postmid half the distance of slew2Dts3 = Dtpostmid + size_w/as3; %Eq5-19ps3 = size_w*(Dtpostmid + size_w/as3) -0.5*size_w^2/as3; %Eq5-20%Slew4ts4start = tmid + Dts3 + deltaT34; %Eq5-26 ts3start = tmidqs2s3 = [n_slew2(1)*sin(ps3/2) n_slew2(2)*sin(ps3/2) n_slew2(3)*sin(ps3/2) cos(ps3/2)]'; %Eq5-27qs3 = [qs2s3(4) qs2s3(3) -qs2s3(2) qs2s3(1); -qs2s3(3) qs2s3(4) qs2s3(1) qs2s3(2); qs2s3(2) -qs2s3(1) qs2s3(4) qs2s3(3); -qs2s3(1) -qs2s3(2) -qs2s3(3) qs2s3(4)]*qmid; %Eq5-28ps4 = 2*acos(qs3(4)); %Eq5-29n_slew4 = -[qs3(1) qs3(2) qs3(3)]'/sin(ps4/2); %Eq5-30Dts4 = 2*sqrt(ps4/as4); %Eq5-31
if ((t >= ts1start) && (t < ts2start)) %Slew1 if (t < (ts1start + 0.5*Dts1)) Ps1t = 0.5*as1*(t - ts1start)^2; %Eq5-15 Pds1t = as1*(t - ts1start); %Eq5-16 elseif ((t >= (ts1start + 0.5*Dts1)) && (t < ts1start + Dts1)) Ps1t = 2*sqrt(ps1*as1)*(t - ts1start) - 0.5*as1*(t - ts1start)^2 -ps1; %Eq5-15 Pds1t = 0.5*as1*Dts1 - as1*(t - ts1start - 0.5*Dts1); %Eq5-16 elseif (t >= ts1start + Dts1) Ps1t = ps1; %Eq5-15 Pds1t = 0; %Eq-16 end; qDt = [n_slew1(1)*sin(Ps1t/2) n_slew1(2)*sin(Ps1t/2) n_slew1(3)*sin(Ps1t/2) cos(Ps1t/2)]'; %Eq5-17 wDt = Pds1t*n_slew1; %Eq5-18
elseif ((t >= ts2start) && (t < tmid)) %Slew2 if (t < (ts2start + size_w/as2)) Ps2t = 0.5*as2*(t - ts2start)^2; %Eq5-6 Pds2t = as2*(t - ts2start); %Eq5-7 else Ps2t = size_w*(t - ts2start - 0.5*size_w/as2); %Eq5-6 Pds2t = size_w; %Eq5-7 end qslew2t = [n_slew2(1)*sin(Ps2t/2) n_slew2(2)*sin(Ps2t/2) n_slew2(3)*sin(Ps2t/2) cos(Ps2t/2)]'; %Eq5-8 qDt = [qslew2t(4) qslew2t(3) -qslew2t(2) qslew2t(1); -qslew2t(3) qslew2t(4) slew2t(1) qslew2t(2); qslew2t(2) -qslew2t(1) qslew2t(4) qslew2t(3); -qslew2t(1) -qslew2t(2) -qslew2t(3) qslew2t(4)] * qs1; %Eq5-9 wDt = Pds2t*n_slew2; %Eq5-10
elseif ((t >= tmid) && (t < ts4start)) %Slew3 if (t < (tmid + Dtpostmid)) Ps3t = size_w*(t - tmid); %Eq5-21 Pds3t = size_w; %Eq5-22
APPENDIX E - MATLAB SIMULATION DESIGN AND S-FUNTION CODE 93
elseif ((t >= (tmid + Dtpostmid)) && (t < (tmid + Dts3))) Ps3t = size_w*(t - tmid) -0.5*as3*(t - tmid -Dtpostmid)^2; %Eq5-21 Pds3t = size_w - as3*(t - tmid -Dtpostmid); %Eq5-22 elseif (t > (tmid + Dts3)) Ps3t = ps3; %Eq5-21 Pds3t = 0; %Eq5-22 end qslew3t = [n_slew2(1)*sin(Ps3t/2) n_slew2(2)*sin(Ps3t/2) n_slew2(3)*sin(Ps3t/2) cos(Ps3t/2)]'; %Eq5-23 qDt = [qslew3t(4) qslew3t(3) -qslew3t(2) qslew3t(1); -qslew3t(3) qslew3t(4) qslew3t(1) qslew3t(2); qslew3t(2) -qslew3t(1) qslew3t(4) qslew3t(3); -qslew3t(1) -qslew3t(2) -qslew3t(3) qslew3t(4)] * qmid; %Eq5-24 wDt = Pds3t*n_slew2; %Eq5-25
elseif (t >= ts4start) %Slew4 if (t < (ts4start + 0.5*Dts4)) Ps4t = 0.5*as4*(t - ts4start)^2; %Eq5-32 Pds4t = as4*(t - ts4start); %Eq5-33 elseif ((t >= (ts4start + 0.5*Dts4)) && (t < (ts4start + Dts4))) Ps4t = 2*sqrt(ps4*as4)*(t - ts4start) - 0.5*as4*(t - ts4start)^2 -ps4; %Eq5-32 Pds4t = 0.5*as4*Dts4 - as4*(t - ts4start - 0.5*Dts4); %Eq5-33 elseif (t > (ts4start + Dts4)) Ps4t = ps4; %Eq5-32 Pds4t = 0; %Eq5-33 end qslew4t = [n_slew4(1)*sin(Ps4t/2) n_slew4(2)*sin(Ps4t/2) n_slew4(3)*sin(Ps4t/2) cos(Ps4t/2)]'; %Eq5-34 qDt = [qslew4t(4) qslew4t(3) -qslew4t(2) qslew4t(1); -qslew4t(3) qslew4t(4) qslew4t(1) qslew4t(2); qslew4t(2) -qslew4t(1) qslew4t(4) qslew4t(3); -qslew4t(1) -qslew4t(2) -qslew4t(3) qslew4t(4)] * qs3; %Eq5-35 wDt = Pds4t*n_slew4; %Eq5-36
else qDt = [0 0 0 1]'; wDt = [0 0 0]';end
sys(1) = qDt(1);sys(2) = qDt(2);sys(3) = qDt(3);sys(4) = qDt(4);sys(5) = wDt(1);sys(6) = wDt(2);sys(7) = wDt(3);% end mdlOutputs
Appendix F
RF Link
The RF link consist of TX2 and RX2 data link modules which are miniature UHF FM
radio transmitters and receivers. The modules are designed by Radiometrix and the
product numbers are TX2-433-40-5V (transmitter module) and RX2-433-40-5V (receiver
module).
TX2 Transmitter
The TX2 transmitter module is a two stage, SAW controlled FM transmitter operating
between 2V and 6V and is available in 433.92 MHz. The TX2 module delivers nominally
+9dBm from a 5V supply at 12mA. The module measures 32 x 12 x 3.8 mm. Figure F.1
displays the circuit diagram of the transmitter module.
TXD
Vcc
1 2 3 4 5
100 nF 1k
15k
VP0106
Switch
RadiometrixTX2 UHF Transmitter
Antenna
Figure F.1: TX2 Circuit
The TXD input will accept serial digital data (0V to 5V) at a maximum rate of 40 kbps.
The Switch input turns the transmitter off when in a high level state (5V) and turns the
transmitter on when in a low level state (0V). A helix antenna is used as described below.
The supply voltage, Vcc, is 5V and should have a voltage ripple of less than 0.1Vp-p.
94
APPENDIX F - RF LINK 95
RX2 Receiver
The RX2 receiver module is a double conversion FM superhet receiver capable of handling
data rates of up to 40kbps. The SIL style RX2 receiver measures 48 x 17.5 x 4.5 mm. It
will operate from a supply of 3V to 6V and draws 14mA when receiving. It has a fast-
acting carrier detect and a power-up enable time of less than 1ms. This allows effective
duty cycle power saving and a -107 dBm sensitivity. The circuit diagram of the receiver
module is shown in Figure F.2.
RXD
Vcc
1 2 3 4 5
47k
2N3906
RadiometrixRX2 UHF Receiver
6 7
NAND Gates
Antenna
Figure F.2: RX2 Circuit
A helix antenna is used as described below. The Carrier Detect (pin 3) drives an ex-
ternal PNP transistor to obtain a logic level carrier detect signal. This signal and the
digital data output signal (pin 7) is fed to a quad 2-input NAND schmitt trigger package
(CD74HCT132) to obtain the RXD output signal. This RXD signal is always in a high
level state (5V) when the Carrier Detect is in a low level state. Thus will data only be
received when a carrier cygnal is detected.
Voltage Regulator Design
An LM317 3-terminal adjustable regulator is used to give a constant voltage of 5V to the
Radiometrix modules. A few features of the LM317 are:
• Guaranteed 1% output voltage tolerance.
• Guaranteed maximum 0.01%/V line regulation.
• 80 dB ripple rejection.
The LM317 circuit is shown in Figure F.3. Tantalum capacitors are used for the 10 µF
capacitors. The input voltage to the regulator can vary between 7V and 15V. If it is more
APPENDIX F - RF LINK 96
ADJ
Vin V0
V (7-15V)in
1 uF
82010 uF
27010 uF
Vcc (5V)
LM317T
Figure F.3: Voltage Regulator Circuit
than 15V, a heatsink will be needed.
Antenna Design
A Helical antenna is used with the following parameters:
• 0.5 mm enameled copper wire.
• close wound on 3.2 mm diameter former.
• 433 MHz = 24 turns.
RF Link Unit
The RF link consists of two units; one unit at the PC side and one unit in the CMG
system. Each unit has a receiver module, transmitter module and a voltage regulator. A
picture of the unit is shown in Figure F.4. When data is not transmitted, the Switch input
should be in a high level state to ensure that the transmitter is off. Since the receiver
module is next to the transmitter, all the data transmitted will be received by the receiver
on the same module. For this reason it is convenient to make use of package ID’s.
The receiver module has a data slicer which uses the average received cygnal to determine
if the input is high or low. If the received cygnal is low or high for a too long period, the
average will hit the rail of the data slicer and then the data received will be incorrect.
To overcome this problem, every second byte which is transmitted should be the inverse
of the previous byte. The average voltage will then stay in the middle. Each time the
transmitter is switched on, the byte 10101010 should be sent repeatedly for the first 5 ms
to ensure the average of the data slicer is in the region of 2.5V.
APPENDIX F - RF LINK 97
Figure F.4: Picture of the RF Link Unit
Appendix G
Datasheets
G.1 Brushless DC Motor
G.2 Stepper Motor
G.3 Stepper Motor Gearhead
G.4 Stepper Motor Controller
98
APPENDIX G - DATASHEETS 99
1234
56789
10111213
1415161718
1920
21
2223
24
252627
282930
UNRP2 max.
max.
noIoMHCoCv
knkEkMkI
n/ ML
mJ
max.
Rth 1 / Rth 2
w1 / w2
=
ne max.
Me max.
Ie max.
Volt
W%
rpmAmNmmNmmNm/rpm
rpm/VmV/rpmmNm/AA/mNm
rpm/mNmµHmsgcm2
.103rad/s2
K/Ws
°C
NNN
mmmm
g
rpmmNmA
3056 ... B
21,5 mNm
12 24 36 481,6 7,0 13,7 24,548 49 49 4973 73 74 74
8 790 8 200 8 840 8 7400,168 0,075 0,056 0,04295 93 99 1000,91 0,91 0,91 0,911,4 .10-4 1,4 .10-4 1,4 .10-4 1,4 .10-4
750 350 251 1861,334 2,861 3,981 5,37412,74 27,32 38,02 51,320,078 0,037 0,026 0,019
94 90 91 89160 720 1 400 2 52013 13 13 1213,6 13,6 13,6 13,670 68 73 73
3,3 / 9,419 / 1 034
– 30 ... +125
72 / 5118 / 1262
0,0150
190
28 000 28 000 28 000 28 00020,7 21,4 21,2 21,51,94 0,93 0,66 0,50
3056 K 012 B 024 B 036 B 048 B
5,0 10,0 25,020,015,0
5 000
10 000
15 000
20 000
25 000
30 000
M UmNmI
n UrpmI
ne max. = 28 000 rpm
n = 22 000 rpm
Me max. = 21,5 mNm
00
49 Watt
30/1, 38/1, 38/2
5500, 5540
Series
Brushless DC-ServomotorsElectronic Commutation
Nominal voltageTerminal resistance, phase-phaseOutput power 1)
Efficiency
No-load speedNo-load current (with shaft ø 4,0 mm)Stall torqueFriction torque, staticFriction torque, dynamic
Speed constantBack-EMF constantTorque constantCurrent constant
Slope of n-M curveTerminal inductance, phase-phaseMechanical time constantRotor inertiaAngular acceleration
Thermal resistanceThermal time constant
Operating temperature range
Shaft bearingsShaft load max.:– radial at 3000/20000 rpm (7,4 mm from mounting flange)– axial at 3000/20000 rpm (axial push-on only)– axial at standstill (axial push-on only)Shaft play:– radial– axial
Housing materialWeightDirection of rotation
Speed up to 2)
Torque up to 1) 2)
Current up to 1) 2)
1) at 22 000 rpm2) thermal resistance Rth 2 by 55% reduced
ball bearings, preloaded
aluminium, black anodized
electronically reversible
Recommended values
Recommended area for continuous operation
For combination withGearheads:
Encoders:
Drive Electronics:refer to “Combination Chart”, pages 14-15
APPENDIX G - DATASHEETS 100
3056 K ... B
3056 K ... B - K312
N
S
AABBCC+5VGND
ø30 ±0,1 ø13 -0,005 0
A
ø4+0,003-0,002
ø0,050,02
19
45
M2 5
12,6max.15
1,4
14
56
±0,3
±0,3
4x90
5
A
7
M1,6
3x120
20,9
3ø4
+0,003-0,002
9,6 57,8±0,3
K1000:
K1155:
Cable and connection information
Function ColourHall sensor greenPhase brownHall sensor bluePhase orangeHall sensor greyPhase yellowLogical supply redLogical black Coil winding 3 x 120°
Connection
with rear end shaft
deep
CableSingle wires, material PTFELength 300 mm ± 15 mm3 conductors, AWG 205 conductors, AWG 26
deep
Options
Motors in autoclavable version.
Motors for operationwith Motion Controller MCBL 2805.
APPENDIX G - DATASHEETS 101
AM 1524V 3 V 6 V 12 V 24 A 0,25
7
4x M1,6 x 1,5
60° 60°
ø10
ø14,5 ø15 ø1,5
ø6
7,5
1
16,5
2,54
4 BA
1
4x ø0,780°
2,54
108,5
10
1 AB
4
±0,0
5
-0,070
-0,020
-0,008-0,004
1,2
ø14,5
16,5
ø6-0,020
4,3
1 2,4
DIN 58400
x=+0,35Z=9 m=0,2
ø2,38 -0,0150
ø6 -0,020
8,1
1
DIN 58400Z=21 m=0,2
ø4,64 -0,08-0,04
ø13-0,030
5,15
1,75
DIN 58400
x=+0,0496Z=15 m=0,3
ø5,248 -0,113-0,078
±0,15,15
1,75
DIN 58400
x=+0,2156Z=9 m=0,3
ø3,587-0,113-0,078
±0,1
ø13-0,030
(mNm)
0
1
3
10000
0,1
0,2
(W)
(Step/s)400(rpm)
2
0,3
2000800
30001200
40001600
0,5
1
1,5
(mNm)
0
1
3
5000 100000
(W)
(Step/s)2000 4000(rpm)15000
6000
2
200008000
1 2 3 4Phase A + – – +
Phase B + + – –
CWCCW
1 3 6 12 24 V DC2 10 35 150 590 12,5 Ω3 4,25 15 65 239 5,5 mH4 0,28 0,15 0,075 0,037 0,25 A5 3,1 6 12 24 3,56 6 mNm7 10 mNm8 0,9 mNm9 37 °C/W
10 130 °C11 –40 ... +70 °C12 220 s13 1514 ± 1015 45 ·10-9 kgm2
1617
0,5 6,0 N0,5 3,0 N
1815 12 µm150 ~0 µm
19 12 g20 200 V21 120 Hz22 0,4 ms
Series
Front face view
Mechanical Power (W)
Torque Start/Stop (mNm)
Torque Slew rate (mNm)
Voltage mode (V) Current mode (A)PowerTorquePowerTorque
Torque/Speed curves measured with a load inertia of 10 ·10-9 kgm2
Speed Speed
Stepper MotorsTwo phases, 24 steps per revolution For combination with:
Gearheads: 15A, 15/5, 15/8, 16A, 16/7Encoders: AE 23B8Drive Electronics: AD VL M, AD VM M, AD CM M
Front shaft Solder tag PCB
Round PCB
AM 15242. Rear shaft
Pignon Afor Gearheads15A
for Gearhead16/7
for Gearheads15/5, 15/8, 16A
Pignon Bfor Gearheads15A
CWCCW
A+ –1 2
B
+
–
3
4
Front face view
Rotor
Voltage mode Current modeNominal voltage UN
Phase resistance (at 20°C)Phase inductance (1kHz)Nominal current per phase (both phases ON)Back-EMF amplitude V/k step/sHolding torque 1) (at nominal current in both phases)Holding torque 1) (at twice the nominal current)Residual and friction torqueThermal resistance winding-ambient airWinding temperature tolerated, max.Ambient temperature rangeThermal time constantStep angle (full step) degreeAngular accuracy 2) % of full stepRotor inertiaShaft bearings sintered bronze sleeves ball bearings, preloadedShaft load, max.: (standard) (optional)– radial (3 mm from bearing)– axialShaft play, max.:– radial (0,2N)– axial (0,2N)WeightIsolation test voltageResonance frequencyElectrical time constant
1) with bipolar driver2) 2 phases ON, balanced phase current
APPENDIX G - DATASHEETS 102
AM 1524L2 L1 M max. M max.
g mm mm mNm mNm %22 :1 21 29,9 33,8 60 150 ≠ 6141 :1 21 29,9 33,8 60 150 ≠ 6176 :1 24 32,0 35,9 100 300 = 51
141 :1 24 32,0 35,9 100 150 = 51262 :1 26 34,1 38,0 100 300 ≠ 43485 :1 26 34,1 38,0 100 150 ≠ 43900 :1 28 36,2 40,1 100 300 = 37
1 670 :1 28 36,2 40,1 100 150 = 37
15/8
0,1 Nm
15/8
15/8
5000 rpm0°
≤ 25 N≤ 5 N 2)
≤ 5 N 2)
≤ 0,02 mm= 0 mm 2)
– 30 … + 100 °C
L1
ø15
2
ø16
10,92
M2
2-56UNC
ø14,5 ø16
2,8
ø7
ø3
6,7 4,3
11,9
12,7
14,2
1,5
L2
2x
2x
-0,1 -0,043-0,016
-0,02 0
-0,015 0
-0,012-0,006
±0,2
±0,3
±0,3
±0,3
±0,3
±0,3
±0,5
+0,2(1524)3
3
Series
Spur GearheadsFor combination with:Stepper motor: AM 1524
Housing material metalGeartrain material all steelRecommended max. input speed for:– continuous operationBacklash, (preloaded) 1)
Bearings on output shaft preloaded ball bearingsShaft load, max.:– radial (6,5 mm from mounting face)– axialShaft press fit force, max.Shaft play (on bearing output):– radial– axialOperating temperature range
reduction ratio(nominal)
weightwithoutmotor
withoutmotor
length output torqueefficiencydirection
of rotation(reversible)
continuousoperation
intermittentoperation
Specifications
Zero Backlash
Orientation with respect to motorterminal circuit board is not defined
deep
deep
1) These gearheads are available preloaded tozero backlash only with motors mounted.
2) Limited by the preloaded ball bearings.A higher axial load negates the preload.
withmotor
APPENDIX G - DATASHEETS 103
AD VL M
53,5
22*76,3
1
4
1
12
5214,2 14,2*
4x M2 x 5,3
ARSAPESwitzerland
10,1
5*
ACC
DEC
RUN
STOP
FMA
XFM
IN
48
12 (M1)
*(M2, M3)
0
500
1000
1 2 30
1500
4
2000
3 3 3 V DC14 14 14 V DC
14 16 16 mA400 400 400 mA
0 ... 0,6 0 ... 0,6 0 ... 0,6 V DC1,6 ... 14 1,6 ... 14 1,6 ... 14 V DC
– 10 10– 2 000 2 000
0 ... +70 0 ... +70 0 ... +70 °C22 30 34 g
VL M1 VL M2 VL M3Series
Drive ElectronicsLow Voltage For combination with:
Stepper motor: AM 0820, AM 1020, AM 1524
Motor connector
Commandconnector
GND
Power supply (V+)
Switch
+5V CC GND
DIRF/H
• AD VL M1 basic drive is composed of a translator (full step and half step mode)and a power stage which is in this case in voltage mode.
• AD VL M2 contains the basic drive AD VL M1 and a pulse generator delivering variableclock frequency.
• AD VL M3 contains the basic drive AD VL M1 and a pulse generator with generation of ramps.This circuit can provide a velocity profile to start and stop the stepper motorwith acceleration and deceleration ramps.
The drivers type AD VL M are designed todrive the two phase stepper motors type AM ...3 types of drivers are available:
Velocity profile example
* only valid for the AD VL M2 and AD VL M3
Power supply voltage:- min.- max.
Power supply currentOutput current, max. (for each phase)
Logic input level:- low- high
Direction of rotation CW / CCW CW / CCW CW / CCWStep mode full step / half step full step / half step full step / half step
Step frequency:- min. full step/s- max. full step/s
Operating temperature rangeWeight
General description / Features / Command connector functions
Scale reduced
OPO
Speed(rpm)
Time (s)
4x2,7 (only for M1)
1 I OPO > full step mode, one phase ON (wave)2 I F/H > half step mode; default or low logic level = full step mode, 2 phases ON3 I DIR > ccw ; default or low logic level = cw4 I CLK > external clock input, active on the positive edge of the clock pulse5 I RUN > starts the clock generator *6 I STOP > stops the clock generator *7 I Inhibit > disables the current in both coils of the motor8 O Busy > low level as long as the clock is active *9 – GND > ground potentional: 0 Volt
10 O VCC > +5V output11 – GND > ground potentional: 0 Volt12 I VCO > external voltage input (Voltage Controlled Oscillator) *
Pin I /O Function: active on high logic level