Sie sind auf Seite 1von 128

i

Attitude Determination and Control System for Nanosatellites

by

AMRIT SAGAR

to the DEPARTMENT OF MECHANICAL ENGINEERING

INDIAN INSTITUTE OF TECHNOLOGY KANPUR


May, 2010

ii

Attitude Determination and Control System for Nanosatellites


A Thesis Submitted in Partial Fulfilment of the Requirements for the Degree of

MASTER OF TECHNOLOGY

by

AMRIT SAGAR

to the DEPARTMENT OF MECHANICAL ENGINEERING

INDIAN INSTITUTE OF TECHNOLOGY KANPUR


May, 2010

ii

CERTIFICATE

iii

Statement of Thesis Preparation


1. Thesis title: Attitude Determination and Control System for Nanosatellites 2. Degree for which thesis is submitted: Master of Technology 3. The thesis guide was referred to for the thesis preparation 4. Specifications regarding thesis format have been closely followed 5. The contents of the thesis have been organized according to the guidelines 6. The thesis has been prepared without resorting to plagiarism 7. All sources used have been cited appropriately 8. The thesis has not been submitted elsewhere for a degree :Yes :Yes :Yes :Yes :Yes :Yes

(Signature of Student) Name: Amrit Sagar Roll no.: Y5827063 Department: Mechanical Engineering

iv

ABSTRACT
Attitude Determination and Control System (ADCS) is a key component of satellites and other spacecraft, and is used to estimate and control the orientation of the spacecraft in the zero gravity orbital environment. Nanosatellites are fast becoming a useful platform for the design, development, and testing of various new technologies in space. ADCS in nanosatellites are constrained by size and power considerations, but retain most of the requirements of large satellites. This thesis describes the design and development of the ADCS developed for the nanosatellite 'Jugnu'. A tri-axis magnetometer and extended Kalman filtering based ADCS system is designed and developed for Jugnu. The system involves reaction wheels and magnetorquers for actuation and keeps the satellite in a 3-axis stabilized state. It provides an estimation accuracy of 1 degree and a pointing accuracy of 3 degrees.

This thesis defines the role of the ADCS in Jugnu. The ADCS design and algorithms developed for attitude estimation and control in the various modes of operation are described. The hardware specifications and calibration processes are explained. A detailed literature survey is also presented to justify the selection of sensors and actuators.

Acknowledgement
I am extremely grateful to my mentor, Prof. N. S. Vyas for his guidance, constant support and encouragement. Under his mentorship, I got the opportunity to work in an enriching environment where I could explore my subject to the fullest while working in a team of highly competent individuals, and I am thankful for the same. I would like to thank Prof. S. G. Dhande for his motivational support. My various interactions with him have been very inspirational and I hold them dear. I extend my thanks to Prof. Hari B. Hablani and Prof. Sudhir Kamle for their patient and unending support throughout the duration of the project. I would like to thank all my friends and colleagues, specially Shantanu Agarwal, Anuj Sharma, Ruchira Chobisa, Shashank Chintalagiri, Sri Karun, Saket Saurav and Ravikant for their invaluable support. I also thank Ankesh, Ankush and especially Khsitij for helping me with the electronics hardware and the HIL simulations. Among my juniors, I would like to thank Parul, Mayank, Aryaman, Abhishekh, Vashistha and Anshul. I would also like to give my thanks to the lab staff that take care of all the minute details that go into making a conceptual project a reality. Above all, I am blessed with caring parents who have given me full freedom to explore whatever I wish and have always supported me in my decisions. I extend my deepest gratitude to my parents and my sister for their invaluable love, affection, encouragement and support.

vi

Table of Contents
CERTIFICATE STATEMENT OF THESIS PREPARATION ABSTRACT ACKNOWLEDGEMENT CHAPTER 1 INTRODUCTION 1.1 1.2 1.3 1.4 1.5 THE JUGNU NANOSATELLITE SYSTEM SPECIFICATIONS ROLE OF THE ADCS IN JUGNU MODES OF OPERATION OF THE ADCS THESIS ORGANIZATION II III IV V 1 1 1 3 4 4 5 6 6 6
7 8 8 8 9

CHAPTER 2 LITERATURE REVIEW 2.1


2.1.1 2.1.2 2.1.3 2.1.4 2.1.5

SENSORS
Sun Sensor Star Tracker Horizon Sensor Gyroscopic sensor Magnetometer

2.2
2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7

ACTUATORS
Permanent Magnet Spin Stabilization Gravity Gradient Reaction Wheel Reaction Control System, RCS Torque Coils Torque Rods

12
13 13 13 13 14 14 14

CHAPTER 3 SATELLITE ORBIT AND OPERATIONAL MODES 3.1 3.2 3.3


3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7

16 16 16 20 23
23 23 23 23 24 24 24

REFERENCE FRAMES SATELLITES POSITION IN THE ORBIT OPERATIONAL MODES


Suspended Mode Detumbling Mode Attitude Acquire Mode Maneuvering Mode Stabilization Mode Momentum Dumping Mode Earth Pointing Mode

vii

CHAPTER 4 ATTITUDE ESTIMATION 4.1


4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9

26 26 26
27 28 30 32 34 35 39 40 41

ALGORITHM DESCRIPTION AND ANALYSIS


Singularity Elimination Derivation of the state equation Dynamic equations State Equation Linearization Relation between measurement vector and the state vector State vector propagation Flowchart Use Case diagram Simulation Results

CHAPTER 5 ATTITUDE CONTROL 5.1


5.1.1 5.1.2 5.1.3 5.1.4

48 48 48
48 50 51 52

DETUMBLING MODE
Algorithm Description and Analysis Flowchart Use Case diagram Simulation Results

5.2
5.2.1 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7

MANEUVERING MODE
Sun vector determination Algorithm description and analysis Implementation of four reaction wheels True state propagation Flowchart Use Case diagram Maneuvering Mode Results

55
55 56 63 66 68 69 70

5.3
5.3.1 5.3.2 5.3.3 5.3.4

PID STABILIZATION MODE


Algorithm description and analysis Flowchart Use Case diagram Simulation results

75
75 78 79 80

5.4
5.4.1 5.4.2 5.4.3 5.4.4

MOMENTUM DUMPING MODE


Algorithm description and analysis Flowchart Use Case diagram Simulation results

86
86 89 90 92

5.5
5.5.1 5.5.2

EARTH POINTING MODE


Algorithm description and analysis Simulation results

94
94 95

CHAPTER 6 HARDWARE SPECIFICATION 6.1 6.2


6.2.1

98 98 98 99
99

SENSOR ACTUATORS
Design and analysis of torque coils

viii

6.2.2

Reaction wheels arrangement

103

CHAPTER 7 CONCLUSION SCOPE OF FUTURE WORK APPENDIX A TWO LINE ELEMENT DESCRIPTION APPENDIX B QUATERNION KINEMATICS

104 104 105 108 108 110 110

ix

List of Figures
Figure 1.1 Figure 3.1 Figure 3.2 Figure 3.3 Figure 3.4 Figure 4.1 Figure 4.2 Figure 4.3 Figure 4.4 Figure 4.5 Figure 4.6 Figure 4.7 Figure 4.8 Figure 4.9 Figure 4.10 Figure 4.11 Figure 4.12 Figure 4.13 Figure 4.14 Figure 4.15 Figure 4.16 Figure 5.1 Figure 5.2 Figure 5.3 Figure 5.4 Figure 5.5 Figure 5.6 Figure 5.7 Figure 5.8 Figure 5.9 Figure 5.10 Figure 5.11 Figure 5.12 Figure 5.13 Figure 5.14 Figure 5.15 Figure 5.16 Figure 5.17 Figure 5.18 Figure 5.19 Figure 5.20 Jugnu subsystems block diagram ECI frame in the ecliptic plane and the equatorial plane Orbital parameters True anomaly, Eccentric anomaly and mean anomaly Satellites mode sequence Attitude estimation flowchart Attitude acquire mode use case diagram True and estimated quaternion ( ) w.r.t. inertial frame True and estimated quaternion ( ) w.r.t. inertial frame True and estimated quaternion ( ) w.r.t. inertial frame True and estimated quaternion ( ) w.r.t. inertial frame True and estimated angular rate of the satellite True and estimated disturbance torque Attitude quaternion estimation error and error boundary Angular rate estimation error and error boundary Disturbance torque estimation error and error boundary Innovation of Extended Kalman Filter Angular error between true and estimated attitude True and estimated magnetic field in the body frame Angular momentum of the satellite in the inertial frame Angular momentum of the satellite in the body frame Detumbling mode flowchart Detumbling mode use case diagram Angular rate of the satellite Magnitude of angular rate of the satellite Rate of change of magnetic field Magnitude of rate of change of magnetic field Required magnetic moment Sun vector in body frame Commanded angular rate profile for maneuvering Control law for the Maneuvering mode Maneuvering mode flowchart Maneuvering mode use case diagram Angular rate of the satellite Angle rotated by the satellite during maneuvering Actual and target quaternion during maneuvering Reaction wheel speeds during maneuvering Total control torque acting on the satellite Proportional torque acting on the satellite Derivative torque acting on the satellite Feed forward torque acting on the satellite 2 17 18 20 25 39 40 41 41 42 42 43 43 44 44 45 45 46 46 47 47 50 51 52 53 53 54 54 56 58 60 68 69 70 70 71 71 72 73 73 74

Figure 5.21 Figure 5.22 Figure 5.23 Figure 5.24 Figure 5.25 Figure 5.26 Figure 5.27 Figure 5.28 Figure 5.29 Figure 5.30 Figure 5.31 Figure 5.32 Figure 5.33 Figure 5.34 Figure 5.35 Figure 5.36 Figure 5.37 Figure 5.38 Figure 5.39 Figure 5.40 Figure 5.41 Figure 5.42 Figure 5.43 Figure 5.44 Figure 6.1 Figure 6.2 Figure 6.3

Gyric torque acting on the satellite Control law for the PID stabilization mode PID stabilization mode flowchart PID stabilization mode use case diagram Angular rate of the satellite Angle rotated by the satellite during PID stabilization mode Actual and target quaternion of the satellite Reaction wheel speeds during PID stabilization mode Total control torque acting on the satellite Proportional torque acting on the satellite Integral torque acting on the satellite Derivative torque acting on the satellite Gyric torque acting on the satellite Feed forward torque acting on the satellite Control law for the Momentum dumping mode Momentum dumping mode flowchart Momentum dumping mode use case diagram Reaction wheel speeds during Momentum dumping mode Required magnetic moment during Momentum dumping mode Magnetic torque acting on the satellite Attitude quaternion w.r.t. LVLH frame Angular rate of the satellite Reaction wheel speeds during Earth pointing mode Total control torque acting on the satellite HMR2300 digital Tri axis magnetometer PCB based torque coils Arrangement of four reaction wheels

74 76 78 79 80 81 81 82 82 83 83 84 84 85 88 89 90 92 93 93 95 96 96 97 98 102 103

xi

List of Tables
Table 1.1 Jugnu specifications...................................................................................... 3 Table 2.1 Sensor survey summary .............................................................................. 11 Table 2.2 Actuator survey summary ........................................................................... 15 Table 4.1 Use case diagram description for Attitude acquire mode ............................. 40 Table 5.1 Use case diagram description for Detumbling mode ................................... 51 Table 5.2 Use case diagram description for Maneuvering mode ................................. 69 Table 5.3 Use case diagram description for PID stabilization mode ............................ 79 Table 5.4 Use case diagram description for Momentum dumping mode ..................... 91 Table 6.1 Torque coil design specifications .......................................................... 102

xii

Nomenclature
Rate of change of magnetic field Magnetic field at ith instant Time interval between two consecutive magnetometer readings Magnetic moment vector Scale factor for getting required magnetic moment Current through the three torque coils Number of turns in the torque coil Area of the torque coils Maximum available current Angular rate Disturbance torque True attitude quaternion True ten element state vector for Extended Kalman filter Inertial tensor Measurement noise matrix True nine element state vector for Extended Kalman filter White noise for the state equation in attitude estimation Vector part of error quaternion Error quaternion Estimated quaternion Transformation matrix from ten element state vector to nine element state vector Estimated nine element state vector Estimated ten element state vector Nine element error state vector Error angular rate Error disturbance torque State dynamics matrix True angular momentum of the satellite

xiii

True control torque True known external disturbance torque True total external torque Estimated angular rate of the satellite
th

true magnetometer measurement


th

Measurement noise during


th th

measurement

estimated magnetometer measurement estimated measurement

Error in
th

Measurement sensitivity matrix magnetic field value in the inertial frame from IGRF model

Angular in one propagation step Quaternion propagation matrix State transition matrix Process noise matrix Kalman gain Error covariance matrix Sun vector in the ecliptic frame Suns angular position from vernal equinox Angular rate of earth around the sun Sun vector in the ECI frame Angle between ecliptic frame and ECI frame Sun vector in the body frame Body diagonal vector in the body frame Total commanded angle for maneuvering Commanded angle for maneuvering Axis of rotation for maneuvering Angular rate of the satellite during maneuvering Angular momentum of the satellite in the body frame Maximum controllable angular rate of the satellite Limiting coefficient of the wheel angular rate Maximum wheel angular momentum

xiv

Maximum controllable angular acceleration of the satellite Commanded angular acceleration of the satellite Limiting coefficient of the torque provided by each wheel Maximum torque capacity of the wheel Time for which satellite is accelerated during maneuvering Total time for maneuvering Commanded angular rate of the satellite Time for which angular acceleration is zero during maneuvering Commanded quaternion w. r. t. initial body quaternion Commanded quaternion w. r. t. inertial frame Initial body quaternion w. r. t. inertial frame Commanded angular rate vector in the commanded frame Commanded angular acceleration i the commanded frame Attitude quaternion of the body frame w. r. t. inertial frame Estimated attitude quaternion Error quaternion Rotation matrix corresponding to the error attitude quaternion Error in the angular rate Angular error Damping coefficient of the controller Reciprocal of the systems natural frequency Proportional gain Gyric torque acting on the satellite Feed forward torque Proportional torque Derivative torque Derivative gain Total control torque Spin angular momentum of the wheels in the body frame Rotor inertia of each reaction wheel Spin angular rate in the body frame of reference

xv

Spin angular rate in the wheel frame of reference Spin angular momentum in the wheel frame of reference Transformation matrix from the wheel frame to the body frame Transformation matrix from the body fame to the wheel frame Predicted wheel angular rates at Measured wheel angular rates at Actual control torque during Total PD control torque Total PID control torque Integral torque Integral gain Integral gain coefficient of the PID controller Orbital angular rate of the satellite Total external torque acting on the satellite Excess wheel angular momentum in the wheel frame Excess wheel angular momentum in the body frame Maximum magnetic moment capacity along each orthogonal axis Mean anomaly of the satellite in the orbit Initial mean anomaly of the satellite Eccentric anomaly of the orbit True anomaly of the satellite in the orbit Eccentricity of the orbit Ascending node angle Position vector of the satellite in the orbit frame Semi-major axis of the orbit of the satellite Position vector of the satellite in the ECI frame Position vector of the satellite in the ECEF frame Change in orbital angular rate of the satellite Unperturbed orbital angular rate of the satellite Zonal harmonic coefficient due to earths non spherical shape Mean radius of earth
th th th

instant instant

time step

xvi

Inclination of the orbit of the satellite with the equatorial plane Rate of change of ascending node angle Magnetic permeability Potential drop across the torque coil Total resistance of the torque coils and the driver circuit Torque coil resistance Resistance of the torque driver circuit Resistivity of the coil material Depth of the coil layer Abbreviations TAM PWM OBC PCB OBC1 OBC2 ADCS DC EI ECI ECEF RTN LVLH PD PID COTS TLE NORAD SGP4 LDR Tri Axis Magnetometer Pulse Width Modulation On Board Computer Printed Circuit Board On Board Computer 1 On Board Computer 2 Attitude Determination and Control System Direct Current Ecliptic Inertial Earth Centred Inertial Earth Centred Earth Fixed Radial Transverse Normal Local Vertical Local Horizontal Proportional Derivative Proportional Integral Derivative Commercial Off The Shelf Two Line Elements North American Aerospace Defence Command Simplified General Perturbation 4 Light Dependent Resistor

Chapter 1 Introduction
In the recent past, nanosatellites have opened new avenues of technology. This has given impetus to the growth of satellite technology in many countries. Academic institutions along with the corporate world are involved in collaborative research and development work. The main benefit of these low cost nanosatellites is that they serve as a test bed for latest miniaturized technologies. Typical nano/micro satellite applications include terrainmapping, weather tracking, disaster management, low gravity experiments, astronomical studies, global positioning and geological studies. They are also very useful in scientific research. They are extensively used in diverse experiments related to satellite communication, atmospheric studies, low gravity behaviour, measurement of the Earths magnetic field etc. Various missions are already under progress equipped with Spectrometers, Telescopes, Magnetometers designed by several universities and companies.

The Attitude Determination and Control System (ADCS) is a crucial subsystem of the nanosatellite as a majority of the aforementioned applications require estimation and control of the spacecraft attitude to some degree. Remote sensing applications, for example, require the imaging systems to be oriented towards the target area. The specific requirements from such a system depend heavily on the payload and its applications. In general, imaging payloads present the most stringent attitude control requirements.

1.1

The Jugnu Nanosatellite

Jugnu is an attempt at implementing miniaturized space technologies and creating opportunities for learning in the academic context. The Indian Space Research Organization (ISRO) has helped the team in meeting with the necessary requirements of the project. Jugnu should serve as a test bed for the next generation semiconductor

and other micro- and nano-technologies for space. It would also serve as a platform for exploring possibilities of cost-effective space missions. Jugnu is proposed to be placed in low-earth polar orbit at an altitude of about 700 km by ISROs Polar Satellite Launch Vehicle (PSLV). The Jugnu nanosatellite comprises of a number of subsystems. These subsystems can be divided into two groups. The first group consists of subsystems which make up the nanosatellite bus. The nanosatellite bus is a minimal system which provides a platform for the launch of various payloads. The hardware and software developed for the nanosatellite bus are designed to be flexible and reusable. The second group of subsystems are the payloads. These payloads are generally mission-specific. Some payloads may eventually be incorporated into the nanosatellite bus. The satellite design is mostly indigenous. Non-space grade, commercial-off-the-shelf (COTS) components are used to keep the cost low. Unlike conventional satellites which have a large number of redundant systems, Jugnu has minimal redundancies at the component level. Some redundancy is maintained at the functional level and efforts are made to achieve single point failure tolerant design for the satellite.

Figure 1.1

Jugnu subsystems block diagram

In a nanosatellite, there are very stringent specifications for the weight and size of the individual subsystems. Hence, the main technical challenge in nanosatellite

development is to design the subsystems fitting the specified dimensions without compromising on their performance. The design of Jugnu is compatible with the CubeSat standards proposed by California Polytechnic State University, San Luis Obispo and Stanford University's Space Systems Development Lab. This allows the use of COTS components with space heritage, and ensures continued compatibility of the hardware designed with international standards, for use in future missions. The satellite consists of various Printed Circuit Boards (PCBs). All the components are mounted on these PCBs in a manner that they are compatible with the 3U-Cubesat structure procured from Pumpkin Inc. The PCBs are stacked using stack-through connectors on them and are guided by four screws which run along the length of the structure.

1.2

System Specifications

Following is the detailed tabulation of the system specifications of Jugnu. Table 1.1
Orbit Sun Synchronous Polar Orbit, 500-850 Km < 3 Kg

Jugnu specifications
Data Storage Triple modular redundancy memory, SD card : 2 GB Mass : 3.5 Kg, Nominal ejection speed : 1.5 m/sec

Mass

Ejection System

Structure

10 cm x 10 cm x 34 cm

Power System

Li-ion batteries, Surface mounted Solar panels, Avg. power requirement: 3 Watts 3 axis stabilized, automatic mode switching, attitude estimation accuracy: 1 degree, 3 axis Magnetometer, 4 Reaction wheels, 3-axis Magnetorquers

Imaging (Payload)

Near IR range(770-860 nm), GSD - 200 m(approx.), Focal length35mm, F no.-4

Attitude Determination and Control System

GPS (Payload) IMU (Payload)

Position accuracy: 20 m , 12 channels, Patch antenna

Thermal Control System

Passive system- MLI, OSR, Thermal Grease, Surface Coatings Telemetry: 437.505 MHz, FSK, 9600 bps.

3 axis, ADXL Accelerometers, 3 axis rate

Communication

gyros, delta-sigma ADC

Uplink: 145.980 MHz, FSK, 1200 bps Beacon: 437.275 MHz, OOK

On Board Computer

(i)MSP 430(16 MHz) processor, 8 KB RAM and 128 KB Flash (ii) ARM 7 core (AT91SAM7x), 64 KB RAM, 512 KB flash

Ground Station

Yagi- Uda (Downlink and Uplink), fully autonomous tracking and control, GUI at control station.

1.3

Role of the ADCS in Jugnu

The design of the attitude determination and control system in Jugnu is based on attitude control requirements of the nanosatellite bus being developed as well as those of the individual payloads. The nanosatellite bus depends on ADCS for sun tracking in order to maintain system power levels and ground tracking for communication. In addition, the navigational system which is part of the ADCS is used for scheduling payload operations and other housekeeping activities by the on-board computer. The payloads which are part of the Jugnu nanosatellite are: 1. Near IR Imaging System 2. GPS Receiver 3. Inertial Measurement Unit The three payloads present different attitude control requirements from the ADCS. The Near-IR Imaging system has the most stringent requirements in the form of high pointing accuracy, and 3-axis stabilization.

1.4

Modes of operation of the ADCS

The attitude control system in Jugnu functions in various modes, depending on the requirements of the spacecraft at that time. These modes are controlled by the OnBoard Computer (OBC). The OBC is able to take action to ensure maintenance of satellite power levels, proper communication with ground station, and operation of payloads. The modes of operation of the ADCS are described in Chapter 3. The use of separate modes of operation allows flexibility in the operation of the satellite. This flexibility is used by autonomous algorithms in the OBC to enhance system reliability.

1.5

Thesis Organization

Chapter 2 of this thesis covers the literature survey portion of the current work. It briefly describes the different sensors and actuators available for ADCS. This chapter also includes the hardware selection matrices which help in deciding the sensors and actuators best suitable for the current nanosatellite project.

Chapter 3 gives the general description of a satellite orbit. It also has an overview of different operational modes of the satellite and their sequence; it includes a flowchart explaining the mode sequence followed by the onboard computer. Chapter 4 gives the details of the Extended Kalman filter used to estimate satellites attitude. It describes the state vector and the equations for propagating and updating it. It includes the flowchart explaining the algorithm and the use case diagram showing the dependencies on other hardware and modules of the satellite. The simulation results are presented at the end of the chapter. Chapter 5 covers all the control modes and algorithms used. It also includes the flowcharts, use case diagrams and simulation results. Chapter 6 covers the specifications of the sensors and actuators selected. It also gives the design details of the torque coils used and the relative arrangement of the four reaction wheels.

Chapter 7 concludes the work and gives the algorithm performances. It also gives the scope for future work in ADCS.

Appendices are given at the end of the thesis.

Chapter 2 Literature Review


The main functions of the subsystem are the estimation and control of the attitude of the satellite. Generally, attitude determination part is significantly complex, in the case of small satellites. This is mainly because of the limited number of sensors which will fit into the small form factor of nanosatellites. In this chapter, various sensors and actuators which are available for use have been presented. Advantages and disadvantages of each have also been mentioned.

2.1

Sensors

Most of the sensors presented here are reference sensors. These sensors measure a known vector in the satellites body frame of reference. This reference vector is already known in the inertial frame through different analytical models depending on which reference vector is in consideration. The objective is to find the rotation matrix of the body frame with respect to the inertial frame thus by describing satellites complete orientation in the inertial frame. However, it is not possible to get the complete rotation matrix with the help of only one reference vector. So, either multiple sensors are used or multiple measurements are taken from a single sensor to get the unique rotation matrix. The latter choice is time consuming but cheap. Hence, it can be thought of as an option in case of small satellites. The details of the algorithm and the use of Extended Kalman Filter to estimate the spacecraft attitude are explained in Chapter 4 of this thesis.

On the other hand, sensors like gyroscopes are not reference sensors. They measure the angular rate of the satellite which can be integrated over time to get the orientation with respect to some initial value. This means that some initial attitude must be known in order to estimate the spacecraft attitude. Besides, gyros also show some continuous drift in their measurements which causes errors to accumulate over time, making them unsuitable for long term attitude estimation use.

Following is a brief description of different kind of attitude sensors typically used in satellites.

2.1.1 Sun Sensor


Sun sensors are widely used in satellites for attitude determination, providing sun vector measurement in spacecraft coordinates. If a vector pointing towards the sun could be determined, this would aid the computing of the satellite attitude. As the detection target, the sun has large energy output which makes sensing very easy. A sun sensor in its simplest form is a photo diode on each side of the satellite which will tell which side is most likely to be towards the sun. Another possibility for determining a sun vector is utilizing measurements of the currents from the solar panels. A light dependent resistor (LDR) could be placed on a side for determining whether it is pointing towards the sun or not.

Analog Sun Sensor vs. Digital Sun Sensor The direction to the sun can be measured in two different ways, both of them relying on photocells. The first one, the analog sun sensor, measures the intensity of sunlight, and the second one, the digital sun sensor, uses a pattern where different photocells are exposed depending on the direction of the sun. Due to the measuring principles, there is a trade-off between the accuracy and the size of the FOV (field of view) for both sun sensors, i.e. either larger FOV but lower accuracy or higher accuracy but smaller FOV. Traditional sun sensors with large FOV always lack the accuracy to satisfy the requirement of high accuracy for satellite attitude determination subsystems. It is hard to realize both high accuracy and large FOV in one sensor. The major technical difficulty lies in that the resolution of the detector is limited, and the precondition for realizing high accuracy and large FOV in one sensor is that the detector must have enough pixels. The accuracy of a sun sensor also depends on its response to reflected radiation from the Earth. Earth radiation usually affects analog sun sensors to a greater degree.

Generally Digital Sun sensor gives better accuracy than analog sensors. Digital sun sensors are also more complex than analog sensor in construction. Digital sun sensors using photoelectric detectors like CCD (Charge Coupled Device) or APS (Active Pixel

Sensor) image sensors have an inherently higher accuracy. Currently, novel techniques are being developed that give high accuracy as well as larger FOV with photoelectric detector with fewer pixels. One such principle is optical vernier principle with which better than 0.02 in the entire FOV of 64 can be realized. Sun sensors available commercially, however, are either too large for their use in nanosatellites, or have a very narrow FOV. They also tend to be much more expensive than other options.

2.1.2 Star Tracker


The star tracker is by far the most accurate attitude determination system available, with accuracies down to a few thousands of a degree. The Charge Coupled Device (CCD) or the Active Pixel Sensors (APS) produces an image of the stars. This image is compared with an on board catalogue of the starry sky to determine the attitude. The star tracker is, however, so heavy and big, especially the baffle needed to shield the sensor from sun, earth, and moon shine, that it is infeasible for nanosatellites.

2.1.3 Horizon Sensor


The horizon sensor/scanner determines where the earth is relative to the spacecraft. This is usually done by measuring the IR radiation from the earth. Usually only two axes are determined, hence this sensor is best suited in combination with other sensors. Accurate horizon scanners are relatively expensive and large, and hence not suited for the nanosatellite applications.

2.1.4 Gyroscopic sensor


The gyroscope is not a reference sensor, but an inertial sensor. It measures angular acceleration, and these measurements must be integrated twice to obtain the attitude estimate. The integration leads to a drift which leads to the need for calibration. The gyroscope is more suited in conjunction with other sensors, or for measuring rapid changes in attitude. Gyro sensors will provide the angular acceleration of the satellite about all three axes and thus provide monitoring of its actuators. The traditional gimballed gyroscope is too big and heavy. A modern ring laser or piezo-electric gyroscope is smaller, but much more expensive. MEMS gyro sensors usually contain a silicon based vibration device and a custom designed integrated circuit for the capacitive sensor circuitry. These devices operate on the principle of detecting an

induced Coriolis acceleration on a proof mass that vibrates along a direction orthogonal to the axis about which the input rotation is applied. Hence, the rotation rate is estimated by measuring the displacement of the proof mass in a direction orthogonal to both the driven motion and the axis about which rotational motion is to be sensed. MEMS gyroscopes are yet to be adequately proven in space, and are therefore not used in the satellite bus. It may be used in future missions after Jugnus IMU is space proven.

2.1.5 Magnetometer
Magnetometers are simple, reliable and lightweight sensors carried on most spacecraft as part of the attitude control system. A magnetometer can only be used in orbit close to earth where the magnetic field is strong and well modelled. As Jugnu is to orbit at approximately 700km, a Low Earth Orbit (LEO), this is feasible. The magnetometer consists of three orthogonal sensor elements which measure the earths magnetic field in three axes in the sensor frame. If the magnetometer is aligned with the satellites axes, or the rotation matrix between the body and sensor frame is known, the magnetic field in the body frame is obtained. The combination of three sensor elements mounted on an orthogonal base make up a vector sensing system. A three axis magnetometer measures directly the direction and intensity of the local magnetic field expressed in the sensor frame. The attitude is determined from magnetometer by comparing the measured geomagnetic field with a reference field determined by a reference model.

Following is a brief summary of all the different kinds of magnetometers available in the market. 2.1.5.1 Induction Coil Magnetometer

The induction coil is one of the most widely used vector measurement tools, as well as one of the simplest. It is based on Faradays law, which states that a changing magnetic flux, , through the area enclosed by a loop of wire, causes a voltage e to be induced which is proportional to the rate of change of the flux. The magnetometer thus consists of one or more coils, and voltage measurements are used to calculate the magnetic field.

10

2.1.5.2

Fluxgate Magnetometer

A fluxgate magnetometer is popular for use in many applications. Characteristically, it is small, reliable, and does not require much power to operate. It is able to measure the vector components of a magnetic field in a 0.1 nT to 1 mT range. The fluxgate magnetometer is a transducer which converts a magnetic field into an electric voltage. Fluxgates are configured with windings through which a current is applied. If there is no component of the magnetic field along the axis of the winding, the flux change detected by the winding is zero. If there is a field component present, the flux in the core changes from a low level to a high level when the material goes from one saturation level to another. From Faradays law, a changing flux produces a voltage at the terminals of the winding proportional to the rate of change of the flux. 2.1.5.3 Magnetoresistive magnetometers

Although the fluxgate magnetometer gives the best performance with very low power consumption, the magnetoresistive magnetometers are smaller in size and therefore preferred. Honeywell (2003) produces an array of magnetoresistive magnetometers, three of which are presented below. i. The integrated circuit, magnetometer HMC 1001(1-axis)/1002(2-axis) They both measure only 1.9 cm x2.54 cm. Using these IC sensors will require additional interfacing and filtering hardware and software in the satellite, and to obtain 3-axes measurements of the magnetic field, at least two of them are necessary. When mounting these ICs on circuit boards above the spacecraft, close attention must be paid to get them perfectly perpendicularly aligned. If they are misaligned, the errors in measurement will make them unusable for attitude estimation. ii. The analog three-axis magnetometer HMC 2003 This is also a one-chip sensor with a 2.54x1.9cm footprint weighing only a few grams, and using approximately 0.2 watts, maximum. This device has three analog outputs giving full three-dimensional vector measurements of the magnetic field. The device is also equipped with the possibility of setting an offset on each of the three axes. This enables the possibility of measuring the magnetic field and applying a control torque simultaneously, as the magnetometer can be offset to compensate for the applied magnetic field. If

11

other on-board equipment produces well known magnetic field, this could also be compensated for. However, it is not likely that such fields are well known or modelled. The magnetometer requires an external degaussing circuit providing a high voltage peak to reset the magnetometer. iii. The digital smart magnetometer HMR 2300 The Honeywell HMR2300 is a three-axis smart digital magnetometer to detect the strength and direction of an incident magnetic field. Three of Honeywells magneto-resistive sensors are oriented in orthogonal directions to measure the X, Y and Z vector components of a magnetic field. These sensor outputs are converted to 16-bit digital values using an internal delta-sigma A/D converter. Onboard EEPROM stores the magnetometers configuration for persistent operation. The data output is serial full-duplex RS-232 or half-duplex RS-485 with 9600 or 19,200 data rates. The summary of all the sensors mentioned above is given in the following table. Table 2.1 No. 1 Component Name Digital Sun Sensor Sensor survey summary Features Reference sensor Sufficiently high accuracy Low Albedo error More complex in construction Reference sensor Low Accuracy High Albedo error Reference sensor Very High Accuracy Used for very fine pointing Large Size Reference sensor Large Size Reference sensor Can be used in LEO satellites due to the sufficiently high magnetic field at low altitudes IGRF model is generally used to predict the orientation

Analog Sun Sensor

Star Tracker

4 5

Horizon Sensor Magnetometer

12

Gyro sensor

Inertial sensor Gives angular acceleration about all three axis Acceleration integrated to get angular velocity and position MEMS gyro extremely small in size Used along with the reference sensors to get useful results

It is apparent from the above summary that for small satellites where orbit altitudes are generally low, magnetometer is a good choice. For university nanosatellites, weight and cost should be low and accuracy requirement is also not as high as those for high bandwidth communication and defense applications. Hence, HMR 2300 from Honeywell is chosen as the primary attitude sensor for the current work. The details of the sensor are discussed in a later chapter.

2.2

Actuators

Actuation is a critical part of the ADCS. A working and stable system needs to be developed to successfully complete our mission. The spacecraft is inherently unstable and is submitted to torques engendered by its interaction with the environment and by movement within the vehicle. Though the forces associated with these torques are not normally sufficiently large to affect the orbit of a space vehicle, the torques can affect the attitude of the spacecraft significantly. The torques of the environment (external) on a planet-centric satellite can originate from solar radiation pressure, magnetic and gravitational planetary fields, and free molecular forces (if the satellite is sufficiently close to a planetary atmosphere). The possibility of impacts produced by meteorites and particles of dust also exists. The torque that originates because of internal movements can be taken care of by displacement of the load and by the movements and actions of the occupants as well as by the ejection of propellants and other liquid. A variety of actuators can be used to stabilize the satellite in the orbit. Out of many kinds of actuators, few are available in the market and can be purchased where as some can be fabricated in the laboratory with minimal fabrication capability. Some of the typical actuators are described below.

13

2.2.1 Permanent Magnet


If a large permanent magnet is put in the spacecraft, this magnet will interact with the earths magnetic field in much the same way as a compass. The south pole of the magnet will be drawn towards the magnetic north pole of the earth, and vice versa. This will lead to a slight tumbling mode with two revolutions per orbit and no possibilities of controlling spin around the magnets axis. Without any other means of detumbling, this will also be very slow.

2.2.2 Spin Stabilization


If the satellite rotates around one axis, the gyroscopic effect of this will reduce the fluctuations on the other axes. The spin can be obtained in various ways. If the satellite is coloured differently on each side, the solar pressure will be greater on the lighter surfaces than on the darker ones. This however is a very slow method. Spinning could also be obtained by a thruster and maintained by magnetic torquers. Instead of spinning the entire satellite, a momentum wheel inside the satellite can do the same job.

2.2.3 Gravity Gradient


If a boom with a tip mass is deployed from the satellite, the innermost of the two masses will be in a lower orbit and pull on the outermost, preferably the satellite. The pull and the change in the satellites moment of inertia will stabilize the two axes perpendicular to the boom. The challenge, especially on a nanosatellite, is the construction and deployment of the boom. The boom should be stiff to avoid oscillation, but must be stored in a small compartment of the satellite during launch.

2.2.4 Reaction Wheel


Reaction wheels use the rotational variant of Newtons third law. If the action is accelerating a wheel inside the spacecraft, the spacecraft will accelerate just as much in the opposite direction. Three reaction wheels in an orthogonal configuration or four in a tetrahedron configuration for redundancy may be used for attitude control. Reaction wheels are the most accurate attitude control actuator for satellites.

14

2.2.5 Reaction Control System, RCS


A RCS utilizes Newtons third law which states that every action has an equal and contrary reaction. Some gas is propelled out of a nozzle and the satellite moves in opposite direction. If the nozzles are not pointed directly away from the center of inertia this will lead to rotational torques as well. The gas is stored in a tank on board the satellite. Thrusters are mounted in pairs to generate the momentum needed for control. The RCS is highly accurate, but is large and heavy, and will eventually have spent all the available gas, and will thus not perform for long without a very large tank. This makes it unsuitable for use in nanosatellites.

2.2.6 Torque Coils


The torque coil is simply a long copper wire, wound into a coil. The coils will produce a torque given as
(2.1)

where is the magnetic moment generated by a current flows through it. is the earths magnetic field in the body frame of reference number of coils with area when

2.2.7 Torque Rods


Alternatively, torque rods can be used. Torque rods operate on the same principle as torque coils, but instead of a big area coil the windings is spun around a piece of metal with very high permeability. Such materials are called ferromagnetic materials, and can have a relative permeability, , of up to 10^6. The relative permeability enters equation and the expression for the magnetic torque becomes
(2.2)

Hence, the current needed to produce the same torque is then much lower; however the weight increases drastically because of the metal core in the rods. Another inconvenience of the torque rods is that the ferromagnetic core has memory, and hysteresis is thus introduced in the control loop. Different ferromagnetic alloys have different hysteresis characteristics, and this, together with the permeability, must be taken into consideration in designing a magnetic torque rod.

15

Following table is a summary of actuators generally used in satellites. Table 2.2 No. 1 Component Name Permanent Magnet Actuator survey summary Features Interact with earths magnetic field to give control over attitude Slow Response Gives slight tumbling mode with 2 revolutions per orbit Stability due to gyroscopic affect Add complexities during imaging and communication Always small fraction of total solar panel area is in view of sun. Slow response One dimension is longer than other. Thus stabilizing force will be there. Difficulty to realize in small systems Very fine pointing Small size Fast control Limited life(decided by the mass of the propellant) Coarse pointing Small size Low efficiency IGRF model is generally used to predict the orientation High weight Contains metal core High efficiency One dimension generally longer than the other. If can be accommodated inside the satellite then it is best option IGRF model is generally used

Spin Stabilization

Gravity Boom

Gradient

4 5

Reaction Wheels Reaction System Torque Coils Control

Torque Rods

From the above summary it was decided to use two actuators; Torque coils and reaction wheels. The specifications of the actuators are presented in a later chapter.

16

Chapter 3 Satellite Orbit and Operational Modes


During most of the satellites operational modes, the position of the satellite in some reference frame is necessary. For example, during Attitude Acquire Mode, earths magnetic field is needed to be calculated using IGRF (International Geo-magnetic Reference Field) model which takes satellites position as an input. Depending on the position of the satellite in the orbit and the upcoming communication windows, different operational modes are selected by the OBC. So, we focus our attention to see how the satellites position is described in different reference frames and how that is relevant in different contexts. However, before explaining the s atellites orbit and its position in it, all the reference frames involving satellites position and attitude are described.

3.1

Reference frames

It is required find an inertial frame or pseudo inertial frame (which accelerates very slowly as compared to the dynamics of the satellite). We start our work with the assumption that the earth moves round the sun in a perfectly circular orbit (eccentricity is neglected).

We know that the line joining the South Pole and the North Pole of earth makes an angle of 66.5o with plane containing the orbit of earth around sun. As this line is perpendicular to the equatorial plane, the angle between this plane and the ecliptic plane (plane containing earths orbit around sun) becomes 23.5 o. Now, we have two planes; the ecliptic plane and the equatorial plane inclined an angle of 23.5 o with each other. These two planes intersect each other at a line which is common to both the planes. This line of intersection passes through suns centre on 21 st March, every year. On this day, the line joining from centre of earth to centre of sun (the line of intersection towards sun) is chosen as the X axis of an inertial frame with earths centre

17

as the origin. Lets call this frame as Ecliptic Inertial (EI) frame. Z axis of this frame is perpendicular to the solar plane in such a way that if one sees from positive Z axis towards negative Z axis, it would appear that earth is moving in an anticlockwise fashion around sun. Y axis direction can be found out using the right hand rule. Now that we have described the EI frame completely, it has to be noted that it is moving around sun in a circular (assumption) path and thus it is not a inertial frame strictly. But we assume it to be one as the dynamics related to the satellite are much slower than the orbital frequency of the earth around sun. Same is also true for the other inertial frame that we are going to discuss here.

The next frame is known as the ECI (Earth Centred Inertial) frame. This frame is very important because we describe the orbit a nd all its parameters in this frame. Satellites attitude is also described with respect to this frame only. This ECI frame is simply obtained by rotating the EI frame about its negative X axis by 23.5 o so that the XY plane of the ECI frame coincides with the equatorial plane and the positive Z axis passes through the North Pole. Earths equatorial plane is tipped 23.5o from the ecliptic plane

ZECI
Equatorial plane

Ecliptic plane

YECI

XECI
Figure 3.1 ECI frame in the ecliptic plane and the equatorial plane

18

Before describing the other reference frames involved, one needs to know about the orbital parameters needed to describe satellites orbit and its position in. There are six orbital parameters which describe satellites orbit and its position in the ECI frame. These parameters are known as Keplerian elements. As explained by Kepler satellites move in an elliptical path around earth with earth situated at one of the two foci of the ellipse. He gave his theory for the revolving planets around sun but this also holds good for satellites as the basic principle governing the motion is the central force of gravity varying in the inverse square fashion.

Figure 2.2

Orbital parameters

In the above figure, the reference direction is along X ECI direction. The six orbital parameters are as follows 1. Semi-major axis ( ) It is the semi-major axis of the ellipse in which satellite is revolving around earth. It is basically the distance between the centre of the ellipse and its perigee. 2. Longitude of Ascending Node ( ) It is the angle made by the line joining earths centre and the point at which satellite crosses the equatorial plane in an ascending manner from southern hemisphere to northern hemisphere with the positive X axis of the ECI frame.

19

3. Inclination ( ) It is the angle between the orbital plane and the equatorial plane (XY plane of the ECI frame). 4. Argument of Perigee / Periapasis ( ) It is the angle subtended by the perigee and the point of ascending node at the centre of earth. 5. True Anomaly ( ) It is the angle subtended by the satellite and the perigee at the centre of earth. 6. Eccentricity ( ) It is the eccentricity of the ellipse in which satellite revolves around earth. There are four more reference frames which are of our interest. One of them is the Orbit reference frame. ECI frame is first give a rotation of angle axis and then a rotation of angle about positive Z

about positive X axis of the new frame. Finally, the

XY plane of the generated frame coincides with the orbital plane. This frame is known as the Orbit reference frame.

The next frame is known as RTN (Radial Transverse Normal) frame. It is obtained by rotating the orbit frame by an angle about its positive Z axis. Next one is known as

the LVLH (Local Vertical Local Horizontal) frame. Its X axis coincides with Y axis of the RTN frame. Its Y axis is along the negative Z axis of the RTN frame. Z axis can be found out using right hand rule. The last reference frame of our interest is the Earth Centred Earth Fixed (ECEF) frame of reference. This frame moves with an angular rate equal to the angular rate of earth about its axis. X axis of this frame passes through the Greenwich Meridian and the Z axis coincides with the Z axis of the ECI frame.

Now, we need to get the position of the satellite in the orbit frame and get it transferred to ECI frame. Before that, one needs to understand few properties of an ellipse. In the following figure, is known as the true anomaly of the satellite and this gives directly

the angular position of the satellite from the perigee. This angle is measured at the focus (earths centre), not at the centre of the ellipse. Eccentric anomaly is the angle

between the line joining the centre of the ellipse and the point of perpendicular projection of the satellite on the auxiliary circle and the line of perigee. This angle is

20

measured at the centre of the ellipse as shown in the figure. Mean anomaly

as such

does not have any angular interpretation but as it varies linearly with respect to time, it is equivalent to the area swept by the satellite at the focus according to Keplers second law. The rate of change of mean anomaly is equivalent to the reciprocal of the orbital frequency.

3.2

Satellites position in the orbit

Figure 3.3

True anomaly, Eccentric anomaly and mean anomaly

The aforementioned angles are related to each other in the following manner.
(3.1)

where

is the mean anomaly at time

and

is the orbital angular rate. as


(3.2)

We can also write mean anomaly

in terms of eccentric anomaly

Equation (3.2) can be solved using Newton-Raphson method to get the eccentric anomaly .

21

Once we have , we can calculate true anomaly

using the following relation.


(3.3)

Therefore, the true anomaly

can be written as
(3.4)

Therefore, if we have the mean anomaly of the satellite, we can obtain the eccentric anomaly and the true anomaly using the above relations. Our aim is to find satellites position in the ECI frame which can be obtained once we have the position in the orbit frame. Satellites position in the orbit frame can be written as:
(3.5)

Position of the satellite in the ECI frame can be calculated by pre-multiplying three rotation matrices corresponding to the three angles; argument of perigee, inclination and longitude of ascending node.
(3.6)

For getting the position in ECEF frame, Z axis of the ECI frame. So, we can write

is given a rotation of along the positive

(3.7)

In order to reach at the above final expression of the position in the ECI frame, the orbital code needs to be propagated. The orbit in consideration is a Sun-synchronous orbit. This means that the orbit precesses with an angular rate equal to the angular rate of earth around sun. This kind of precession is caused because of the flatness of earth at the two poles. This is just a reflection of the perturbations caused on the Keplerian elements by this kind of flatness. Lagranges planetary equations give the details of the perturbations on all Keplerian elements. We present here only the equations involving the largest perturbing effect known as the effect. comes from the second order

22

term of the complete expression for the perturbed Keplerian elements. In our case, well use only the following three equations:
(3.8) (3.9) (3.10)

where is the change in the orbital angular rate due to is the unperturbed orbital angular rate is the mean radius of earth is the semi-major axis of the satellites orbit is the inclination of the orbit with the equatorial plane is the eccentricity of the orbit is the rate of change of argument of perigee is the rate of change of the ascending node angle

All the above mentioned orbital parameters and their rates are needed to locate the satellite in the ECI frame. There are many models which take into account all the perturbing effects like perturbation from Sun, Moon and other higher order effects due to non spherical shape of earth. For example SGP4 (Simplified General Perturbation 4 th order) model is the one which is very accurate and takes into account all the above mentioned perturbing effects into account. However, for our requirement, we need not consider all these effects. We can use the updated orbital parameters in the form of TLE (Two Line Elements) released by NORAD (North American Aerospace Defence Command). We also do not need all the information available on TLE. We can extract the data relevant to us from the TLE and upload those to the satellite periodically as the uplink data. Therefore, it is required to update the orbital parameters periodically from the ground station. The detailed description of TLE is given in Appendix A.

23

3.3

Operational modes

Satellites complete operation has been divided into few operational modes. This gives the user on ground more flexibility to choose a particular operation and make a sequence as per the requirement. This also helps the onboard computer make the mode scheduling autonomously and switch the modes according to that schedule. Following is a brief description of different operational modes. The details of the modes and their analysis are given in the following chapters.

3.3.1 Suspended Mode


This is the mode when ADCS is completely inactive. Generally this mode is encountered just after ejection from the launch vehicle or in case of complete satellite shut down to overcome an emergency situation.

3.3.2 Detumbling Mode


In case of small satellite ejection from the launch vehicle, the ejection system does not really actively control the angular rate of the satellite during ejection. The angular rate of the satellite can vary drastically depending upon the mechanism used for ejection. It can be as high as 10 deg/s. This rate is very high for the slow attitude estimation algorithms to work. Hence, it is required to bring down the angular rate of the tumbling satellite. In order to reduce the total angular momentum of the satellite, external torque is developed by using the torque coils and the satellite is detumbled. This mode takes about 2 to 3 orbits of time depending upon the initial tumbling rate.

3.3.3 Attitude Acquire Mode


This mode uses Tri-Axis Magnetometer data as input and processes them using Extended Kalman Filter to estimate satellites attitude (orientation) with respect to the inertial frame of reference.

3.3.4 Maneuvering Mode


This mode is active when it is required to reorient the satellite to a particular target direction. This is done using the four reaction wheels fixed on the satellite structure.

24

3.3.5 Stabilization Mode


A PID controller is used at the end of every maneuvering process to stabilize the satellite and fine tune its orientation and angular rate. This is also done using the for reaction wheels.

3.3.6 Momentum Dumping Mode


This mode is active when it is required to de-saturate the reaction wheels to bring their speeds well below the maximum speed limit. This is done using the torque coils.

3.3.7 Earth Pointing Mode


This mode is combination of maneuvering mode and PID stabilization mode. This mode is active during major payload operations such as imaging and GPS testing. Apart from payload operations, this mode is also active during communication with the ground station.

The onboard orbital code propagates the orbit for two days and makes a list of all possible communication windows with the time stamps. Depending on the duration of the communication window, power availability and payload priority sequence, OBC makes a schedule for different operational modes autonomously. However, direct interference from ground command can over-write the mode sequence and plan it according to the user on the ground.

Following is a flowchart which explains the sequence followed by the onboard computer unless interfered by ground command.

25

Just after Ejection or after an emergency system restart (ADCS in Suspended Mode)

Undergoes Detumbling Mode

Check if Detumbling is done

NO

YES

Start Attitude Estimation

Check if Attitude is acquired

NO

YES

Go to Sun-pointing direction Maneuvering Mode active

Stabilize the satellite using PID controller Stabilization Mode active Do Momentum Dumping

YES

Check if Momentum Dumping is required

NO

Check if there are any tasks in the queue

NO

YES

Go to Earth-pointing direction for imaging Maneuvering Mode Active

NO

Check for any other tasks in the queue

YES

Figure 3.4

Satellites mode sequence

26

Chapter 4 Attitude Estimation


In order to describe satellites complete dynamic state, one needs to have the information of the attitude (orientation) with respect to some inertial frame and its time derivatives. Here in our analysis, only first two time derivatives are considered as the third derivative is not very intuitive in nature and also because it is assumed that the second derivative (or its equivalent quantity) is changing very slowly relative to the major dynamics of the satellite. The first time derivative of the attitude is equivalent to its angular rate which is denoted by the symbol . The second derivative of the attitude is indirectly related to the external disturbance torque acting on the satellite which is denoted by the symbol . The reason for choosing external disturbance

torque instead of angular acceleration as the information on the second derivative of attitude is that it is an extrinsic quantity coming directly from the environment which is not really dependent on satellites inertia. Unlike angular rate and external disturbance torque, satellites attitude with respect to the inertial frame can be represented in many forms. Rotation matrix and quaternion are the most popular ones. In our analysis, we are considering quaternion as the representation of satellites attitude. However, rotation matrix has been used in many places in the control algorithms.

4.1

Algorithm Description and Analysis

In the present work, we have considered a state vector having ten elements in total; four for attitude quaternion, three for angular rate and three for external disturbance torque. Attitude quaternion can be written as
(4.1)

Similarly, angular rate can be written as


(4.2)

and external disturbance torque as


(4.3)

27

Combining the above three, the state vector becomes


(4.4)

Current attitude estimation algorithm uses only three axis magnetometer data. Though this algorithm is very sluggish in nature, it serves the purpose well, especially in the case of small satellites where generally scientific experiments are conducted instead of using them for commercial payloads. Since the relation between state vector elements and their first derivatives is highly nonlinear in nature, Extended Kalman Filter has been used to estimate the state vector. General state equation for the Extended Kalman Filter is
(4.5)

where

is the state vector,

is the control moment,

is the zero mean white and is the

noise known as process noise described by the process noise matrix first time derivative of the state vector.

In our case, since there is no control moment the state equation is reduced to
(4.6)

4.1.1 Singularity Elimination


As of now, we have considered a ten element state vector having first four elements as the attitude quaternion. It should be noted that all the four elements of the attitude quaternion are not independent. They are bound by the following constraint
(4.7)

This dependency of the elements of the state vector causes singularity in the Error Covariance Matrix P described in the appendix. In order to avoid such a situation, a nine element state vector has been chosen and has been used in the Kalman filter as mentioned above.

instead of the ten element state vector

28

Vector part of the error quaternion can be written as


(4.8)

Similarly, angular rate can be written as


(4.9)

and external disturbance torque can be written as


(4.10)

Combining the above equations, the state vector becomes

(4.11)

Here, the error quaternion

is defined as
(4.12)

where

is the true quaternion and

is the estimated quaternion

4.1.2 Derivation of the state equation


We know that conjugate of the quaternion is defined as
(4.13)

Let
(4.13)

Now, we have
(4.14)

Therefore,

can be rewritten as
(4.15) (4.16)

where
(4.17)

and

is defined as [2]

29

(4.18)

Therefore,

can be written as

(4.19)

Vector component of the error quaternion can be written as

(4.20)

(4.21)

where

(4.22)

Now, the relation between the nine element true state vector and the ten element true state vector can be written as

(4.23)

(4.24)

When the operator

is operated on the ten element estimated state vector to get the

nine element estimated state vector, following is obtained.

(4.25)

(4.26)

Now, we have both true and estimated nine element state vectors as difference state vector can be written as

and

. The

30

(4.27)

(4.28)

As, we have already seen, state equation for the true state can be written as
(4.29)

Similarly, state equation for the estimated state can be written as


(4.30)

Therefore, state equation for the error state can be written as


(4.31) (4.32)

Linearizing Equation (4.32), we have


(4.33)

where

(4.34)

It has to be noted here that

is also a

vector.

Derivation of the matrix F will follow the introduction of the dynamic equations for propagating the state vector.

4.1.3 Dynamic equations


It is apparent that the elements of the ten element complete state vector and their time derivatives are related in highly nonlinear fashion. Same is also true for the nine element state vector considered in our analysis. Following is a quick revision of the dynamic equations dealing with the elements of the state vector. There are three matrix

31

equations for the first time derivatives of the attitude quaternion, the angular rate of the satellite and the disturbance torque acting on it.

Time derivative of the attitude quaternion is a function of the current attitude quaternion and the current angular rate. This function can be written as [2]
(4.35)

where

is a 4 X 4 matrix and is completely a function of the angular rate of the

satellite.Derivation of the Equation (4.35) is beyond the scope of this paper.

Rate of change of the angular rate of the satellite can be derived from the simple relation between rate of change of angular momentum in the body frame and the same in inertial frame. The relation is as follows
(4.36)

Subscript on the first term indicates the derivative in inertial frame and subscript the last term indicates the derivative in body frame.

on

We know that rate of change of angular momentum in the inertial frame is equal to the total external torque acting on the satellite. So, we can rewrite Equation (4.36)
(4.37)

where is the control torque coming from the reaction wheels. is the known external torque such as torque due to gravity gradient, air drag and solar radiation pressure. is the unknown external disturbance torque which is estimated as a part of the state vector and which is significant if any of the Equation (4.37) can be written as
(4.38) (4.39) (4.40)

source is not modelled properly. Now,

32

where

is the total external torque.

It is assumed that the disturbance torque is constant, as in reality any change is very slow generally, with frequency equal to the reciprocal of the orbital period. Therefore, we can write
(4.41)

4.1.4 State Equation Linearization


We have already linearized the error state equation in Section 4.1.2. The linearized equation can be further decomposed into three parts. Therefore, after decomposition Equation (4.33) can be written as
(4.42) (4.43) (4.44)

It should be noted that all the terms in Equation (4.42), Equation (4.43) and Equation (4.44) are functions of time. , and are the components of the state dynamic

matrix, the derivation of which follows this section. 4.1.4.1 Derivation of quaternion dynamic matrix

The attitude quaternion evolves with time as a function of the angular rate of the satellite. Similarly, the first derivative of the error attitude quaternion can be written as [2]

(4.45)

(4.46)

As we need only the vector component


(4.47)

(4.48)

33

(4.49)

where Therefore,

is the 3 X 3 unit matrix. can be written as


(4.50)

(4.51)

4.1.4.2

Derivation of the angular rate dynamic matrix

Since there is no control torque acting on the satellite during attitude acquire mode, Equation (4.39) can be rewritten as
(4.52)

In general, the known external torque

(gravity gradient, air drag, solar radiation

pressure) acting on the satellite depends only on the attitude quaternion. So, we have
(4.53)

By definition,
(4.54)

Now,

can be further decomposed into three parts


(4.55)

(4.56)

(4.57) (4.58)

4.1.4.3 Since

Derivation of disturbance torque dynamic matrix is assumed to be zero, can be written as

(4.59)

Now,

can be written as

34

(4.60)

4.1.5 Relation between measurement vector and the state vector


In our analysis, the only measurement is from the tri axis magnetometer which is fixed with the satellites body. It measures Earths magnetic field in the body frame of reference in all three orthogonal directions. It is clear that the measurement readings directly depend on the attitude of the satellite. Hence, the measurement vector can be written as
(4.61)

where

is a nonlinear relation between the state vector (in this case only the is a zero mean white noise

attitude quaternion part) and the measurement vector and

known as measurement noise (In this case it is the noise coming from the magnetometer) described by the measurement noise matrix . It has to be noted that the process noise and measurement noise are uncorrelated.

The estimated measurement vector can be written as


(4.62)

Therefore, the innovation

can be written as
(4.63) (4.64) (4.65)

where

is known as the measurement sensitivity matrix and is calculated after

linearizing .
(4.66)

The measurement vector for the kth step can be written as


(4.67)

Here, the function

is used to transform the magnetic field from the inertial

frame to the body frame. Therefore, it can be written as


(4.68)

35

where

is the rotation matrix corresponding to the quaternion from inertial frame is the magnetic field in the inertial frame calculated using IGRF

to body frame and model. Now,

can be written as
(4.69)

Therefore,

becomes
(4.70) (4.71)

(4.72)

We know that

. Therefore, after neglecting the second order terms, Equation

(4.72) can be rewritten as


(4.73)

(4.74)

Now, we have
(4.75)

After expanding,

can be written as

(4.76)

4.1.6 State vector propagation


Between every two consecutive measurement updates, the state vector is propagated in smaller time steps. This propagation is based upon the dynamic equations involving the state vector derivatives.

36

4.1.6.1

Attitude quaternion propagation .


(4.77)

Let the angular increment during one propagation step be

Therefore, the quaternion propagation matrix

becomes [2]

(4.78)

and the attitude quaternion after propagation can be written as


(4.79)

where,

is the estimated quaternion before propagation and

is the estimated

quaternion after propagation. 4.1.6.2 Angular rate propagation

We have already derived the expression for angular acceleration. Therefore, the angular rate can be propagated as follows
(4.80) (4.81)

where, propagation. 4.1.6.3 that

is the angular rate before propagation and

is the angular rate after

Disturbance torque propagation

As we have assumed that the rate of change of disturbance torque is zero, we can write

(4.82)

where

is the disturbance torque before propagation and

is the disturbance

torque after propagation. 4.1.6.4 Propagation of error covariance matrix are expected to decrease with time as the matrix is used to calculate the

The elements of the error covariance matrix

extended Kalman filter converges. The updated

Kalman gain . Therefore it is necessary to propagate and update it.

37

We have already derived the state equation as


(4.83)

Now that we have the explicit expression for the matrix , we can integrated the above linearized differential equation for the duration of one propagation time step. After integration, the right hand side can be written as
(4.84)

It is assumed that the matrix

remains constant during the propagation step can be written as

Therefore the state transition matrix

(4.85)

After Taylor series expansion and neglecting the higher order terms, it can be shown that
(4.86)

So, the state propagation equation becomes


(4.87)

The process noise matrix can be written as


(4.88)

On further simplification

can be written as
(4.89)

Now,

matrix can be propagated as


(4.90)

4.1.6.5

State vector update and calculated above are the functions of best estimated state

It has to be noted that

vector just before the new update state. Therefore, these matrices can be rewritten as and which means they the best estimates available before number of measurement updates already made.

measurement update with

By definition Kalman gain can be written as


(4.91)

Therefore, the state vector correction can be written as


(4.92) (4.93)

38

(4.94)

where

is the

magnetometer reading and

is the estimated

magnetic field in the body frame reference calculated using IGRF model and the estimated attitude quaternion. Now, we can write the updated state vector after measurement as
(4.95)

The measurement sensitivity matrix updated using the updated state vector as

and the error covariance matrix

are now

(4.96) (4.97)

39

4.1.7 Flowchart
The following flowchart shows the algorithm to estimate the state vector. It also shows the different functions used in the implemented code.
Start Assign q_k_minus = q_est w_k_minus = w_est nd_k_minus = nd_est h_k_minus = h_est ws_k_minus = ws_est hs_k_minus = hs_est

Set the mode as Attitude Acquire Mode Refresh orbit position and initialize system parameters such as I matrix Initialize P matrix with prescribed value Also initialize q_est w_est nd_est

State_vector_update()

Initialize ws_est hs_est h_est g_gg_est

Get and assign q_est = q_k_plus w_est = w_k_plus nd_est = nd_k_plus ws_est = ws_k_plus hs_est = hs_k_plus h_est = h_k_plus Calculate and assign c3_est = C_b_lvlh_est(:,3) calculate_phi_k() calculate_Qk_kalman() P_minus Calculate and assign g_control = [0;0;0] g_ext_est = gmag + nd_est + g_gg_est

Initialize process noise parameters nq nw nNd

Initialize measurement noise matrix R

Estimate_state_propagation()

Propagate the orbit Calculate q_b_LVLH

NO

Check if P dig values are less than the corresponding threshold values

YES

Log message: Attitude Acquired

Stop

Figure 4.1

Attitude estimation flowchart

40

4.1.8 Use Case diagram


Following use case diagram of attitude acquire mode shows the dependency of different satellite modules.
Attitude Acquire Mode
Variable Initialization *

* **

OBC2 * State Vector Update * *

Tri Axis Magnetometer

* * State Vector Propagation *

Telemetry data to ground station through Beacon

* OBC1 Code Convergency Check Status (Windowed average of residual)

Figure 4.2 Table 3.1


No. 1 2 3 4 5 6 7 8 9 OBC1 OBC2

Attitude acquire mode use case diagram

Use case diagram description for Attitude acquire mode


Actor / Use Case Description Sends command to magnetometer, gets the magnetic field readings and sends them to OBC2 for State Vector Update Does all the attitude estimation calculation part Measures Earths magnetic field in the body frame of reference Sends the status of the running Estimation algorithm status (convergence) back to Earth through Beacon This mode estimates satellites attitude without implementing any control Initializes the state vector and other parameters need for the attitude estimation algorithm Take magnetometer reading and updates (corrects) the attitude obtained from the last propagation step Propagates the state vector using the equations governing its dynamics Calculates the residual value and sends it back to earth through Beacon. It also checks if the residual is less than a particular threshold

Tri Axis Magnetometer Telemetry data to ground station through Beacon Attitude Acquire Mode Variable Initialization State Vector Update State Vector Propagation Code Convergence Check

41

4.1.9 Simulation Results


Following simulation results show the filter performance. It shows how the estimated attitude quaternion tracks and converges with the true attitude. Same is also true for the estimated angular rate and disturbance torque.

Figure 4.3

True and estimated quaternion (

) w.r.t. inertial frame

Figure 4.4

True and estimated quaternion (

) w.r.t. inertial frame

42

Figure 4.5

True and estimated quaternion (

) w.r.t. inertial frame

Figure 4.6

True and estimated quaternion (

) w.r.t. inertial frame

From the above four plots, it is clear that the attitude is converged in a less than one orbital period. Same can also be inferred from the following two figures which show the convergence of angular rate and disturbance torque.

43

Figure 4.7

True and estimated angular rate of the satellite

Figure 4.8

True and estimated disturbance torque

The disturbance torque along each of the three orthogonal directions is set to 1e-8 N.m. for the simulation. The filter converges to these values within one orbital period.

44

Following three figures show how the attitude, angular rate and the disturbance torque errors are bounded by their +/- 1 values.

Figure 4.9

Attitude quaternion estimation error and

error boundary

Figure 4.10

Angular rate estimation error and

error boundary

45

Figure 4.11

Disturbance torque estimation error and

error boundary

Figure 4.12

Innovation of Extended Kalman Filter

In the above figure, the innovation of the filter keeps decreasing with time as expected.

46

Figure 4.13

Angular error between true and estimated attitude

In the above figure, the total angular error is plotted against time. It starts from an initial error of 80o and goes below 1o in less than one orbital period.

Figure 4.14

True and estimated magnetic field in the body frame

47

Figure 4.15

Angular momentum of the satellite in the inertial frame

Figure 4.16

Angular momentum of the satellite in the body frame

Above three figures show the convergence of the magnetic field, angular momentum in the inertial frame and angular momentum in the body frame.

48

Chapter 5 Attitude Control


Attitude estimation is a pre-requisite for attitude control. Once the attitude is acquired with reasonable accuracy, the satellite undergoes many control modes to perform different payload operations. In this chapter, we will discuss different control modes planned for the successful operation of the nanosatellite Jugnu. Before describing the control modes, Detumbling Mode is described. This is not really a control mode because the attitude of the satellite is not controlled during this mode. This mode is carried out before Attitude Acquire Mode.

5.1

Detumbling Mode

As mentioned earlier in Chapter 3, the satellite starts tumbling after its separation from the launch vehicle. It is required to bring down its angular rate to an acceptable range to ensure the convergence of the attitude estimation algorithm. This is done by generating the required magnetic moment in the three orthogonal directions which in turn interacts with earths magnetic field and generates a net external torque on the satellite in a direction opposite to the direction of the existing angular momentum. This controller is called bdot controller as it uses the rate of change of magnetic field value to compute the control torque.

5.1.1 Algorithm Description and Analysis


Torque required to detumble is directly proportional to the tumbling rate of the satellite. Though there is no explicit estimation of the tumbling rate (angular rate), an alternative method is used to estimate the torque requirement. A TAM (Tri Axis Magnetometer) is fixed on the satellite body with its three sensors aligned with the three orthogonal directions (generally along the principal inertia axes) of the body. These sensors measure the earths magnetic field value in the three orthogonal directions. These values change rapidly if the tumbling rate is high. This rate of change of magnetic field ( ) is calculated by taking the difference between two consecutive TAM readings and

49

dividing it with the time difference between them. This

value (3 x 1 vector with three

components in the three orthogonal directions) is then multiplied by a scale factor to obtain the required magnetic moment value (3 x 1 vector). The time step between two consecutive TAM readings is fixed and carefully chosen by looking at the algorithms performance during simulations.

This required magnetic moment is generated by using Torque Coils. The required magnetic moment value is converted into the current value as the mean area and number of turns of each coil is known from the design. This current value is again converted into the duty cycle of the PWM as the DC supply voltage value is fixed. The torque coils have a definite magnetic moment capacity. So, the calculated value of the required magnetic moment is truncated after a certain maximum limit.

If the tumbling rate is very high, the controller will not be able to capture the change in magnetic field and execute the control torque properly. This situation is detected when bdot value does not go below a certain threshold value even after the satellite has spent a significant amount of time in the Detumbling Mode. Solution to this problem is to reduce the time step between two consecutive magnetometer readings and thus making the controller faster.

Since the rate of change of TAM readings is the only available measure for knowing whether the satellite is being detumbled or not, its magnitude is send back to earth in the beacon signal. Following is the simple analysis for calculating the required PWM duty cycle. Rate of change of magnetic field is
(5.1)

Now, the required magnetic moment can be written as


(5.2)

And the required current vector in all three orthogonal directions becomes
(5.3)

Similarly, the required duty cycle value for the PWM supply becomes

50

(5.4)

The calculated magnetic moment about each axis is truncated at 0.03 Am2 due to design constrains. Therefore the retarding torque on the satellite can be written as
(5.5)

5.1.2 Flowchart
Following flowchart explains the bdot controller algorithm for detumbling.
Start Detumbling Mode

Set Mode = Primary

Take Magnetometer readings

Set bdot_threshold_time_counter = 0

Calculate bdot

NO

Check if bdot magnitude is less than bdot_threshold

NO

Check if Dtime_counter is greater than Dtime_counter_threshold

YES

YES

Start bdot_threshold_time_counter Check if bdot_threshold_time_counter is greater than bdot_threshold_time_counter_threshold

NO

Check if Mode = Primary

NO

YES

YES

Log message: Satellite Detumbled

Log error message: Primary Detumbling Mode Failed Set Mode = Secondary Reduce dt Set all the threshold limits to their new values

Stop Detumbling Mode

Log error message: Secondary Detumbling Mode Failed Rely on Momentum Dumping Mode

Figure 5.1

Detumbling mode flowchart

51

5.1.3 Use Case diagram


Following use case diagram shows the interdependency of different modules during detumbling mode.

Figur 5.2

Detumbling mode use case diagram

Table 5.1
No. 1 2 3

Use case diagram description for Detumbling mode


Description Acquires the magnetic field value with a prescribed frequency in the body frame using the HMR2300 magnetometer Calculates the rate of change of magnetic field Computes the required magnetic moment value for detumbling and the duty cycle of the PWM supply Generates the required magnetic moment by passing current through the PCB based Torque Coils Sends the magnitude of the rate of change of magnetic field value through beacon as an acknowledgement of the detumbling process

Actor / Use Case Tri Axis Magnetometer data acquire Magnetometer data processing Detumbling Mode

Active Torque Coils through PWM

Telemetry data through beacon

52

5.1.4 Simulation Results


Following simulation results show the detumbling of the satellite starting from an initial tumbling rate of 6 deg/s in all three axis.

Figure 5.3

Angular rate of the satellite

Above figure shows the angular rate along each three axes. The behaviour is different in the Z direction as the satellite in consideration is a 3U satellites. A 3U satellite has the X and Y axis principle moment of inertias equal and is larger than the same along Z axis. So, the gyric torque tends to spin stabilize the satellite dynamically along one of the major principle inertial directions.

53

Figure 5.4

Magnitude of angular rate of the satellite

Above figure shows how the magnitude of the angular rate changes and goes close to zero. It can be seen that it takes about two orbital periods detumble the satellite.

Figure 5.5

Rate of change of magnetic field

54

Figure (5.5) shows the rate of change of magnetic field with respect to tie. The beat phenomenon occurs due to the cyclic change of attitude and the magnetic field.

Figure 5.6

Magnitude of rate of change of magnetic field

Figure 5.7

Required magnetic moment

Above figure shows the required magnetic moment which is truncated at 0.03 A.m2 due to the limitation of the torque coils.

55

5.2

Maneuvering Mode

Once the attitude is acquired, the satellite needs to be prepared for various operational modes. Hence, it is required to take the satellite to Sun pointing Mode where it can save power for further payload operations. In our case, sun pointing means making the satellites diagonal along the sun direction where maximum power can be obtained. So, it is first required to get the sun pointing direction in the body frame of reference. As we already have the attitude quaternion from ECI to body frame, we just need to find the sun vector in the ECI frame.

5.2.1 Sun vector determination


We know that the vector pointing from earth centre to sun centre rotates uniformly about the Z axis of EI (Ecliptic Inertial) frame once every year. We also know that this vector is along the X axis of the EI frame on 21 st March of every year. So, we can write this vector as
(5.6)

where is the unit vector along the line joining from the centre of earth to the centre of sun is the angle made by the line joining from the centre of earth to the centre of sun and the X axis of the EI frame and can be written as
(5.7)

where is the angular rate of earth around sun is the at the beginning of maneuvering operation is the time corresponding to 21st March of the current year

To transform the sun vector from the EI frame to ECI frame, a rotation matrix corresponding to 23.5o about the negative X axis has to be pre multiplied with it. This rotation matrix is the transform matrix between the EI frame and the ECI frame as explained earlier. So, we can write
(5.8)

where

56

5.2.2 Algorithm description and analysis


Once we have the sun vector in ECI frame, we can transform it the body frame by premultiplying it with the rotation matrix corresponding to the attitude quaternion from ECI frame to body frame. (sun vector)

Figure 5.8

Sun vector in body frame

So, let us assume that we have the unit sun vector in the body frame and we call it as . For 3U cubesat the body diagonal vector can be written as

(5.9)

Now, the angle between these two vectors can be calculated as


(5.10)

is the total angle by which the satellite has to be rotated during the maneuvering operation.

57

The unit vector along the axis of rotation can be found out as
(5.11)

Let

is the maximum rate at which satellite can be rotated about the axis

. There

satellites angular momentum can be written as


(5.12) (5.13) (5.14)

where
(5.15)

Since, the angular momentum of the wheel is limited, value as

is also limited to its maximum

(5.16)

where is a limiting coefficient is the maximum angular momentum of the wheel

Similarly, the angular acceleration along the axis of rotation would be


(5.17)

where is a limiting coefficient is the maximum torque capacity of the wheel 5.2.2.1 Generating the commanded profile: , and . Depending on the relation among

Now, we have three parameters; these three parameters,

profile is generated. It is desired that the total maneuvering

time is minimum. In order to do so, the satellite has to be rotated with maximum possible angular acceleration. Once it reaches the maximum angular rate, it keeps the rate constant and starts retarding after a predefined time so that it finally reaches its commanded angle with zero angular rate. It is possible that the final commanded

58

angular rate is not zero as in case of the maneuvering to the Earth Pointing Mode which will be discussed later. But, well stick to zero initial and final angular rates to keep the analysis simple. So, the expected profile will be as shown in the following figure

From the above figure5.9 it is clear that Figure Commanded angular rate profile for maneuvering First, the time for which the satellite accelerates is calculated as follows
(5.18)

and, from the above figure, it can be seen that


(5.19) (5.20) (5.21)

When this situation arises,

follows the path along

and

does not reach

. In this case total time taken for maneuvering can be written as


(5.22)

59

In this case,

can be written as
(5.23)

Now, the total time can be divided in two equal zones. For

(5.24) (5.25) (5.26)

For

(5.27) (5.28) (5.29)

On the other hand, if

follows the path along

. In this case,
(5.30) (5.31) (5.32)

Here,

is same as calculated in Equation (5.16)

Now, the total time taken for the maneuvering operation can be divided into three parts. For

(5.33) (5.34)

60

(5.35)

For

(5.36) (5.37) (5.38)

For

(5.39) (5.40) (5.41)

5.2.2.2

Control Law

Sun Tracking System Quaternion Processing


PD Controller
Quaternion Propagation

X
X

Wheel momentum

Estimation

Figure 5.10

Control law for the Maneuvering mode

61

Now, we have

and

profiles with us. These are the commanded angular

position, angular rate and angular acceleration respectively. We can use these commanded profiles as references to develop the control law and correct the error during maneuvering operation.

It is assumed that just before starting maneuvering, attitude has been acquired with very high accuracy and the accuracy can be well maintained during the process just by propagating the state vector. No measurement update is required during this operation.

The attitude of the commanded frame with respect to the initial body reference frame can be written as

(5.42)

Similarly, attitude quaternion of the commanded frame with respect to inertial frame can be written as
(5.43)

where

is the attitude quaternion of the initial body reference frame with respect to

the inertial frame.

Now, we can write the commanded angular rate and angular acceleration of the satellite in the commanded frame as
(5.44) (5.45)

We can write the attitude quaternion of the body frame with respect to inertial frame at any instant as
(5.46)

where

is the estimated quaternion and is expected to be of high accuracy.

So, the error quaternion from the commanded frame to the body frame can be written as
(5.47)

62

The rotation matrix from commanded frame to the body reference frame can be written as which is a function of the error quaternion. Now, the error in angular rate can

be written as
(5.48)

where

is the estimated angular rate of the body reference frame with respect to

inertial frame.

Now the angular error corresponding to the error quaternion can be written as
(5.49)

where is the vector part of the error quaternion is the scalar part of the error quaternion

Before writing the expression for the control torque, we need to define some of the parameters to obtain different gain values. For our control we set the following parameters as
(5.50) (5.51)

where is the orbital period of the satellite is the damping coefficient is the reciprocal of the systems natural frequency The proportional gain and the derivative gain can be written as
(5.52) (5.53)

Now, the total control torque can be written as the combination of the following torques. Opposite of gyric torque is given by
(5.54)

Similarly, feed forward torque is given by


(5.55)

63

Proportional torque can be written as


(5.56)

And derivative torque can be written as


(5.57)

So, the total control torque is


(5.58)

This control torque is provided by the reaction wheels fixed in the body frame of reference. Following section describes the scheme used to achieve this desired control torque.

5.2.3 Implementation of four reaction wheels


In the implementation of the reaction wheels to control the attitude of the satellite, three assumptions are made. They are The attitude and angular rate of the satellite are exactly known. This is because the maneuvering operation starts only after the Kalman filter state vector is estimated with very high accuracy. ii. The disturbance torque acting on the system is zero. This is a valid assumption as the magnitude of the disturbance torque is negligible as compared to the magnitude of the control torque. iii. The angular acceleration of the satellite is constant over the time step considered for the propagation of the state vector. We can write the total angular momentum of the satellite as
(5.59)

i.

where is the inertial tensor of the whole satellite including the reaction wheels is the angular rate of the satellite is the spin angular momentum of the reaction wheels

It has to be noted here that

is a

vector and can be simply written as


(5.60)

This notation is correct if there are only three reaction wheels in the three orthogonal directions of the body reference frame. In the current work, four reaction wheels are used; three along the three orthogonal directions and one along the skew direction equally inclined to all the three orthogonal axes of the body frame of reference. This is

64

done to introduce redundancy in the system. Thus, it will be possible to control the satellite even if one of the reaction wheels fails.

Now, let us write the angular rates of all the four reaction wheels in the wheel frame as

(5.61)

Since the moments of inertial of all the reaction wheels are same, we can write the spin angular momentum of the wheels in the wheel frame as
(5.62)

where is the moment of inertial of each reaction wheel

It has to be noted that

is a

vector. So, the transformation matrix from the

wheel frame to the body frame can be written as

(5.63)

The number

comes from the cosine of the angle made by the skew direction with

any of the three orthogonal axes in the body frame of reference.

Now, the spin angular momentum of the wheels in the body frame of reference as
(5.64)

Here,

is a

vector.

Sometimes it is required to go to the wheel frame from the body frame to in order to get the required control torque. Since, the transformation matrix from the wheel frame to the body frame is not a square matrix; its inverse can be obtained as
(5.65)

65

Now, Equation (5.59) can be differentiated to obtain


(5.66) (5.67)

But, we have assumed that the disturbance torque acting on the satellite is zero. Therefore, Equation (5.67) becomes
(5.68) (5.69) (5.70)

where
(5.71)

So, the rate of change of spin angular momentum in the body frame of reference can be written as
(5.72)

Now this can be transformed to the wheel frame as


(5.73) (5.74) (5.75)

(5.76)

During the maneuvering operation, we get the reaction wheel speeds from the inbuilt Hall sensors. The reaction wheels used in the current work are speed controlled. Hence, the required control torque has to be converted into wheel speed for the next time step. The speed required speed at the next time step is then converted into the speed pin voltage and the corresponding duty cycle of the PWM supply and then fed to the motor electronics.

66

We know that the state vector has already been estimated with very high accuracy before starting the maneuvering process. Since during this process, only control torque is acting on the satellite and we have its exact value from the Hall sensor readings, we can say that the attitude and angular rate of the satellite are known with high accuracy at any instant of time during this operation. We also have the commanded attitude and angular rate profiles generated as mentioned in Section 5.2.2.1. Using these values, the control torque is generated for particular time step.

5.2.4 True state propagation


Consider the situation at time Using the estimated and commanded attitude and angular rates, the control torque is calculated for the time duration . This control torque is then transformed

to angular accelerations of the reaction wheels in the wheel frame. We have assumed that the angular acceleration of the satellite remains constant during a time step. So, we can write
(5.77)

where is the predicted angular speeds of the reaction wheels at is the measured angular speeds of reaction wheels at is the calculated angular accelerations of the reaction wheels at

The duty cycle of the PWM supply corresponding to electronics. After time

is then fed to the motor

, control torque is again calculated for the next step using the actual and .

commanded state vectors at time

67

(5.78)

Using this actual control torque, the actual attitude and angular rates are calculated at time .

During the above analysis, if at any time the commanded torque or angular rate of the reaction wheel come out to be more than their maximum limits, their values are reset to those limits.

In the above analysis, all the four reaction wheels are used to generate the control torque. However, in general only the three orthogonal reaction wheels are used to generate the control torque. The fourth reaction wheel is kept at constant speed so that the operating speeds of the orthogonal reaction wheels do not come close to zero. The fourth reaction wheel is used to generate control torque only if any of the three orthogonal reaction wheels fails.

68

5.2.5 Flowchart
Following flowchart explains the algorithm used in maneuvering mode.
Start

Set the mode as Maneuvering_SP Mode Get sun_vector in the body frame Calculate ac, phi_c, w_c, ws_c, t_total Start Momentum Dumping Check if reaction wheels are capable (for avoiding saturation)

NO

YES

Wait for battery charging Check if there is enough power for maneuvering

NO

Calculate g_ff, g_p, g_d Get ws for next time step Convert ws to Duty cycle of the PWM supply for the speed pin Supply power to reaction wheels for required speed Check if time is greater than t_total

NO

YES

Log message: Maneuvering_SPMode completed

Stop

Figure 5.11

Maneuvering mode flowchart

69

5.2.6 Use Case diagram


Following is the use case diagram for maneuvering mode which shows the interdependency of different satellite modules during this mode.

Maneuvering Mode (Sun-pointing)


Sun tracking processing *

* *

Commanded profile generation * * *

OBC2 Control torque generation through reaction wheels

Reaction wheels *

* Propagartion of estimated state vector

Figure 5.12

Maneuvering mode use case diagram

Table 5.2
Sl. No. 1 2 3 4 5 6 OBC2

Use case diagram description for Maneuvering mode


Description Does the necessary processing to find out the control torque with the help of necessary feedback Provide the required control torque This mode orients the satellite in the desired attitude Generates the unit vector along the direction of the sun from the orbit propagation mode Gives the commanded angular position and rate of the satellite Gets the actual wheel rotation from the inbuilt Hall sensors of the reaction wheels and uses them to propagate the true state vector

Actor / Use Case

Reaction wheels Maneuvering mode Sun tracking processing Commanded profile generation Propagation of estimated state vector

70

5.2.7 Maneuvering Mode Results


Following plots show the results for a total maneuvering angle of 123o.

Figure 5.13

Angular rate of the satellite

Above figure shows how the angular rate first increases, then remains constant and then decreases again.

Figure 5.14

Angle rotated by the satellite during maneuvering

71

Figure (5.14) shows the angle rotated by the satellite. It is clear that this angle overshoots. That is why it is required to implement a PID loop at the end of maneuvering.

Figure 5.15

Actual and target quaternion during maneuvering

Figure 5.16

Reaction wheel speeds during maneuvering

72

Above figure shows the reaction wheel speeds during the maneuvering mode. It can be seen that the speed along X and Y axis increases to more than 5000 rpm. Following figure show the total control torque and its components. It can be seen that the feed forward torque is the most dominating one and is acting on the satellite at the beginning and at the end of maneuvering process.

Figure 5.17

Total control torque acting on the satellite

73

Figure 5.18

Proportional torque acting on the satellite

Figure 5.19

Derivative torque acting on the satellite

74

Figure 5.20

Feed forward torque acting on the satellite

Figure 5.21

Gyric torque acting on the satellite

75

5.3

PID Stabilization Mode

As we can see from the simulation results of the Maneuvering mode, the final attitude of the satellite at the end of the maneuvering process deviates from the desired attitude. This error comes from many sources such as the errors in the sensors causing error in the attitude estimation which is being used in deriving the control torques. Apart from this, the assumption of zero disturbance torque during maneuvering process also introduces some error. So, it is required to correct the attitude at the end of each maneuvering process to fine point the payloads and achieve high pointing accuracy.

5.3.1 Algorithm description and analysis


This mode implements two control laws depending upon the error in the attitude quaternion. Those are i. PD control ii. PID control If the error in the satellites attitude and the desired attitude is larger than a partic ular threshold value then PD control is implemented, otherwise PID control is implemented. In the current work, this threshold value is set to be 5 o.

The method for getting the errors in attitude and angular rate has already been discussed in the Section 5.2. Unlike the control torque in maneuvering mode, there is no feed forward torque involved in this mode.

76

5.3.1.1

Control law

Sun Tracking System Quaternion Processing


PID Controller
Quaternion Propagation

X
X

Wheel momentum

Estimation

Figure 5.22 Control law for the PID stabilization mode For the PD control part the total control torque can be written as The total control torque when angular error is more than 5o can be written as
(5.79)

where Gyric torque Proportional torque: Derivative torque: and the gain value are
(5.80) (5.81) (5.82) (5.83)

where is the inertia tensor. Similarly, when angular error is less than 5o, control torque can be written as

77

(5.84)

where Gyric torque: Proportional torque: Derivative torque: Integral torque:

and
(5.85) (5.86) (5.87)

with gain parameters as


(5.88) (5.89) (5.90)

The PID mode stops itself after the errors are below a certain predefined threshold value or after crossing a particular time threshold.

78

5.3.2 Flowchart
Following flowchart describes the algorithm use in PID stabilization mode.
End of Maneuvering Mode Start PID Stabilization Mode Update the state vector by taking magnetometer readings Calculated the angular error between the estimated quaternion and the target quaternion

Propagate the estimated state vector Calculate proportional and derivative torques Set control mode as: PD Mode

YES

Check if error > theta_threshold

NO

Set control mode as: PID Mode Calculate proportional, derivative and integral torques Propagate the estimated state vector

Figure 5.23

PID stabilization mode flowchart

79

5.3.3 Use Case diagram


Following is the use case diagram for PID stabilization mode which describes how this mode is dependent on other satellite modules.

PID Stabilization Mode


Sun tracking / Earth pointing processing * * State Vector update using magnetometer readings * *

OBC1 *

3 Axis Magnetometer

Error calculation processing * * * * * * * Select Mode: PD or PID OBC2 Reaction wheels * * *

Control torque generation through reaction wheels

* Propagartion of estimated state vector

Figure 5.24 Table 5.3


No. 1 2 3 4 OBC1 OBC2

PID stabilization mode use case diagram

Use case diagram description for PID stabilization mode


Actor / Use Case Description Sends command to magnetometer, gets the magnetic field readings and sends them to OBC2 for State Vector Update Does all the attitude estimation calculation part Measures Earths magnetic field in the body frame of reference Sends the status of the running Estimation algorithm status (convergency) back to Earth through Beacon

Tri Axis Magnetometer Reaction wheels

80

5 6 7 8 9 10 11

PID stabilization Mode Sun tracking/Earth pointing processing State Vector Update using magnetometer readings Error calculation processing Mode selection: PD or PID Control torque generation through reaction wheels Propagation of estimated state vector

Provides pointing accuracy at the end of maneuvering mode. Generates the unit vector along the direction of the sun from the orbit propagation mode Updates the estimated state vector based on earlier readings Self explanatory Self explanatory Generates the control torque based on torque calculations Gets the actual wheel rotation from the inbuilt Hall sensors of the reaction wheels and uses them to propagate the true state vector

5.3.4 Simulation results


Following figure shows the simulation results of the PID stabilization mode followed just after the maneuvering mode described in Section 5.2.

Figure 5.25

Angular rate of the satellite

It can be seen from the above figure that the angular rate of the satellite remains at zero after the PID mode is implemented.

81

Figure 5.26

Angle rotated by the satellite during PID stabilization mode

Above figure shows how the total angle after maneuvering and PID mode settles at the target value of 123o.

Figure 5.27

Actual and target quaternion of the satellite

Above figure shows how the attitude quaternion approaches the target quaternion after PID mode is implemented.

82

Figure 5.28

Reaction wheel speeds during PID stabilization mode

Following figures shows the total control torque and its component during PID mode. It has to be noted that the two pulses in the total control torque are feed forward torques from the maneuvering mode. There is no feed forward torque in PID mode.

Figure 5.29

Total control torque acting on the satellite

83

Figure 5.30

Proportional torque acting on the satellite

Figure 5.31

Integral torque acting on the satellite

84

Figure 5.32

Derivative torque acting on the satellite

Figure 5.33

Gyric torque acting on the satellite

85

Figure 5.34

Feed forward torque acting on the satellite

86

5.4

Momentum Dumping Mode

This mode is responsible for keeping the speeds of the reaction wheels around their nominal values so that they can be used for any maneuvering process if required. During maneuvering and PID stabilization modes, satellite experiences some external disturbance torques. These torques generally come from air drag, solar radiation pressure and gravity gradient. These external disturbance torques are responsible for increasing the overall angular momentum of the system. However, the ADCS control algorithm is so designed that it transfers this extra angular momentum to the reaction wheels keeping the satellite stable enough to perform different payload operations, power tracking operations and housekeeping tasks. So, the speeds of the reaction wheels keep increasing and after some time they become saturated. Once saturation of the reaction wheels occurs, they are no longer capable of taking the excess angular momentum coming from the external disturbance torques. Hence, all the excess angular momentum is absorbed by the satellite and it starts tumbling. Apart from this, if an immediate maneuvering is required, the wheels are no longer capable of performing that. So, it is required to dump this excess angular momentum and bring down the speeds of the reaction wheels. This is done by using the torque coils fixed on the body frame.

5.4.1 Algorithm description and analysis


The controller used for momentum dumping is known as Bang-bang controller. This is a non-linear controller which uses the magnetic moment of the torque coils to its maximum capacity. It should be noted that the satellite is already in PID stabilization mode when momentum dumping is carried out. So, along with the external torque due to magnetic field, there will be some control torque coming from the reaction wheels. But, as the control torque is an internal torqu, it does not change the overall angular momentum of the system. The external magnetic torque is solely responsible for reducing the angular momentum of the system.

Now, the dynamic equation of the satellite can be written as


(5.91)

where is the gyric torque

87

is the control torque which comes from the PID algorithm is the external torque

The external torque Gravity gradient torque

consists of three parts.

External disturbance torque External magnetic torque

estimated by the Extended Kalman filter which helps in dumping excess angular momentum

Out of the above three torque, disturbance torque is estimated by the Extended Kalman Filter continuously. Gravity gradient torque is a function of the orientation of the satellite in the LVLH frame. The external magnetic torque is the real controlling torque acting in this mode. Following analysis shows the method to generate the required magnetic torque.

Let us assume that the wheel speeds are higher than their nominal values and are about to saturate. So, the wheel speeds are needed to be brought down using the external magnetic torque. The wheel speed vector can be written as

(5.92)

Now, the angular momentum of each wheel putting in a single vector can be written as
(5.93)

Let the nominal speed of each wheel be

. Therefore the excess angular momentum of

each wheel putting in a single vector can be written as

(5.94)

This excess spin angular momentum can be transferred from the wheel frame to the body frame by using the transformation matrix derived in the Section 5.2.3.
(5.95)

Now the required magnetic moment can be written as


(5.96)

88

where is the maximum magnetic moment capacity along each axis is earths magnetic field in the body reference frame, c alculated from the IGRF model and the estimated attitude quaternion

Therefore, the external magnetic torque can be written as


(5.97)

Momentum dumping mode stops once the spin rates of all the wheels are below a certain threshold value. 5.4.1.1 Control law

Sun Tracking System Quaternion Processing


PID Controller
Quaternion Propagation

X
X

Wheel momentum

Estimation

Figure 5.35

Control law for the Momentum dumping mode

89

5.4.2 Flowchart
Following flowchart describes the algorithm used in momentum dumping mode.
PID Stabilization Mode Check if wheel rpm > threshold rpm

YES Wait for 1 minute

Check for power availability

NO

YES

Start Momentum Dumping Update the state vector by taking magnetometer readings Calculate excess spin angular momentum of the wheels in the wheel frame Transform it to body frame and take cross product with the Magnetic field vector Calculate the magnetic moment required Calculate the generated external magnetic torque Add the calculated PID torques Check if time > t_threshold Propagate the estimated state vector Check if wheel rpm > threshold rpm

NO

YES

NO Log error message: Could not dump momentum Momentum Dumping Mode Failed

YES

Stop Momentum Dumping

Figure 5.36

Momentum dumping mode flowchart

90

5.4.3 Use Case diagram


Following use case diagram shows the dependency of different satellite modules during momentum dumping mode.

Momentum Dumping Mode


Sun tracking / Earth pointing processing * * State Vector update using magnetometer readings * *

OBC1 *

3 Axis Magnetometer

Error calculation processing *

Select Mode: PD or PID *

** * * * * ** * OBC2 Calculation of excess wheel spin momentum

Torque coils

Generation of external magnetic torque through torque coils

Control torque generation through reaction wheels

** * Reaction wheels

* Propagartion of estimated state vector *

Figure 5.37

Momentum dumping mode use case diagram

91

Table 5.4
No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 OBC1 OBC2

Use case diagram description for Momentum dumping mode


Actor / Use Case Description Sends command to magnetometer, gets the magnetic field readings and sends them to OBC2 for State Vector Update Does all the attitude estimation and control command generation Measures Earths magnetic field in the body frame of reference Generates required external magnetic torque Provides required control torque This mode dumps excess spin momentum of the reaction wheels and brings down their speed Generates the unit vector along the direction of the sun from the orbit propagation mode Corrects the last propagated/estimated state vector using the current magnetometer readings Self explanatory Self explanatory Self explanatory Self explanatory Self explanatory Propagates the state vector elements using the dynamic equations

Tri Axis Magnetometer Torque coils Reaction wheels Momentum dumping mode Sun pointing/Earth pointing processing State vector update using magnetometer readings Error calculation processing Mode selection: PD or PID Calculation of excess wheel spin momentum Generation of external magnetic torque through torque coils Control torque generation through reaction wheels Propagation of estimated state vector

92

5.4.4 Simulation results


Following figures show the simulation result of the momentum dumping mode. Here, the initial wheel speeds are about 2000 rpm about Y axis and the skew axis. The other two reaction wheel speeds are smaller and lie near the nominal zone of 500 rpm.

Figure 5.38

Reaction wheel speeds during Momentum dumping mode

From the above figure, it can be seen that the final wheels speeds after momentum dumping are 148 rpm, 114 rpm, 490 rpm and 131 rpm along the X, Y, Z and the skew axis respectively.

Following two figures show the required magnetic moment and the magnetic torque acting on the satellite during momentum dumping mode. The magnetic moment is either positive or negative 0.03 A.m2. It is a non linear controller which uses the maximum capacity of the torque coils. The torque acting on the satellite is a superposition of the discontinuous magnetic moment and continuous magnetic field.

93

Figure 5.39

Required magnetic moment during Momentum dumping mode

Figure 5.40

Magnetic torque acting on the satellite

94

5.5

Earth Pointing Mode

Most of the satellites payload operation and communication require the attitude of the satellite to be earth pointing. For example, during imaging and GPS functioning, it is required that the Z axis of the satellite should be pointing towards the centre of earth. During Earth pointing mode, satellites Z axis points towards the centre of earth and the satellite rotates about its pitch axis with an angular rate equal to the orbital rate of the satellite. This mode is a combination of Maneuvering Mode and PID Stabilization Mode. The difference is that unlike Sun Pointing Maneuvering Mode, here the final angular rate of the satellite is not zero.

5.5.1 Algorithm description and analysis


Let current attitude quaternion in the LVLH frame be Objective is to make
(5.98)

Depending on the time at which earth pointing is required, target the orbit model explained in Appendix A. Then, the target can found out as

is found using

(5.99)

If the current attitude quaternion in the inertial frame is to be maneuvered can be written as

, the rotation quaternion

(5.100)

rotation quaternion, the algorithm proceeds as explained in the Maneuvering Mode and the PID Stabilization Mode. Here, the target angular rate is same as the orbital angular rate.

95

5.5.2 Simulation results


Following figures show the simulation results of the earth pointing mode. In earth pointing mode, satellites body frame needs to be aligned with the LVLH frame. Hence, the vector part of the attitude quaternion with respect to the LVLH frame should go to zero and the scalar part should be one. Following figure clearly shows the same.

Figure 5.41

Attitude quaternion w.r.t. LVLH frame

The LVLH frame rotates about its negative Y axis once in one orbital period and the satellite is also aligned with LVLH frame. Therefore, satellites angular rate should also be equal to the orbital angular rate. For a low earth orbit of altitude 700 Km, the orbital angular rate is about 0.001 rad/s. From the following figure, it can be seen that the X and Z components of the angular rate goes to zero while the Y component settles at -0.001 rad/s.

96

Figure 5.42

Angular rate of the satellite

Figure 5.43

Reaction wheel speeds during Earth pointing mode

97

Figure 5.44

Total control torque acting on the satellite

Above figure shows the control torque needed for the earth pointing mode. It has to be noted that there four torque pulses for each axis shown in the figure. The first two corresponds to the maneuvering mode discussed earlier. The second two pulses correspond to the control torque needed for earth pointing mode.

98

Chapter 6 Hardware Specification


6.1 Sensor
After going through the specifications of different available sensor options, it was decided to go for HMR2300 digital Tri Axis Magnetometer. Its size, mass, power consumption, cost and measurement resolution makes it best suitable for nanosatellites. Following is a brief description of HMR 2300.

Figure 6.1

HMR2300 digital Tri axis magnetometer

99

Specifications: High Accuracy Over 1 gauss, <0.5% Full Scale Range of 2 gauss, <70 gauss Resolution Three Axis (X, Y, Z) Digital Outputs 10 to 154 Samples Per Second, Selectable RS-232 or RS-485 Serial Data Interfaces PCB or Aluminum Enclosure Options 6-15 volt DC Unregulated Power Supply Interface

6.2

Actuators

Nanosatellite Jugnu has an imaging payload which requires a minimum pointing accuracy of 3o. Communication system also needs the satellite to be three axis stabilized for uninterrupted data transfer in the communication window. It is also required to keep the satellite stable in the sun pointing direction to have maximum solar power incidence. Reaction wheels are the best suitable for achieving such fine pointing accuracy and stabilization. Apart from this, it was decided to use torque coils to detumble the satellite and desaturate the reaction wheels. Following is a description of the design of the torque coils and arrangement of reaction wheels used in the present nanosatellite.

6.2.1 Design and analysis of torque coils


Torque coils are basically a bunch of conducting loops placed in a manner so that the area vector of the loops point along the orthogonal axis of the body reference frame. These loops can be made by winding copper wire about the three cross-sections of the Cubesat. However, a simpler technique has been used in the current work to fabricate these loops. The Cubesat considered in the current work, has PCB based solar panels on its three orthogonal faces. These PCBs have copper loops embedded in them and they can produce the required magnetic moments just as efficiently as conventional torque coils. Following is a brief analysis of the magnetic moment capacity of these torque coils.

100

Let be the number of turns in one layer of PCB be the length of the outermost turn be the breadth of the outermost turn be width of the wire used be inner wire spacing

Starting from the first turn


(6.1) (6.2) (6.3)

. . .
(6.4)

Now, the total magnetic moment can be written as


(6.5)

(6.6)

After a bit of algebra, above summation can be written as


(6.7)

Since there are two layers


(6.8)

Above expression can also be written as


(6.9)

Where is the potential drop across the coil is the total resistance of the circuit Total resistance can be written as

101

(6.10)

Where is the resistance of the coil is the resistance of the electronic circuit

The total coil resistance can be calculated by the following method.


(6.11)

Where is the resistance of the first turn is the resistivity of the coil material (copper) is the depth of the copper layer

Similarly the resistances of the other turns can be written as


(6.12)

. . .
(6.13)

Now, the total resistance of the coil can be written as


(6.14)

(6.15)

(6.16)

Since the two layers are connected in parallel, total resistance of the two layers will be
(6.17)

This resistance value can be put in the expression for magnetic moment to get it completely as function of number of turns, coil dimensions and material resistivity.

102

In the present work, the Cubesat considered has face dimensions of 100 X 300 mm2, 100 X 300 mm2 and 100 X 100 mm2. Based on structural design, simulations and above calculations, following specifications have been finalized.

Axis

Area Mm2 100 x 300 100 x 300 100 x 100

No of PCBs 1 2 2

X Y Z

m required in Am2 0.03 0.03 0.03

Voltage available (V) 3.3 3.3 3.3

Voltage supplied (V) 1 0.6 1

m achieved in Am2 0.065 0.064 0.070

Power consumed in Watt 0.045 0.035 0.115

Table 6.1

Torque coil design specifications

Figure 6.2

PCB based torque coils

103

6.2.2 Reaction wheels arrangement


Conventionally, reaction wheels are large in size and very heavy. They are generally not suitable for nanosatellites. However, use of just a motor without any wheel connected its shaft can serve the purpose where the satellite inertia is small enough to be controlled by the rotor inertia of the motor. Maxon Motors Ltd. provides such small motors. The motor chosen for present work is known as EC 20 Flat. It is a brushless DC motor and has the following specifications. Rotor diameter = 20 mm Rotor inertia = 3.84 gcm2 Maximum speed = 15000 rpm Maximum continuous torque = 3.91 mNm Supplied Voltage = 9 V

As mentioned earlier, there are four reaction wheels used to include redundancy. Three are fixed along three orthogonal directions of the body frame and one along the skew axis equally inclined to the three orthogonal axes. Following is picture showing the reaction wheel arrangement in the satellite.

Figure 6.3

Arrangement of four reaction wheels

104

Chapter 7 Conclusion
The ADCS are responsible for the estimation and control of the attitude of the satellite. The accuracy with which these functions can be performed has been estimated by performing simulations. This section lists out the various performance accuracy parameters got through simulation. Post-launch, the tumbling rate of the satellite has to be reduced from over 10 deg/s second to as low as possible. The torque coils used in the ADCS of Jugnu reduce the tumbling rate from over 10 deg/s to 0.1 deg/s. The duration of this detumbling is less than twice the orbital period of Jugnu. The functional relevance of the main payload of Jugnu the near IR camera depends on the attitude control by the ADCS. The attitude control is also important for functions like attaining the sun-pointing mode and testing of the GPS module. Simulations show that the estimation accuracy limit of the attitude of the satellite is 1 degree. The accuracy of the PID stabilization of the attitude has been found, by simulation, to be 2 degrees. Therefore, the overall pointing accuracy of the satellite that can be achieved is 3 degrees. The time taken for the estimation has been found to be less than one orbital period. The other major function of the ADCS is to dump the excess spin angular momenta of the reaction wheels. The torque coils are employed to dump the angular momentum out of the satellite. With the specifications of Jugnu, it will be possible to reduce the speeds of the reaction wheels from over 2000 rpm to less than 500 rpm within a period of 1000 seconds. From the above, it can be concluded that the ADCS of Jugnu are equipped to estimate and control the attitude of Jugnu within the required limits of accuracy. Functional redundancy has been incorporated wherever possible, for instance, there are four reaction wheels. These ensure that the ADCS is a reliable system and the results of the

105

simulations ensure that all the functions of the ADCS are dispensed effectively, thus contributing to the successful implementation of the mission objectives of Jugnu.

Scope of future work


The system developed to determine and control the attitude of Jugnu is competent to fulfill the desired functions within accepted levels of accuracy. However, the experience of having surveyed the literature and worked on various aspects of the development of the system points to a few avenues with scope of improvement in the future.

Efforts can be focused on building an integrated simulator, software which includes modeling of all the hardware used, so that it becomes a single simulator sufficient for all the attitude related simulations to be done.

Use of sun sensor and star tracker can be looked upon for attitude determination. The ADCS of Jugnu did not feature a star tracker due to constraints of computational requirements. A little more room with regard to the computational power will allow improvement of the ADCS by a significant amount.

In Jugnu, propulsive thrusters were not used for attitude control as they only allow coarse pointing due to large thrust impulse value of available thrusters. If a technological step-up can lead to the development of thrusters for nanosatellites in the near future, the relevance of their use can be looked upon. Similarly, use of Memes based gyros can also be considered.

The above developments will help improve on the ADCS of Jugnu and will therefore help in making a more efficient Attitude determination and control system for nanosatellites.

106

References
[1] L. K. Herman; The history, definition and peculiarities of the Earth Centered Inertial (ECI) Coordinate frame and the scales that measure time; 1994.
Peter C. Hughes; Spacecraft Attitude Dynamics; Dover publications,1st edition, 1986. Luke Stras, Daniel D. Kekez, G. James Wells, Tiger Jeans, Robert E. Zee, Freddy Pranajaya, Daniel Foisy; The Design and Operation of The Canadian Advanced Nanospace eXperiment (CanX-1); 2003. WH Steyn, Y Hashida, V Lappas; An attitude control system and commissioning results of the SNAP-1 nanosatellite; 2000. Hari B. Hablani; Design of a Payload Pointing Control System for Tracking Moving Obects; Journal of Guidance, AIAA, Vol. 12, No. 3 May-June,1989. Mark L. Psiaki; Magnetic Torquer Attitude Control via Asymptotic Periodic Linear Quadratic Regulation; Journal of Guidance, Control and Dynamics, Vol. 24, No. 2, March-April 2001. B. Wie, H. Weiss and A. Arapostathis, Quaternion Feedback Regulator for Spacecraft Eigenaxis Rotations, Journal of Guidance, Vol. 12, No. 3, May-June 1989. M. S. Challa, G. A. Natanson, D.F. Baker and J. K. Deutschmann; Advantages of Estimating Rate Corrections During Dynamic Propagation of Spacecraft Rates Applications to Real-Time Attitude Determination of SAMPEX, 1994. M. D. Shuster and S. D. Oh; Three-Axis Altitude Determination from Vector Observations; Journal of Guidance and Control, Vol. 4, No. 1, 1981. Mark. L. Psiaki, Francois Martel and Parimal K. Pal; Three-axis Attitude Determination via Kalman Filtering of Magnetometer Data; Journal of Guidance, Vol. 13, No. 3, May-June,1990. Matthias Wiegand; Autonomous Satellite Navigation via Kalman Filtering of Magnetometer Data; Acta Astronautica Vol. 38, Nos 4-8, pp 395-403, 1996. Peter J. Camillo and F. L. Markley; Orbit-Averaged Behavior of Magnetic Control Laws for Momentum Unloading; Journal of Guidance and Control, Vol. 3, No. 6, Nov-Dec, 1980. Todd Edwin Humphreys; Attitude Determination for Small Satellites with Modest Pointing Constraints; Master of Science thesis, Utah State University, 2003.

[2]

[3]

[4]

[5]

[6]

[7]

[8]

[9]

[10]

[11]

[12]

[13]

107

[14]

Kristian Svartveit; Attitude determination of the NCUBE satellite; Master of Science thesis, Norwegian University of Science and Technology, 2003. Wikipedia: (online), Available: http://en.wikipedia.org/wiki/Orbital_parameters Dr. T. S. Kelso, (2007). (Online), Available: http://celestrak.com/NORAD/elements/

[15] [16]

108

Appendix A
Two Line Element description
A two line element set (TLE) is a group of numbers provided in two lines and separated by spaces, that specify the orbital parameters (elements) for a satellite, spent booster rocket, or other man-made satellites. The text file for a particular satellite generally has three lines. First line has a 24 character length satellite name which comes from the NORAD satellite catalogue. The other two lines contain the actual orbit and position information of the satellite.

Following is the format description of Line 1


Field 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 Column 1 3-7 8 10 - 11 12 - 14 15 - 17 19 - 20 21 - 32 34 - 43 45 - 52 54 - 61 63 65 - 68 69 Description Line Number of Element Data Satellite Number Classification International Designator (Last two digits of launch year) International Designator (Launch number of the year) International Designator (Piece of the launch) Epoch Year (Last two digits of year) Epoch (Day of the year and fractional portion of the day) First Time Derivative of the Mean Motion Second Time Derivative of Mean Motion (decimal point assumed) BSTAR drag term (decimal point assumed) Ephemeris type Element number Checksum (Modulo 10) (Letters, blanks, periods, plus signs = 0; minus signs = 1)

109

Similarly, the format description of Line 2


Field 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 Column 1 3-7 9 - 16 18 - 25 27 - 33 35 - 42 44 - 51 53 - 63 64 - 68 69 Description Line Number of Element Data Satellite Number Inclination [Degrees] Right Ascension of the Ascending Node [Degrees] Eccentricity (decimal point assumed) Argument of Perigee [Degrees] Mean Anomaly [Degrees] Mean Motion [Revs per day] Revolution number at epoch [Revs] Checksum (Modulo 10)

In case of small satellites, only the six orbit parameters and one epoch year are needed for orbit propagation. All the other terms are used in higher order orbit models where high accuracy is required.

110

Appendix B
Quaternion Kinematics
Conventionally, rotation matrices are used to represent the attitude of one reference frame with respect to another frame. These rotation matrices are functions of the Euler angles and the sequence in which they have been used to rotate the frame. It can be proved that the relation between any two frames can be represented by one single axis of rotation and some definite angle about that axis. The rotation angle and the axis of rotation are found in the following manner. Let the rotation matrix between two frames be
(B.1)

Now, the angle of rotation and the axis of rotation can be written as
(B.2)

(B.3)

Trace of the rotation matrix is 3 iff the matrix is a unit matrix. In that case the rotation angle is an integral multiple of and the axis of rotation does not have any

significance. However, if the trace is -1, the rotation angle becomes an odd integral multiple of . In this case, the axis of rotation becomes undefined if calculated using Equation (B.3). Therefore, it is calculated using the following alternative method.
(B.4) (B.5) (B.6)

The sign ambiguities are resolved using following equations.


(B.7) (B.8)

111

(B.9)

It has to be noted that all the four components of a quaternion are not independent. They are bound by the relation
(B.10)

which means
(B.11)

Like rotation matrix, a quaternion also has its inverse given by

(B.12)

The rotation matrix corresponding to a quaternion can be written as


(B.13)

The above equation can also be written as


(B.14)

where
(B.15)

The multiplication between two quaternions is given by


(B.16)

where

(B.17)

Finally, the rate of change of quaternion can be written as


(B.18)

where

(B.19)

Das könnte Ihnen auch gefallen