Calibration and Uncertainty Analysis of a Spacecraft Attitude Determination Test Stand

Size: px
Start display at page:

Download "Calibration and Uncertainty Analysis of a Spacecraft Attitude Determination Test Stand"

Transcription

1 Calibration and Uncertainty Analysis of a Spacecraft Attitude Determination Test Stand Charles T. Pope Space Engineering, masters level 2017 Luleå University of Technology Department of Computer Science, Electrical and Space Engineering

2 Calibration and Uncertainty Analysis of a Spacecraft Attitude Determination Test Stand Charles T. Pope Supervisor: Dr. Rees Fullmer Mechanical & Aerospace Engineering, Utah State University Examiner: Prof. Dr.-Ing. Sergio Montenegro Informatik VIII, Julius Maximilians Universität Würzburg Examiner: Dr. Johnny Ejemalm Computer Science, Electrical & Space Engineering, Luleå University of Technology A thesis submitted in partial fulfillment of the requirements for the degree of Master of Space Science and Technology January, 2017

3 Abstract Experimental testing of attitude determination systems still plays an important role, despite increasing use of simulations. Testing provides a means to numerically quantify system performance, give confidence in the models and methods, and also discover and compensate for unexpected behaviours and interactions with the attitude determination system. The usefulness of the test results is dependent on an understanding of the uncertainties that contribute to the attitude error. With this understanding, the significance of the results can be assessed, and efforts to reduce attitude errors can be directed appropriately. The work of this thesis is to gain a quantitative understanding of the uncertainties that impact the attitude error of low cost spinning spacecraft using COTS camera (as Sun sensor) and MEMS magnetometer. The sensors were calibrated and the uncertainties in these calibrations were quantified, then propagated through the Triad method to uncertainties in the attitude. It was found that most systematic errors were reduced to negligible levels, except those due to timing latencies. Attitude errors achieved in the laboratory with the experimental setup were around 0.14 degrees (3σ) using either the Triad, q-method or Extended Kalman Filter with a gyro for dynamic model replacement. The errors in laboratory were dominated by magnetometer noise. Furthermore, correlated systematic errors had the effect of reducing the attitude error calculated in the laboratory. For an equivalent Sun-mag geometry in orbit, simulation showed that total attitude error would be of the order of 0.77 degrees (3σ). An uncertainty contribution analysis revealed this error was dominated by uncertainties in the inertial magnetic field model. Uncertainties in knowledge of the inertial Sun model, sensor calibration, sensor alignment and sensor noise were shown to be insignificant in comparison. i

4 Declaration The data presented in this thesis was obtained in an experiment carried out by myself at Utah State University. I declare that this thesis has been composed solely by myself and that it has not been submitted, in whole or in part, in any previous application for a degree. Except where stated otherwise by reference or acknowledgement, the work presented is entirely my own. Disclaimer This project has been funded with support from the European Commission. This publication reflects the views only of the author, and the Commission cannot be held responsible for any use which may be made of the information contained therein. ii

5 Acknowledgements This thesis would not have been possible without the support of the following people. I am humbly grateful to them. Rees Fullmer (supervision and guidance) Dana Sorensen (embedded and ground station programming) Jordan Luke (electrical engineering advice) Russell Babb (mechanical modifications) iii

6 Contents Abstract Declaration Acknowledgements Abbreviations i ii iii vii 1 Introduction Problem and Objectives Previous Work and Context Approach Thesis Overview Literature Review & Background Theory Attitude Determination Attitude Representation Attitude Error Attitude Determination Algorithms Spin Stabilized Spacecraft Sensors Magnetometer Sun Sensor Uncertainty Analysis [1] Test and Experimentation Errors Uncertainties Calibration Elemental Sources of Error Propagation of Uncertainty to a Calculated Result Experimental Setup Hardware Spin Table Satellite Sun GPS Software Coordinate Frames iv

7 CONTENTS v Inertial Frame Body Frame IMU Magnetometer Frame Dowty TAM7 Mk2 Magnetometer Frame Sun Sensor Frame Practical Considerations Inertial Magnetic Field Motor Interference Camera Interference Geometry Spin Rate Play in Motor Gears Encoder Issues Sun Simulation Sensor Calibration and Error Quantification Introduction Magnetometer Magnetometer Calibration Magnetometer Timestamp Latency Correction Alignment Sun Sensor Data Processing Camera Calibration Centroiding & Sun Vector Parallax Correction Latency Correction Alignment and Inertial Vector Estimate Interpolation Error Encoder Attitude Uncertainty Analysis Introduction Triad Results Discussion of Results Simple Monte Carlo Analysis Complex Monte Carlo Simulation Correlation In-Orbit Uncertainties Uncertainty Percentage Contribution Best Accuracy Achievable Conclusion Key Findings Detailed Conclusion Future Work

8 CONTENTS vi Appendix 98

9 CONTENTS vii Abbreviations ADC ADCS AMR AU CMOS COTS CSS DSS EKF GUI IGRF IMU LED MEMS MCM NLLS PID PPS PWM SNR TAM TSM UPC WMM Analog to Digital Converter Attitude Determination and Control System Anisotropic Magneto-Resistance Astronomical Unit Complementary Metal-Oxide Semiconductor Commercial Off-The-Shelf Coarse Sun Sensor Digital Sun Sensor Extended Kalman Filter Graphical User Interface International Geomagnetic Reference Field Inertial Measurement Unit Light Emitting Diode Micro-Electro-Mechanical System Monte Carlo Method Non-Linear Least Squares Proportional Integral Derivative Pulse Per Second Pulse Width Modulation Signal to Noise Ratio Three Axis Magnetometer Taylor Series Method Uncertainty Percentage Contribution World Magnetic Model

10 List of Figures 2.1 Effect of errors on the magnetic field measurement locus in 2D, figure courtesy of [2] Mapping from 3D world to 2D image with the pinhole camera model. Figure adapted from [3] Repeated readings from an instrument, adapted from [1] Experimental result calculated from multiple measured variables, each with elemental error sources, adapted from [1] Spin table Mock satellite IMU [4] Flux gate Three Axis Magnetometer Camera used as digital Sun sensor[5] Ground station GUI Body frame. (Sensor frames also shown with exaggerated misalignment) Magnetometer frames Sun sensor frame Direction of inertial magnetic field, from 3 different surveys conducted on two separate days No observable effect of motor on inertial magnetic field. Graph shows magnetic field while motor was static and spinning, while disconnected from the satellite. (Motor position is plotted on horizontal axis.) Calibration and processing for Sun sensor and magnetometer Calibrated Magnetometer data. Difference between TAM and IMU magnetometer Magnitude of normalized magnetic field before and after calibration for IMU Magnetometer Magnitude of normalized magnetic field before and after calibration for Dowty TAM Norm of magnetic field while spinning on spin table. IMU Mag (blue). TAM (red) Simulated error of -70 bias in Dowty TAM X axis Origins of a flux gate magnetometer s sensors of similar size to the Dowty TAM [6] Horizontal magnetic field strength in the area above spin table. (Average of three surveys conducted with FVM 400 magnetometer.) IMU magnetometer at 18 /s (blue) and 180 /s (red) table rotation rate.. 44 viii

11 LIST OF FIGURES ix 4.10 Dowty TAM7 magnetometer at 18 /s (blue) and 180 /s (red) table rotation rate Time variation camera and IMU off Time variation camera and IMU on Time variation encoders Raspberry Pi Gamma distribution fit to time delay data. Shape parameter: a= scale parameter: b= IMU magnetometer at 18 /s (blue) and 180 /s (red) table rotation rate after lag correction applied Dowty TAM at 18 /s (blue) and 180 /s (red) table rotation rate after lag correction applied Estimated inertial magnetic vector from de-rotating body vector. (a) IMU Mag 40 /s (b) IMU Mag 255 /s (c) Dowty TAM 40 /s (d) Dowty TAM 255 /s Raw camera data to Sun vector process Horizontal reprojection error. σ = 0.13, µ = Vertical reprojection error. σ = 0.11, µ = Geometric Centroid σ x = 0.06, σ y = 0.07 vs Weighted Centroid σ x = 0.01, σ y = Variation in centroid at edge of image Unit vector from pinhole camera geometry (left) Parallax error on Sun vector. (Right) No parallax error when spacecraft is in home position Difference in yaw angle determined from camera and encoder. (a) Before parallax correction. (b) After parallax correction Sun sensor horizontal pixel at 18 /s (blue) and 180 /s (red) table rotation rate. Before latency correction (a) After latency correction (b) Estimated inertial Sun unit vector from de-rotating body vector Estimated inertial Sun angles from derogating body vector Data difference between lab test and in orbit Triad attitude errors for varying rotation speeds (using IMU Magnetometer). (a) 40 /s (b) 110 /s (c) 180 /s (d) 255 /s Monte Carlo simulation considering only random sensor noise Experimental roll (φ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated simple Monte Carlo 3σ bounds marked in blue dashed lines Experimental pitch (θ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. simulated Simple Monte Carlo 3σ bounds marked in blue dashed lines Experimental yaw (ψ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated simple Monte Carlo 3σ bounds marked in blue dashed lines Experimental total angle error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated simple Monte Carlo 3σ bounds marked in blue dashed lines

12 LIST OF FIGURES x 5.8 Experimental roll (φ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines Experimental Pitch (θ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines Experimental yaw (ψ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines Experimental total angle error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines Effect of correlated systematic errors on attitude (simulated). Black - correlation accounted for. Blue - no correlation Roll (φ) error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM Pitch (θ) error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM Yaw (ψ) error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM Total angle error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM σ uncertainty bounds for in orbit. Comparison of Taylor Series Method and Monte Carlo Method. No time errors simulated, thus uncertainty bounds are symmetric Uncertainty Percent Contribution to total angle error. (a) most significant contributors. (b) less significant contributors Uncertainty Percent Contribution to error in Euler angles. (a) Roll (φ) (b) Pitch (θ) (c) Yaw (ψ) Reduction in 3σ uncertainty bounds by defining body axes from Sun sensor degree reduction in total error (black) σ uncertainty for Euler angle errors and total angle error for what if cases. a - default case. b - milspec error in I B components. c - uncertainties in camera principal point and focal length reduced 1 order of magnitude. d - Lower fidelity Sun ephemeris used σ attitude error for the case where uncertainties in the inertial magnetic field are zero Uncertainty Percent Contribution to error in Euler angles in absence of I B errors. (a) Roll (φ) (b) Pitch (θ) (c) Yaw (ψ) Uncertainty Percent Contribution to total angle error in absence of I B errors Roll (φ) errors Triad vs Q Method, vs EKF, 40 /s spin rate Pitch (θ) errors Triad vs Q Method, vs EKF, 40 /s spin rate Yaw (ψ) errors Triad vs Q Method, vs EKF, 40 /s spin rate Total angle errors Triad vs Q Method, vs EKF, 40 /s spin rate

13 5.29 3σ total angle error comparison for all data files at rotation speeds from degrees per second List of Tables 2.1 Geomagnetic field models used Spin table specifications IMU magnetometer specifications Dowty magnetometer specifications Camera specifications Sun proxy specifications GPS specifications Systematic delay calculated for 10 different sets of data using fminsearch Summary of systematic delay using fminsearch Estimated alignment and inertial magnetic field when using either the IMU Mag or Dowty TAM Uncertainty in alignment and inertial magnetic field when using either the IMU Mag or Dowty TAM Camera parameters estimated from calibration Estimated Sun sensor alignment and inertial Sun unit vector Sensor random noise (1σ), determined from the stationary spacecraft σ Uncertainties used in simulation. (Normally distributed unless stated otherwise.) Summary of changes in 3σ attitude errors from different what if scenarios. b - milspec error in I B components. c - uncertainties in camera principal point and focal length reduced 1 order of magnitude. d - Lower fidelity Sun ephemeris used Key results xi

14 Chapter 1 Introduction 1.1 Problem and Objectives Attitude determination (orientation estimation) is a critical aspect of almost all spacecraft missions. It is required for attitude control and/or, scientific data processing. The performance of an attitude determination system can be characterised by: the attitude error, solution speed (post processing or real time) and availability (are there enough measurements to estimate the attitude). The key metric is attitude error. In orbit, it is very difficult to assess the true attitude error. This is why experimental test and simulation is required to validate and verify the performance of the Attitude Determination and Control System (ADCS) before launch. Simulation is an important part of the process, but these results are just hypothetical until a hardware test has been performed to validate real world performance. Detailed published experimental results of attitude determination performance are limited, since companies must protect their intellectual property. Most reports simply claim something along the lines of attitude error < 1 degree, without any justification or explanation as to how this number was derived and what the components of this error were. For the hardware tests to be informative, one must have a thorough understanding of the sources of uncertainty in the experimental test setup. In general, the work in this thesis primarily seeks to gain an in-depth understanding of the sources of uncertainty in a single-axis attitude determination test stand, with secondary objectives of developing sensor calibration procedures and determining the best attitude solution possible with the low-cost Commercial Off-The-Shelf (COTS) hardware. Objectives Achieve a detailed and quantitative understanding of all the sources of error and uncertainty in the experimental setup and data processing. Develop calibration and data processing methods for single axis attitude determination test stand. Ie. the spin table. Determine the minimum attitude error achievable with the given COTS hardware. (Camera, magnetometer.) 1

15 CHAPTER 1. INTRODUCTION 2 More specifically, the uncertainties due to calibration, alignment and timing are quantified. Through simulation these uncertainties are propagated into the attitude solution to give uncertainty bounds on the attitude solution. Using the truth encoder data available it will be shown that the predicted uncertainty bounds the attitude error, and thus all significant sources of uncertainty have been accounted for. 1.2 Previous Work and Context The idea behind the thesis is that the lessons learnt will be applied to validate and verify the attitude determination systems of small spin stabilized cubesats developed by Utah State University such as the DICE spacecraft [7] and the proposed follow up mission DIME [8]. DICE (Dynamic Ionosphere Cubesat Experiment) was a mission to observe an ionospheric space weather phenomenon known as storm enhanced density. To achieve this, the mission used two 1.5-Unit cubesats that were spin stabilised at a nominal rate of 0.2 Hz. The attitude sensors used were a Sun sensor and 3 axis magnetometer, and the attitude determination made use of the Triad algorithm. The most relevant work related to this thesis is that of Ryan [9] in his thesis Experimental Testing of the Accuracy of Attitude Determination Solutions for a Spin-Stabilized Spacecraft and the related conference paper by the same name [10]. In this work Ryan used the facilities of the Space Dynamics Laboratory (SDL) in Logan, Utah, to gather experimental magnetometer and Sun sensor data from a spinning spacecraft. He then compared the accuracy of various attitude determination algorithms. The resulting recommendation from this work was that a detailed uncertainty analysis into the error sources that degrade the attitude solution be performed. The follow-on to this work was undertaken by Kudaravalli [11], but due to access restrictions, advantage could not be taken of the Space Dynamics Laboratory test and calibration facilities or the hardware developed by Ryan. The hardware and test stand had to be redeveloped from scratch. The result of Kudaravalli s work was a single-axis spin table with integrated mock satellite, sensors and ground station for data logging. Notable differences in this setup over Ryan s work include the use of two magnetometers (one flux gate and one MEMS), wireless data logging, GPS time synchronisation between components and a CMOS camera based Sun sensor. (The Sun sensor used by Ryan was a proprietary SDL component.) Disadvantages of this set up over Ryan s are a lower count encoder, and no Helmholtz chamber due to time, money and space constraints. This thesis builds on the groundwork laid by Kudaravalli, to perform the hardware and test stand calibration and detailed error analysis of the attitude solution obtained from the COTS sensors.

16 CHAPTER 1. INTRODUCTION Approach The approach of this experimental work was as follows: First the hardware was configured and calibrated. Next, experimental data was gathered by performing a series of spin tests, where the spin table was used to rotate the satellite while logging both Sun and magnetometer data. Following this, the data reduction and calibration algorithms were developed in Matlab, and validated on simulated data. An attitude solution was calculated using the Triad method, and a detailed uncertainty analysis was performed to quantify the uncertainty in each stage of the data processing, and in the final attitude solution. 1.4 Thesis Overview Chapter 2, Literature Review & Background Theory, focuses on the required foundation theory of attitude determination, attitude sensors and uncertainty analysis. Chapter 3, Experimental Setup, discusses all the practical considerations of hardware, software and coordinate system definitions. Chapter 4, Sensor Calibration and Data Preprocessing, discusses the calibration, alignment and other corrections to the raw data that are required before an accurate attitude solution can be obtained, along with the elemental uncertainty of each process. Chapter 5, Attitude Uncertainty Analysis, presents the results of the attitude determination and a detailed uncertainty analysis of the attitude solution. This is done by propagating the elemental uncertainties determined in Chapter 4 through to the attitude solution. A comparison of the Triad, Q-Method and EKF is also made. Chapter 6, the Conclusion gives a summary of the work carried out, key findings, and makes suggestions for future work and improvements.

17 Chapter 2 Literature Review & Background Theory 2.1 Attitude Determination The satellite attitude determination problem is a state estimation problem. That of finding the rigid body rotation that maps from some inertial frame to the satellite body frame. The inertial frame typically used is the Earth Centred Inertial (ECI) reference frame. In the experiment in this thesis, a laboratory inertial frame will be defined as the frame that attitude is specified relative to. (Frame definitions are given in Chapter 3). To solve for the attitude, a minimum of two vector measurements are required in the body frame. Knowledge of these two vectors in the inertial frame is also required Attitude Representation The attitude state of a spacecraft can be represented in many ways. The most common representations are the Euler angles, and the quaternion. Other representations include the Direction Cosine Matrix, Euler axis and angle, the Rodrigues parameters and the modified Rodrigues parameters. Euler Angles Euler angles are the most intuitive attitude representation. A disadvantage of Euler angles is that they suffer singularities in some orientations. If the body frame and inertial frame start coincident, then the Euler angles are defined as the three rotation angles ψ, θ, φ about the body Z Y X axes that mechanically rotate the body frame to its final position. Different sequences are also possible. 4

18 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 5 Quaternions The quaternion is a hyper complex number that can be used to represent the attitude of the spacecraft. q = q 1 i + q 2 j + q 3 k + q 4 (2.1) The components of the quaternion are not independent, they must satisfy the unit norm constraint: q q q q 2 4 = 1 (2.2) Quaternions have one redundant parameter and no clear physical interpretation, but their use avoids singularities and trigonometric functions, which makes the mathematics efficient. It is possible to transform between any of the different attitude representations. For a complete listing and derivation of these transformations see [12] or [13] Attitude Error The attitude error is defined as the difference between the true attitude and the estimated attitude. This can be defined as three small Euler angles δφ, δθ, δψ. More conveniently, it can be defined by a single angle (from the angle-axis representation of attitude). In this case, the attitude error is the shortest rotation about a single axis that would bring the estimated body axes in line with the true body axes. Assuming the error is a small angle, the error quaternion can be written as the product (in the quaternion sense) of the truth and estimated quaternion inverse. The definition of the quaternion product and inverse is given in [12]. The single angle representing attitude error is then given by: q error = q true ˆq 1 (2.3) θ error = 2cos 1 (q err4 ) (2.4) Where q 4 is the scalar part of the error quaternion. This angle can also be arrived at by taking the root sum square of the Euler angle errors (small angle approximation). This will be important in analysis of the results in Chapter Attitude Determination Algorithms Attitude determination algorithms can be categorised in various ways. One way is to separate them into Static methods and Filtering methods. Static methods require that all measurements are made at the same time, or close enough in time that the spacecraft moves minimally between measurements. Filtering methods allow for the fact that measurements may come sequentially and there may be long times where measurements

19 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 6 may not be available. During the time between measurements, the attitude is propagated using a dynamic model of motion, or gyro measurements. Another way to classify algorithms is those that are deterministic and those which are stochastic. Deterministic methods use only the minimum number of measurements to calculate the attitude (3 unique pieces of information). Stochastic methods are employed to take advantage of a surplus of measurements, and to calculate the attitude solution that best fits those measurements. All stochastic methods can essentially be described by the Wahba problem, that is finding the orthogonal matrix with determinant +1 that minimises the loss function: L(A) = 1 N a i b i Ar i 2 (2.5) 2 i=1 Where, b i is the set of measured unit vectors in the body frame, r i is the same set of vectors in the reference frame, and a i are the weights. TRIAD Method[12, 14] The TRIAD (TRiaxial Attitude Determination) algorithm is a static, deterministic method. It requires two unit vectors, measured in the spacecraft body frame at the same time, which are typically the Sun and Magnetic vectors. Given that these two vectors are also known in the inertial frame, then the rotation matrix from inertial to body can be calculated. Although the rotation matrix has 9 elements, there are only 3 pieces of information in it. A unit vector has two unique pieces of information (two angles), thus two unit vectors provide a surplus of information. Since the TRIAD method is a deterministic method, one piece of information from one of the vectors must be discarded. Denote the two vectors in the body frame as b 1, b 2 and the same two vectors in the inertial reference frame as r 1, r 2. The Triad algorithm is based on the idea that if one has an orthonormal right-handed triad of vectors in the reference frame: {v 1, v 2, v 3 } and a corresponding right hand triad in the body frame {w 1, w 2, w 3 } the matrix that maps a vector in the inertial reference frame to the body frame is given by: Thus, The two triads can be constructed by: b ra = [w 1 w 2 w 3 ][v 1 v 2 v 3 ] T (2.6) w i = b rav i (2.7) v 1 = r 1 v 2 = r 1 r 2 r 1 r 2 w 1 = b 1 w 2 = b 1 b 2 b 1 b 2 v 3 = v 1 v 2 (2.8) w 3 = w 1 w 2 (2.9) Note that we are throwing away one angle from b 2, so it should be ensured that b 1 is the more accurate vector. (Usually the Sun vector.) The attitude matrix will be undefined if the reference or body vectors are parallel.

20 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 7 q Method The q Method is a solution to the Wahba problem using the quaternion representation of attitude instead of the attitude matrix. Thus, it can be classified as a static, stochastic solution method. One possible solution implementation for the q Method uses singular value decomposition, which is robust but requires many more floating point operations that other algorithms [15]. The q Method allows for two or more vector measurements to be input, each measurement has its own weight. Other algorithms that solve the Wahba problem include QUaternion ESTimator (QUEST), Fast Optimal Attitude Matrix (FOAM), and Estimator of the Optimal Quaternion (ESOQ). These algorithms are slightly less robust, but offer large speed enhancements. They also avoid singularities by employing a rotated reference system [16]. Kalman Filter Filtering approaches, also known as sequential state estimation are the most common techniques employed on modern spacecraft. The most commonly employed filtering approach is the Extended Kalman Filter (EKF). The go-to work in the application of the EKF to attitude estimation is the 1982 paper Kalman Filtering for Spacecraft Attitude Estimation[17] by Lefferts, Markley and Shuster. The EKF is able to sequentially incorporate attitude measurements into the attitude solution as they become available. In-between measurements the attitude is propagated using either a dynamic model or, angular rate measurements from a gyroscope. The replacement of the dynamic model by gyroscope measurements greatly simplifies the problem. This means that gyro data is not treated as a measurement, the gyro noise appears as process noise rather than measurement noise. Filtering methods can provide a more accurate attitude solution than static methods, because they incorporate the history of prior measurements. Another advantage of filtering methods is that they may be extended to estimate other desired parameters, such as sensor biases. Usually the quaternion is the representation of choice in the Kalman filter because it is the lowest dimension representation that avoids singularities. But the update process in the filter leads to a violation of the unit norm constrain on the quaternion. Various methods for dealing with this are summarised in [17, 12]. 2.2 Spin Stabilized Spacecraft Spin stabilized spacecraft attitude determination was widely used in the 70s due to many spacecraft being spin stabilized. These days, most spacecraft are three-axis stabilized and use 3-axis attitude determination methods. There are still missions that use spin-stabilization as it is much simpler and reliable than three-axis stabilization. Spinstabilization often makes sense for small cubsat missions that have limited space available for attitude control systems. (Spin stabilization can be controlled with a simple magnetorquer that can be integrated into the spacecraft structure.) The nature of attitude determination for spin stabilized spacecraft is characteristically different to three axis

21 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 8 spacecraft. The fact that a stabilized spacecraft is always in motion rules out the use of star trackers, since they generally cannot tolerate angular rates of more than 1 degree per second. The DICE spacecraft had a nominal spin rate of 0.2 Hz (72 /S), and a maximum spin rate of 2 Hz. The sensor measurements may be largely spaced due to spinning and the Sun and Earth are frequently passing in and out of the sensors fields of view. At a fundamental level, classic spinning spacecraft attitude determination typically makes use of angle measurements and spherical trigonometry (eg Earth horizon sensors), while 3-axis methods typically use vector measurements [18]. This thesis will look at the application of 3-axis attitude determination methods to spinning spacecraft, using the most common sensor combination, that is a Sun sensor and magnetometer. 2.3 Sensors Magnetometer A magnetometer is a sensor used to measure the inertial magnetic field at a point in space. Vector magnetometers measure both direction and magnitude of the magnetic field, while scalar magnetometers measure only magnitude. Magnetometers may be employed for varying reasons on spacecraft. They can be used in the attitude determination and control, or they could form part of the payload of the spacecraft in scientific missions. From here on the discussion is only concerned with the application of magnetometers to the attitude solution. For use in computing an attitude solution, magnetometer data must be compared to an accurate magnetic field model. (This limits the use of magnetometers to low-earth orbit)[12] There are several main-field models available for Earth with varying degrees of accuracy. Two such models are the International Geomagnetic Reference Field (IGRF) Model which is used by the international scientific community and the World Magnetic Model (WMM) used by NATO, the U.S. and U.K. departments of defence [19]. The fidelity of the model used for spacecraft attitude determination is usually around the 10 th order, some real examples are given in Table 2.1 below. At higher altitudes it is possible to use a truncated model without loss of accuracy [13]. Typical errors in the IGRF model have been shown to be around 1% in magnitude [20] (a few hundred nt in LEO), this is usually the factor that limits the accuracy achieved by magnetometers, resulting in angle accuracy of a few degrees. Mission Freja Orsted SAMPEX Magnetic Field Model IGRF 10th order IGRF 8th order IGRF 10th order Table 2.1: Geomagnetic field models used

22 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 9 Magnetometers are frequently mounted away from the spacecraft body on a long boom. This is in order to reduce distortions to the magnetic field being measured caused by the spacecraft. (magnetic dipole field is proportional to 1/r 3 so just a small distance has a large effect.) Sources of interference could be nearby ferrous metals, current loops in solar arrays, electric motors, instruments and torquers. The sources of interference are usually categorised as hard and soft iron effects. The method to compensate for these is discussed in calibration Chapter 4. If instruments on the spacecraft are powered on and off, then there could be time varying disturbances. Springmann[21] presents a method of accounting for time varying disturbances in the calibration by measuring the current in nearby electronics and mapping it to the magnetometer bias term in the calibration. Magnetic Field is often used in literature to refer to both magnetic flux density (B) and magnetic field strength (H), although they are not quite the same thing. In SI units B is measured in Tesla [T] which is equivalent to [(volt.second)/metre 2 ] or gauss [G] in cgs units, while H is measured in [Amperes/metre] in SI units and Oersted [Oe] in cgs units. They are related through: B = µh (2.10) Where µ is a material dependent parameter called the magnetic permeability. In cgs units the magnetic permeability of air is 1, thus magnetic flux density and field strength are often used interchangeably. Magnetometer Types There are several different types of magnetometer available. Most spacecraft use fluxgate magnetometers [13] although with the increasing popularity of smaller spacecraft MEMS magnetometers are becoming more abundant. Fluxgate Magnetometers A flux gate magnetometer consists of two coils. The inner drive coil is wound around a highly permeable core. This is surrounded by a secondary sensor coil. An alternating current is passed through the drive coil. The drive coil and core form an electromagnet, that is continuously cycled on and off to magnetic saturation in alternating directions. This magnetic field induces a current in the secondary sensor coil. If there is no background magnetic field, the input (drive) and output (sense) currents match. If there is a background field present, then the core will more easily saturate when the background magnetic field is aligned with the created field, and less easily in the opposite direction. The voltage measured across the sense coil is proportional to the field strength, while the phase indicates the direction. MEMS Magnetometers There are many different principals used by Micro Electro Mechanical magnetometers to measure magnetic field: Hall effect, giant magnetoresistance, Lorentz force, magnetic tunnelling junction sensing, and Anisotropic Magneto- Resistance (AMR). Perhaps the more common design found in present day consumer

23 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 10 electronics is the Anisotropic Magneto-Resistive Sensor. As the name suggests the resistivity of the material used in the sensor is dependent on the magnetic field. This works on the principle that the material used changes its electrical resistivity in the presence of an external magnetic field. Resistance is a maximum when the direction of applied current is parallel to the magnetic field, and minimum when the current is perpendicular. In a AMR base magnetometer, four identical AMR elements are placed in a wheatstone bridge configuration. In zero magnetic field, the output voltage from the bridge is half the input voltage. If there is a magnetic field, the output voltage changes in relation to the relative angle between the bridge elements and the magnetic field. The resistance of an element changes approximately with the square of the cosine of the angle [22]. Three orthogonal bridges must be used to sense the magnetic field in each axis. Measurement Model A complete measurement model of a magnetometer is given below: ˆB = S M C NO (C SI B + b HI ) + b M + ε (2.11) where ˆB is the reading from the 3 axis magnetometer in the sensor frame. B is the errorfree magnetic field in the sensor frame. S M is the magnetometers scale factor matrix. C NO is the non-orthogonality correction matrix. C SI is the soft iron correction matrix. b HI is the hard iron offset bias. b M is the magnetometer bias. ε is white Gaussian noise from the sensor (ε N(0, σε)). 2 By expanding 2.11 and combining terms an equivalent simplified measurement model is: Where, ˆB = SB + b + ε (2.12) S = S M C NO C SI (2.13) b = S M C NO b HI + b M (2.14) A summary of all the components that make up the measurement model are given below. Scale Factor While not strictly an error in the traditional sense of the word, the scale factor is the proportionality constant that relates the raw ADC output in counts to engineering units (for example Tesla). Scale factor is also referred to as sensitivity in some texts. This is modelled by a diagonal matrix. s x 0 0 S M = 0 s y 0 (2.15) 0 0 s z

24 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 11 Nonorthogonality During manufacture of any 3 axis sensor it is impossible to align all three axes perpendicular to one another. If N is a matrix whose column vectors are unit vectors describing the direction of each sensor axis in the sensor frame, then the inverse of N rotates a vector to the nonorthogonal frame: [23] Note that this definition assumes that each component of the raw measurement contributes an equal portion of its self to the two other calibrated axes. This means that matrix is symmetric. Another method of modelling nonorthogonality is to nominate one axis as error, the remaining two axes are assumed to have been rotated out of alignment slightly. This method results in a non-symmetric matrix [24]. C NO = N 1 = [ ε x ε y ε z ] 1 (2.16) Bias Bias is sometimes also referred to as offset. This error manifests itself in the measurement as a constant offset added to the sensor values. b M = [ b x b y b z ] T (2.17) Magnetic Field Specific Errors There exists a further type of error, that is not caused by the instrument itself but rather it s host platform. Ferromagnetic materials and electromagnetic systems attached to the satellite in the vicinity of the sensor will perturb the magnetic field being measured. These perturbations will cause artificial bias, scale factor and nonorthogonality errors.[23] These are called Hard Iron and Soft Iron errors. Hard Iron Errors Hard iron distortions to the magnetic field are caused by permanent magnets attached to the spacecraft frame in the vicinity of the sensor. These permanent magnets may arise from ferrous materials becoming magnetized or by fields from electronic systems. The effect is the same as a bias and can be modelled the same way as the sensor bias. b HI = [ b HIx b HIy b HIz ] T (2.18) Soft Iron Errors Soft iron errors also distort the local magnetic field around the sensor, but the effect is not constant, it is a magnetic induction, the magnitude of which depends on the relative orientation of the Earth s magnetic field and the soft iron. Hence as the satellite rotates, the magnitude of the soft iron disturbance changes. An example of a soft iron disturbance is a ferro-magnetic material. The effect is like a combination of scale

25 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 12 factor and non-orthogonality and may be modelled by a 3x3 matrix. c 11 c 12 c 13 C SI = c 21 c 22 c 23 (2.19) c 31 c 32 c 33 Temperature Induced Errors Temperature effects will not be considered in this thesis but are mentioned here for sake of completeness. The magnetometer measurement model parameters will also display a dependence on temperature. To account for this, each coefficient described above can be described by a polynomial that is a function of temperature [25]. For example: B x = B x0 + B x1 T + B x2 T 2 + B x3 T 3 (2.20) Geometric Interpretation of Errors If a triaxis magnetometer is placed in a constant magnetic field and rotated in all directions to gather x y z data, and then this data is plotted in 3D, we should ideally have a perfect sphere, centred on the origin. Because of the errors described above, what one actually ends up with is a distorted sphere (an ellipsoid), no longer centred on the origin, but shifted by the bias. The scale factor has the effect to grow or shrink the sphere in the x y and z axes. The nonorthogonality will have the effect of rotating the axes of the ellipsoid. Hard iron will have the same effect as a bias, and soft iron will have the combined effects of scale factor and nonorthogonality. (that is a stretching and rotation.) The measurement noise has the effect of roughening the surface of the ellipsoid [2]. Figure 2.1: Effect of errors on the magnetic field measurement locus in 2D, figure courtesy of [2].

26 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY Sun Sensor Together with magnetometers, Sun sensors are one of the most widely used sensors. This is due to the convenience of the Sun as an inertial attitude reference; It s sufficiently bright to be easily detected, and it s sufficiently small at 1 AU distance that it can be approximated as a point light source throughout an orbit. (It s angular radius is approximately degrees.) A major disadvantage of Sun sensors is that the sun may not visible for the entire orbit period. Typically, Sun sensors are categorised by their accuracy as either Coarse Sun Sensor (CSS) or Digital Sun Sensor (DSS). The resolution can be anything from binary (sun present or not) to the arc second range. The field of view can be up to 128 deg 128 deg. CSS are usually analog photocells, of which the output current is proportional to the cosine of the angle of incident light. The field of view of a single photocell is conical. Several photo cells may be arranged in a geometric pattern to increase the effective field of view. A single photocell can only determine the sun angle relative to its normal axis, thus sometimes A mask may be used over a grid of photocells to provide one or two axis sun angles. Traditionally, DSSs have used an array of slits with linear photosensitive surfaces behind them. Incident light shines through an entry slit and casts a strip of light on a series of exit slits positioned over photos cells. The exit slits are in a grey code pattern, so that the angle of the Sun can be related to a binary number. Two of these devices may be placed in a perpendicular arrangement to determine the Sun direction in two axes. A modern DSS is essentially a star tracker, that tracks a single star, although the optics are not required to focus the sunlight because the Sun s brightness is sufficient, instead a pinhole aperture is used. This is the type of Sun sensor that is used in this thesis, although the optics have been left in place to save development time, it also means accurate Sun replication is less critical, and that shorter exposure times can be used, thus increasing Signal to Noise Ratio (SNR). This is discussed further below. Sun Sensor Model In the following section the detailed measurement model for the sun sensor is developed. The model is essentially that of a camera. The model combines the pinhole camera model with a lens distortion model, since a traditional pinhole camera model does not have a lens. Pinhole Camera Model The pinhole camera consists of just a small aperture and an image plane. Light rays from the external world pass through the aperture or focal point and project an inverted image onto the image plane. The focal length is the distance between the focal point and the image plane. The virtual image plane is a useful idea, it can be thought of as a virtual plane between the focal point and the 3D scene, its image will be upright, and the magnitude of its distance in front of the camera is also the focal length. The pinhole camera maps a 3D world point to a 2D image point by a rigid 3D transformation followed

27 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 14 by a 2D projection, summarised by Figure 2.2 below. Figure 2.2: Mapping from 3D world to 2D image with the pinhole camera model. Figure adapted from [3]. The pinhole camera equation that maps a point [X Y Z] T in the 3D world coordinate system to the camera 2D image plane [u v] T is given in equation (2.21) below, where the components of the equation are, K, the intrinsic matrix, T the extrinsic matrix, w a scale factor, they are elaborated in the subsequent sections. X u w v = KT Y Z (2.21) 1 1 Intrinsic Parameters The intrinsic parameters are used to perform the 3D to 2D projection. Intrinsic parameters are those that do not change with the scene being photographed. They include the optical centre (c x, c y ) of the image, the focal length (f x, f y ) and perhaps the skew coefficient (s), if the camera model accounts for non-rectangular pixels. The optical centre is the point on the image plane where a perpendicular ray would land if it passed straight through the focal point. The intrinsic parameters are combined in a matrix, K defined in equation (2.22), that represents a projective transformation from 3D camera coordinates to 2D pixel coordinates. f x 0 0 K = s f y 0 (2.22) c x c y 1 Extrinsic Parameters The extrinsic parameters describe the location of the camera in the 3D world scene. The extrinsic parameters are the rotation and translation that take a point in the 3D world coordinates and represent it in the camera coordinates. (ie. a rigid transformation.) They are defined by the 3x4 transform matrix T (2.23). The camera coordinate system has its

28 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 15 origin at the focal point and its axes parallel to the image plane. r 11 r 12 r 13 t 1 T = r 21 r 22 r 23 t 2 (2.23) r 31 r 32 r 33 t 3 Lens Distortion As mentioned, a pinhole camera does not account for lens distortion, as it has no lens, only an aperture. Thus lens distortion must be included in the Sun sensor model. The lens distortion model includes effects from radial and tangential distortion. Radial distortion occurs when the rays from the edge of the lens bend more than at the centre, as occurs with a wide angle fisheye type lens. Tangential distortion occurs due to the the lens and sensor plane not being parallel. The distorted image points are related to the undistorted points by equation (2.24) below. There are 3 radial distortion coefficients k 1, k 2, k 3 and two tangential coefficients p 1, p 2. x, y are the undistorted normalized image coordinates, obtained by translating to the optical centre and dividing by the focal length. x dist = x(1 + k 1 r 2 + k 2 r 4 + k 3 r 6 ) + 2p 1 xy + p 2 (r 2 + 2x 2 ) y dist = y(1 + k 1 r 2 + k 2 r 4 + k 3 r 6 ) + 2p 2 xy + p 1 (r 2 + 2y 2 ) r 2 = x 2 + y 2 (2.24) Sensor Characteristics Effecting Accuracy [26]. Signal to Noise Ratio The SNR determines how well the Sun can be detected. It is given by: SNR = I S RMS I N RMS (2.25) Where, I S RMS is the root-mean-square of the pixels that form the Sun spot, and I N RMS is the root-mean-square of the surrounding pixel intensities not part of the spot. Pixel Size The electron (signal) generation of a pixel is proportional to its size and quantum efficiency. Larger pixels can collect more photons and thus generate more electrons (signal), and thus give a higher SNR for a given exposure. The noise is proportional to the square root of the sensor area, thus doubling the linear dimensions of a pixel will double the SNR. Digital Gain Digital gain, also known as ISO speed amplifies the signal (and noise). Exposure Time The exposure time has a direct effect on noise. Shorter exposures will have less noise, but require a brighter subject. Dark Current Dark current is the current that comes from the photocells even when there are no photons entering the cell. This has the effect of reducing the electron capacity of the photocell, and thus lowers the dynamic range. Calibration methods known as Dark current subtraction exist to reduce the effect. Dead & Hot Pixels A dead pixel produces no signal, while a hot pixel produces the same signal no matter its level of illumination. Techniques to deal with these are based on filtering.

29 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY Uncertainty Analysis [1] Test and Experimentation Why do engineering experiments when we have powerful computers available these days for simulation? Perhaps analysis predicts that a new ADCS gives attitude errors of less than 10 arc seconds, but when the mission is highly dependent on accurate attitude control, who is prepared to launch that system on a satellite without testing it first to see if theory matches reality? Perhaps they don t match, why? Can the discrepancy be narrowed? In some situations, experimentation can be replaced by the use of powerful computers which saves time and money, but experimentation still holds an important role in modern engineering. Experimentation is still performed for a variety of reasons: To gather data points to build an empirical model of a highly complex system that has no analytical model. To gain data on physical properties and constants. To validate simulation results. To discover unexpected interactions in complex systems, and fix them before deployment Errors An error δ is the difference between a quantity (measured or simulated) and its true value. Typically, one assumes that all errors of known sign and magnitude have been removed (calibrated) thus by definition, the remaining error is of unknown sign and magnitude Uncertainties Although one does not know the error of a measured variable X meas, it can be characterised by an uncertainty, U that contains the error. Equivalently we could state that the true value of X lies in the interval ±U around X meas with some associated level of confidence. Uncertainty analysis is the detailed estimation of these uncertainty intervals for experimental measurements and further results derived with those measurements. The uncertainty is essentially a measure of the goodness of the data. Without an uncertainty analysis the data has limited utility, this is why an uncertainty analysis is a highly important aspect of any experiment Calibration Many engineers mistakenly believe that calibration completely removes all effects of systematic errors. In general calibration is the process of comparing the output of an instru-

30 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 17 ment to a standard of known higher accuracy. So in effect, it is the process of replacing the systematic measurement errors of an instrument with a smaller systematic error of the standard. (Hopefully much smaller, so they can be considered negligible.) Elemental Sources of Error Consider the experimental measurement of a single variable, X whose true value, X true is constant. The measurement of this variable is influenced by several elemental sources of error. For example: errors in the standard used for the calibration of the instrument, errors caused by imperfect installation of the instrument, errors caused by variations in ambient conditions: variations in temperature, pressure, humidity, vibrations, magnetic field fluctuations, nearby electronic devices powering on and off. Some of these error sources may be constant from measurement to measurement (such as calibration and installation errors) while others may fluctuate (ambient conditions). Now consider repeated readings are taken from the measurement system. The results are plotted on the histogram below: Figure 2.3: Repeated readings from an instrument, adapted from [1]. Error sources that vary between measurements are called random errors (s x ) and contribute to the spread of the histogram, while those that remain constant are denoted systematic errors (b x ), and result in a mean value that is displaced from the true value. It should be noted, that by just looking at the measured values of X one cannot identify the different random and systematic errors sources from one another, since we can only observe their combined effect. Neither can the systematic errors be measured, they must be estimated using the techniques of uncertainty analysis. We can however, identify the net result of the random error sources - this is the standard deviation of the histogram.

31 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 18 Standard Uncertainties Each elemental error source is characterised by its standard uncertainty, u. Systematic standard uncertainties are designated b i and random standard uncertainties are designated s i. The ISO guide to the Expression of Uncertainty in Measurement [27] defines the standard uncertainty as an estimate of the standard deviation of the parent population from which a particular elemental error originates. This is true for both systematic and random errors. The combined standard uncertainty of a measured variable u x is obtained from combining the elemental random and systematic uncertainties in a root sum squared sense: u c 2 = s x 2 + b x 2 (2.26) Overall Uncertainty of a Measured Variable The overall or expanded uncertainty of a measured variable U % is the interval around our measurement which will contain the true value. (To some level of confidence). To estimate the overall uncertainty in the measured variable X, the combined standard uncertainty is expanded to some confidence interval by multiplying it by the appropriate coverage factor t % such that: U % = t % u c (2.27) The ISO guide [27] suggests that a coverage factor be used to obtain the expanded uncertainty at a t% level of confidence, and that this factor is looked up from the t-distribution. In order to use the t-distribution we require the number of degrees of freedom of the uncertainty estimate to select the appropriate factor. [1] state that for most real engineering applications where there are many error sources, it is sufficient to use the Gaussian value for a given level of confidence, eg. 2 for 95% and 2.6 for 99% confidence.

32 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY Propagation of Uncertainty to a Calculated Result Frequently we will be interested in not just the uncertainty in a directly measured variable, but also in the uncertainty in some result calculated from multiple measured variables that were fed through a data reduction equation. This situation is depicted in Figure 2.4 below. Figure 2.4: Experimental result calculated from multiple measured variables, each with elemental error sources, adapted from [1]. In this thesis the main measured variables are the magnetic vector and the Sun vector, and the final data reduction equation is the attitude determination algorithm: the Triad algorithm. Coleman and Steele [1] state that there are realistic cases where all measurements in an experiment can be made with 1% uncertainty, but the uncertainty in the final calculated experimental results will be greater than 50%. Furthermore, if the system is highly nonlinear the uncertainty interval of the result may be asymmetric. This highlights the importance of proper uncertainty propagation, a cornerstone of uncertainty analysis. The commonly accepted methods to propagate uncertainties in use today are the Taylor Series Method (TSM) and the Monte Carlo Method (MCM) [1]. They will be outlined in the following sections. Overall Uncertainty of a Result Similar to the overall expanded uncertainty of a single variable, the standard uncertainty of a result calculated from multiple variables can be expanded to a certain confidence level by multiplying it by the appropriate coverage factor: U r = t % u r (2.28)

33 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 20 Taylor Series Method of Uncertainty Propagation For the case where the result, r is a function of several measured variables X 1 X J, the standard uncertainty of the result is given by: u r = (b r 2 + s r 2 ) 1/2 (2.29) where b r is the standard systematic uncertainty of the result, and is given by: ( ) 2 ( ) 2 ( ) 2 r r r b 2 r = b 2 X X 1 + b 2 X 1 X b 2 X 2 X J + ( ) ( J ) r r +2 b Xi X X i X k + k (2.30) While, s r is the standard random uncertainty of the result, and is given by: ( ) 2 ( ) 2 ( ) 2 r r r (s r ) 2 T SM = s 2 X X 1 + s 2 X 1 X s 2 X 2 X J (2.31) J The b xi and s xi terms are the combined systematic and random standard uncertainties of the i t h measured variable respectively. b xi x k and s xi x k are called the systematic and random covariance factors for the pairs of variables which share common elemental systematic or random error sources. Correlated systematic error sources frequently appear in experiments, such as when multiple sensors are calibrated against the same standard. Correlated random errors on the other hand are traditionally assumed to be zero, but there are certain cases where they cant be neglected. Correlated errors can have the effect of increasing or decreasing the total uncertainty of the result. It depends on the signs of the partial derivatives and the covariance factors. It should be noted that the TSM is an approximation that only includes the first-order terms of the Taylor Series, and that the derivatives are evaluated at the measured values of the variables and not the true values, but for most real engineering problems these approximations are reasonable [1]. Monte Carlo Method of Uncertainty Propagation The Monte Carlo Method for uncertainty propagation is extremely powerful and can be used to easily handle complex data reduction equations and correlation between error sources. To begin, the true value of the variables is input into the simulation. Since these are not known, they are approximated by the best measured values available. Next the estimates for the standard random and systematic uncertainties are entered. The random errors are usually assumed to come from a Gaussian parent distribution, while the parent distribution of the systematic error sources could be assumed Gaussian, or any other appropriate distribution. A sample is drawn from each error s parent distribution, and this is added to the true value of the effected variable to simulate a measurement. The measured variables are then fed into the data reduction equation and the result

34 CHAPTER 2. LITERATURE REVIEW & BACKGROUND THEORY 21 is calculated. This process is repeated to build up a distribution for the possible result values. The iteration is stopped when a converged value for the standard deviation, s MCM of the result is obtained. This is then used for the estimate of the combined standard uncertainty of the result. Once again this standard uncertainty is then expanded to obtain the overall uncertainty in the result by multiplying it by the appropriate coverage factor. The number of iterations required can be reduced by using strategic sampling methods, such as orthogonal sampling.

35 Chapter 3 Experimental Setup 3.1 Hardware Spin Table The Spin Table, constructed by Kudaravalli [11], is the heart of the attitude determination test stand. It has a single axis of rotation aluminium spool. The spool has 5 1/4 tapped holes for mounting the spacecraft to. The spool sits on top of a 7202 BEP thrust bearing. The thrust bearing is held in position by a custom machined bearing bracket. All of this is mounted to a 620mm x 620mm x 810mm aluminium table constructed of T-slot extruded aluminium profile. A motor with integrated encoder is mounted to the underside of the table to drive the spool. Figure 3.1: Spin table. 22

36 CHAPTER 3. EXPERIMENTAL SETUP 23 Motor / Encoder The spool of the spin table is connected to a motor through a flexible shaft coupler. The motor has an integrated gear head and encoder. The gear head has a reduction of 4.8:1. The incremental optical encoder gives 500 counts per revolution, which is quadrature decoded to 2000 counts per revolution. It also features an index pulse, which is used to set the home position of the table. After quadrature decoding and the gear reduction there are 9600 counts per revolution of the spin table. The encoder pulses are decoded and buffered by a LS7366R quadrature counter integrated circuit. The motor speed and direction is controllable by the use of an H-bridge. The position of the spin table can be set through a Proportional Integral Derivative (PID) controller implemented by Sorensen [28]. The motor is able to handle 18V but is run at 3.3V to achieve the lower speeds desired and prevent H-bridge burn-out. The H-bridge and encoder buffer are controlled by a Raspberry Pi 3, mounted to the underside of the table. Motor Model Maxon RE Type DC, graphite brushed Max Spool rate 3.3V Gear Head Type Planetary Model Maxon GP 32 A Reduction 4.8:1 Encoder Type Optical, incremental, quadrature w/ index pulse Model Avago HEDS-5540-A11 CPR 500 Encoder buffer Superdroid Robotics Quad LS7366R Sample rate 30kHz H Bridge Model Adafruit DC & Stepper Motor HAT Driver TB6612 Speed resolution 8 bit Current 1.2A Table 3.1: Spin table specifications Satellite The mock satellite s purpose is the hold all of the sensors, It is 3D printed from plastic. Initially designed by Kudaravalli [11] and modified later by Babb [29]. The satellite holds

37 CHAPTER 3. EXPERIMENTAL SETUP 24 the camera, a flux gate magnetometer, an Inertial Measurement Unit (IMU), a battery, a Raspberry Pi 2, a 5V to 28V DCDC converter to power the flux gate magnetometer and a GPS receiver for time synchronisation. Figure 3.2: Mock satellite Onboard Computer The data logging of sensors on the spacecraft is controlled by an on-board Raspberry Pi 2, with a Wifi dongle for transmitting the data over the network to the ground station. The sensors Raspberry Pi runs separate threads for each sensor. The camera and flux gate magnetometer are sampled at 30 Hz, while the IMU is sampled at 100 Hz. To power the satellite a 5V 10,200 mah Li-Ion battery is mounted to its base. IMU The Inertial measurement unit is primarily used for its magnetometer, but also includes a three axis gyroscope and accelerometer. This provides the ability to include these measurements for future experiments. It uses a single byte protocol communicated over RS232, but is interfaced to the Raspberry Pi with USB via an adapter. The IMU is sampled at 100 Hz.

38 CHAPTER 3. EXPERIMENTAL SETUP 25 Figure 3.3: IMU [4] Model Supply voltage Range Non-linearity Bandwidth Sample rate Resolution Lord MicroStrain 3DM-GX V - 16V ±250,000 nt ±0.4% FS 230Hz max 100Hz (7.5kHz max) 7.6 nt Table 3.2: IMU magnetometer specifications. Flux Gate Magnetometer The Three Axis Flux gate Magnetometer (TAM) used was a navigation-grade Dowty Magnetics TAM7 Mk II produced in the 90 s. This type of magnetometer found use on unmanned aircraft. It is an analog instrument, so a 16 bit Texas Instruments ADS115 ADC was used. This operated with a full scale of ±6.144V which, when combined with the 0-5V output of the TAM gave a resolution of 9nT. Figure 3.4: Flux gate Three Axis Magnetometer Model Supply voltage Range Non-linearity Bandwidth ADC sample rate Resolution Dowty Magnetics TAM7 Mk2 22V - 30V ±60,000 nt ±0.1% max 80Hz max 30 Hz 9 nt Table 3.3: Dowty magnetometer specifications.

39 CHAPTER 3. EXPERIMENTAL SETUP 26 Sun Sensor A CMOS camera was used as the digital Sun sensor. The camera connects to the Raspberry Pi via a Mobile Industry Processor Camera Serial Interface Type 2 (MIPI CSI-2). The sensor array itself is 5MP 1/4, but is used at 30 FPS to reduce the data volume. When combined with the 1/4 adjustable focus lens it gives an 80 degree horizontal field of view. The sensor is a rolling shutter type, but no adverse effects from this were observed at the rotation rates used in this experiment. Figure 3.5: Camera used as digital Sun sensor[5]. Model Waveshare RPi Camera (G) Sensor Omnivision OV5647 CMOS 1/4 Voltage 3V Resolution 320x240 (5MP max) Lens M12 Fisheye 1/4 adjustable Aperture 2.35 Table 3.4: Camera specifications Sun The Sun is simulated by the use of a high intensity LED flashlight. It is mounted to an optical bench at a distance of 6.5m from the spin table. It was discovered that as the batteries discharged the brightness of the Sun decreased significantly, so the light was powered via a laboratory power supply at 3V. Model Power luminous intensity luminous flux Mini Maglight Pro 3V, 0.6 A 6613 cd 272 lm Table 3.5: Sun proxy specifications.

40 CHAPTER 3. EXPERIMENTAL SETUP GPS Time synchronisation is achieved through the use of GPS. Both the Satellite Raspberry Pi and Encoder Raspberry Pi are equipped with a GPS receiver to enable time synchronisation between the two. The GPS is based on the GlobalTop FGPMMOPA6H GPS Module. The GPS sends a Pulse Per Second (PPS) signal to a pin on the Raspberry Pi. When this PPS is received it triggers a high priority interrupt that retrieves the system time stamp of the Pi and this enables synchronisation of the two Pis system clocks. In order to get a GPS signal inside the laboratory a BlueSky Technology BA-50 GPS repeater was used. Model Chipset Power Time to fix PPS accuracy Adafruit Ultimate GPS Breakout MediaTek MTK MT3339 5V 20mA Hot start: 1 sec, Cold start 35 sec 10 ns Table 3.6: GPS specifications. 3.2 Software The ground station communication and data logging was achieved via COSMOS which is a user interface for command and control of embedded systems. The user interface provided the means to view data live, as it was recorded and sent over WiFi. It also provided a Graphical User Interface (GUI) which allowed the control of the spin table motor and the camera. These features proved vitally important in testing and debugging the experiment. COSMOS was able to record telemetry files, that were then extracted to text files and processed in Matlab. All embedded and ground station programming was done by Sorensen[28]. Figure 3.6: Ground station GUI.

41 CHAPTER 3. EXPERIMENTAL SETUP Coordinate Frames Inertial Frame The inertial frame is defined by the body frame when the encoder is in its home position and reads zero counts Body Frame The spacecraft body frame is defined by the spin axis, magnetometer and Sun sensor via the following: The Origin sits directly behind the Sun sensor, it is defined as the intersection point of the sun sensor Z axis and the spin axis of the spacecraft. The Z body axis of the spacecraft points along the spin axis of the spacecraft in the down direction. The spacecraft body X and Y axes are defined from the magnetometer s X and Y axes when the magnetometer Z axis has been aligned with the body Z axis, (whichever magnetometer is being used for the attitude solution). Figure 3.7: Body frame. (Sensor frames also shown with exaggerated misalignment)

42 CHAPTER 3. EXPERIMENTAL SETUP IMU Magnetometer Frame The IMU magnetometer axes origin is 8mm from the geometric centre of the IMU. The axes form a right hand system, with Z pointing down, almost in line with the body Z axis, and X and Y roughly in the spin-plane of the satellite Dowty TAM7 Mk2 Magnetometer Frame No information could be found for the Dowty TAM sensor origin, so its origin was defined at the geometric centre of the unit, the Z, Y and X axes are in the same direction as the IMU magnetometer. Figure 3.8: Magnetometer frames Sun Sensor Frame The origin of the Sun sensor is at the focal point of the camera. The Z axis is camera bore sight. The X axis point horizontally in the positive spin direction. The Y axis points down.

43 CHAPTER 3. EXPERIMENTAL SETUP 30 Figure 3.9: Sun sensor frame. 3.4 Practical Considerations This section describes miscellaneous practical issues that relate to the experimental setup Inertial Magnetic Field As there was no Helmholtz cage available, the experiment had to assume that the inertial magnetic field was constant over the duration of the experiment to enable comparisons between data sets. The viability of this assumption was checked by leaving the spacecraft in a static position and logging data over various time frames. In general, it was found that over short periods of a few hours the inertial magnetic field was steady enough to consider constant. But, on some occasions it did change direction rapidly over the course of a few minutes. It is not known what was the cause of these changes. Possibly equipment in the building or neighbouring rooms being turned on and off. On the occasions that a change occurred during data gathering, the data set was thrown out and entire logging process was restarted. Ideally, the spin table would be located in the centre of a large room away from any potential sources of magnetic interference, but this was not practical given available resources. An investigative survey of the magnetic field was conducted in the vicinity of the spin

44 CHAPTER 3. EXPERIMENTAL SETUP 31 table, by use of a jig and an accurate MEDA FVM400 magnetometer. The jig was a very low-tech cardboard box geometrically marked into quadrants. The magnetometer was held at the marked locations while the field was recorded. These recordings along with the box geometry were plotted. The results are plotted below. The maximum, minimum and mean magnitude were 46,500 nt, 35,800 nt and 41,000 nt respectively. It can be seen that the field is in a mostly vertical direction. In the experiment, the inertial magnetic field was estimated by using the magnetometers mounted on the spacecraft. This is described in Chapter 4. Figure 3.10: Direction of inertial magnetic field, from 3 different surveys conducted on two separate days Motor Interference Initially, it was feared that the proximity of the motor to the magnetometers would contaminate their measurements. Tests were performed to evaluate this hypothesis. The motor was disconnected from the spin table spool, and data was logged for the case of the motor static and spinning at various speeds. This had no observable effect on the inertial magnetic field. (See Figure 3.11 below). Note, the IMU magnetometer and Dowty TAM show different magnetic field, since they have slightly different location and alignment.

45 CHAPTER 3. EXPERIMENTAL SETUP 32 Figure 3.11: No observable effect of motor on inertial magnetic field. Graph shows magnetic field while motor was static and spinning, while disconnected from the satellite. (Motor position is plotted on horizontal axis.) Camera Interference Through the use of the COSMOS interface, it was discovered that when the camera was powered on, there was a step change in the Dowty TAM Y channel, along with small increase in noise. The fact that this effect did not happen to the IMU magnetometer suggests that this was not a true magnetic bias, but rather something in the circuitry. Just to be sure, the distance between the camera and TAM was manipulated, but this had no effect on the TAM s bias. It was thought that perhaps the reference voltage on the TAM s ADC was effected when the camera powered on, but this effect would likely be observed in all three of the TAM channels if that were the case. Although the root cause of this interference was not determined, it was managed by ensuring that the magnetometer calibration was performed while the camera was on, thus accounting for this bias error Geometry The inertial magnetic field had a strength of around 41,000 nt and was mostly vertical. The Spin table had to spin in the horizontal plane, forcing the Sun to be mounted in this horizontal plane for it to be visible to the camera. The angle between the inertial magnetic and Sun vector was thus fixed for the entire experiment at around 85 degrees. Meaning the

46 CHAPTER 3. EXPERIMENTAL SETUP 33 results of this experiment are valid for this geometry only. The angle between the inertial magnetic and Sun vector has a direct impact on the quality of the attitude solution. A 90 degree geometry provides maximum observability, while a parallel geometry provides no information. With the use of a Helmholtz cage this geometry could be altered for different tests Spin Rate It was found that the spin rate of the satellite could fluctuate by up to 10 /s when set at a constant speed. (Measured by the Gyro of the IMU.) This was likely caused by small friction spots in the rotation from non perfectly aligned motor axle and spool axle This is non-representative of a spinning spacecraft in orbit, which would spin at a more steadier speed. A future design may use a motor with more torque to overcome this Play in Motor Gears The motor features an integrated gear head and encoder. The encoder is attached to the motor drive shaft rather than the gear output shaft. This means that any mechanical play in the gears can not be detected by the encoder. It was confirmed (by use of a laser + trigonometry) that the gear head has around 0.7 degrees of backlash. Luckily, this uncertainty can mostly be avoided by ensuring that the spin table is always rotating in a single direction to take up the play in the gears. This does, however, preclude accurate angular position measurements when the spin table is static, as the true position of the satellite is only known to within 0.7 degrees. A more detailed discussion of uncertainties in the encoder is given at the end of Chapter Encoder Issues It was discovered that the encoder would occasionally inexplicably jump its count forward or backward up to a few hundred counts. This was thought to be a wiring issue. All connections were double checked, and the data sheet re-consulted but the root cause of this phantom issue was not discovered. It was mitigated, however, by including a miscount flag in the COSMOS ground station interface. When the encoder miscounted it was known immediately and the test was able to be re-started, rather than discovering it later in the data processing Sun Simulation The accurate simulation of the Sun turned out to be a more challenging issue than expected and could be a project in itself. For this thesis, several proxies for the Sun were tested in an attempt to find something that worked: A small bright LED, a laser pointer, a Halogen lamp, a LED head lamp and a simple flashlight.

47 CHAPTER 3. EXPERIMENTAL SETUP 34 It was found that the small led required very long exposure times and increased Gain settings to be visible across the distance of the laboratory room, which introduced lots of noise to the image. The laser pointer was difficult to line up pointing at the camera and was too small and dim. The halogen lamp was sufficiently bright, but very large at the distance used, coupled with the fact that its centroid changed significantly as it heated up. The LED head lamp was extremely bright and easily visible, but had some kind of PWM controlled dimming function of the LED, which was only visible in the camera images. It appeared as a line of off pixels, that swept across the image of the Sun in sequential frames. The high-intensity classic flashlight turned out to be the most practical solution. It used a very intense LED with no PWM dimming features (only on-off). The only issue with this flashlight was to ensure that its brightness was steady. When powered by batteries the brightness would decrease after only 30 minutes (although not visibly to the human eye), and the centroid would shift. A constant voltage 3V power supply was used to drive the flashlight. Ideally, it would be driven with a constant current power supply, as LEDs are constant current devices and their brightness is proportional to current. But it was found that after the initial warm up period, the LED settled to a reasonably constant 0.6A. Given the size of the flashlight used and the width of the laboratory room, the Sun appeared to have an angular radius of around 0.73 degrees, while the real Sun has an angular radius of around 0.27 degrees at 1 AU distance. For a more in-depth development of the Sun sensor, this should be adjusted. Further, accurate representation of Sun spectrum and brightness may also be considered. Some companies simply prefer to test their Sun sensors outside with the actual Sun to avoid these issues.

48 Chapter 4 Sensor Calibration and Error Quantification 4.1 Introduction Raw data from a spin test of the spacecraft is recorded in a log file. Before this data is used in the Triad method to determine the attitude, this data needs to be processed. The Sun sensor and magnetometer need to be calibrated to minimize the systematic errors. Other parameters need to be estimated, such as alignment of sensors and synchronisation errors. During these estimation steps, the errors are quantified, to be later propagated into the attitude solution (Chapter 5). The chart below outlines the operations that were performed to the sensor data. Figure 4.1: Calibration and processing for Sun sensor and magnetometer. 35

49 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 36 A short description of the data processing steps of the above flow chart is given below, after that a detailed explanation is given for both, along with the uncertainties associated with each step. Magnetometer Initially, magnetometer data must be calibrated, then the latency on the data timestamp must be accounted for, following this the data is interpolated to the encoder samples. (Recall from the attitude determination section, both the magnetometer and Sun sensor data are required at the same time instant to apply the Triad algorithm, thus both magnetometer and Sun sensor data is interpolated to the encoder.) After this, the magnetic vector must be represented in the body frame by applying small rotation angles. Finally, an estimate of the magnetic vector in the inertial frame is required so that the triad method can be applied to this data. Sun Sensor Considerably more data processing is required of the Sun sensor data before it can be used for attitude determination. The raw data recorded in the log file is simply a string of 8 bit hexadecimal values representing the intensity of each pixel in the image recorded by the camera. The preprocessing steps take this string and turn it into an image. This string is converted to a 1D array of decimal numbers, and then reshaped into a 240x320 2D array to recover the image structure. The image is then undistorted to reverse the effects of the wide angle lens. A threshold is applied to set low valued pixels to zero. This is so that low value noisy pixels don t interfere with the centroiding. The next step is to locate the coordinates of the Sun centroid. After this, the unit vector to the Sun is computed by using the pinhole camera model (Principal point u 0, v 0, focal length, f). Now that a Sun vector is attained, the following steps are similar to the processing of the magnetometer. A correction for the latency of the timestamp is made, the Sun data is interpolated to the encoder data, then a correction is made for parallax error that occurs in the laboratory. (Since the Sun is not at infinite distance.) Finally, the Sun vector is rotated from the Sun sensor frame to the spacecraft body frame through its alignment angles. An estimate of the Sun vector in the inertial frame is also made for use as a reference vector in the later application of the Triad method. Below the detailed description of the data processing is given. It is essentially a series of estimation problems. Estimation of sensor parameters (calibration) estimation of latencies, estimation of rotation angles, estimation of inertial vectors. 4.2 Magnetometer Magnetometer Calibration Recall that the sensor model for the magnetometer is given by Equation (2.12) which is repeated here for convenience: ˆB = SB + b + ε (4.1)

50 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 37 The process of calibrating the magnetometer is simply the estimation of the unknown variables in the measurement equation, the scale factor matrix and bias vector. The calibrated magnetometer data is then recovered by rearranging (2.12) to get the best estimate of B: B = S 1 (ˆB b) (4.2) The most straightforward method for estimating these parameters is by comparing the measurements of the magnetometer to those from a more accurate magnetometer, and using a least squares fit to estimate the parameters of the measurement equation. This technique requires that 1) an accurate magnetometer is available, and 2) that a method for obtaining the same measurement with both magnetometers is available. Using a Helmholtz cage, a series of magnetic fields can be generated with the accurate magnetometer in the cage to gather the truth data points, this magnetometer is then switched out for the target magnetometer to be calibrated and the same series of fields are generated and the data recorded. This provides the data sets required to perform the least squares fit. Without the Helmholtz cage this calibration technique is impractical. One solution is to hold the magnetometers in alignment using a jig, and then rotating this jig around in a constant position to expose each axis of the magnetometer to a different field. Problems are then encountered with wires tangling etc. Additionally, the jig must hold the magnetometers some minimum distance apart so that they do not contaminate one anothers measurements. [26] suggests a distance of 9 inches. The process should be carried out in a large room where the magnetic field does not vary significantly over the span over the jig, otherwise the two magnetometers will be measuring different fields. An alternative method known as attitude independent magnetometer calibration. This is a method that can be performed on a satellite already in orbit before it has accurate attitude information. Why would one need to do this if they already calibrated the magnetometer before launch? Strains experienced through launch vibrations and temperature variations can alter the calculated calibration parameters and will usually dictate that periodic in-orbit calibration be performed. Intuitively it seems that it would not be possible to calibrate a magnetometer without another more accurate one present. If we already had knowledge of the spacecraft attitude, we could calibrated against the IGRF field model, but as the name suggests the method does not require attitude information. As mentioned in Chapter 2, the parameters of the magnetometer can be observed in the three dimensional plot of the output vector. If the magnetometer is perfectly calibrated, the locus of the plot will form a sphere centred on the origin. With scale factor, bias and hard and soft iron distortions present, the locus will be an ellipsoid, displaced from the origin and rotated. The calibration process can be thought of as an ellipsoid fitting process. If enough data points are gathered, the parameters that describe the ellipsoid can be estimated, then the scale factor matrix represents the rotation and scaling that aligns the ellipsoid axes with the plot axes and scales the ellipsoid into a sphere of appropriate radius. (The radius is the magnitude of the magnetic field.) The bias vector is the translation that brings the centre of the sphere back to the axes origin. If this calibration was performed in orbit, one would use the magnitude of the inertial magnetic field to scale the sphere to the correct radius. Only the knowledge of spacecraft position and an

51 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 38 inertial field model is required. If we do not have knowledge of the magnitude of the inertial field the sphere can be scaled to a unit sphere. This means that the magnitude information is essentially lost or encoded into the scale factor matrix. Although, this is generally not a problem if the magnetometer is only used for attitude determination. Crassidis notes that: We consider only unit vectors because the length of the vector has no information relevant to attitude determination [12]. One disadvantage of scaling to a unit sphere is that one is unable to perform scalar checking for data validation purposes. (Scalar checking is the process of comparing the magnitude of the same vector in different frames, as it should be reference frame independent [13].) In the magnetometer calibration performed in this thesis, the magnetometer was scaled to form a unit sphere. A note on units: The raw units of the IMU magnetometer before calibration was performed approximately correspond to Gauss, as this is what the IMU was configured to output. The raw units of the Dowty TAM are counts from the ADC. After calibration the units are simply referred to as calibrated units which are scaled by the unknown magnetic field magnitude at the location the calibration was performed. The calibration algorithm used is described in [23]. In this algorithm, first the parameters of the ellipsoid equation are estimated, and then the scale factor matrix and bias vector are derived. A so-called Adaptive least squares routine is used to provide an unbiased estimate of the ellipsoid parameters in the presence of large noise on the sensor and then from these, the scale factor matrix and bias vector are derived. In order to gather sufficient data to fit an ellipse, the satellite was unbolted from the spin table, taken to a clear area in the centre of the laboratory, and rotated in place around each axis in 3D space. Note, that the bolts were left through the holes of the bottom of the spacecraft while doing this, as they rotate with the spacecraft and thus the calibration should take them into account, otherwise the calibration would be incorrect when the spacecraft was re-fastened to the spin table. The goal of the calibration data gathering is to align each sensor axis with the inertial field vector in the positive and negative direction to build up a full ellipsoid. Care was taken during this process to maintain the satellites position in inertial space, so than the magnitude of the inertial field would be constant during the data gathering process. It is also assumed that the inertial field is constant over the period of a few minutes while data is gathered. If the spacecraft was translated significantly during the rotation process, the magnitude of the inertial field could change significantly (given that this process was carried out in a lab with near by sources that could modify the magnetic field, such as tables and chairs). This would then degrade the ellipsoid fit. An improvement on this method would be to use a three axis gimbal to rotate the spacecraft in position, although the gimbal must not contain ferrous materials that rotate with the spacecraft, or else the calibration would account for these and only be valid when the spacecraft sat in the gimbal. The calibration process was performed ten times, and the mean scale factor matrix and bias vector were calculated, along with the standard error of this mean. Note, that the definition of the Dowty TAM axes in its data sheet used a left-handed convention, this was re-defined to a right-handed convention for this thesis, and is why the Y bias has a

52 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 39 positive sign below. IMU Magnetometer S = ± (1σ) (4.3) b = ± (1σ) (4.4) Dowty Magnetometer S = ± (1σ) (4.5) b = ± 6 (1σ) (4.6) The effect of the calibration can be visualised by plotting the data points for the TAM and IMU magnetometer on top of one another, shown below in Figure 4.2. They should line up, which they do quite well. The difference between the TAM and IMU magnetometer after calibration is given below. Figure 4.2: Calibrated Magnetometer data. Difference between TAM and IMU magnetometer.

53 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 40 Another way to view the success of calibration is to study the standard deviation of the norm of the normalized magnetic field. If the inertial field is constant, then the norm of the field should be constant, no matter the orientation of the magnetometer or the reference frame. To make comparisons easy, the field is normalised by its mean magnitude. This is plotted on the same graph as the calibrated data, which should have a mean magnitude of 1 after calibration. The standard deviation is compared before and after calibration. The figures below show an improvement of two orders of magnitude after the calibration. Figure 4.3: Magnitude of normalized magnetic field before and after calibration for IMU Magnetometer. Figure 4.4: Magnitude of normalized magnetic field before and after calibration for Dowty TAM.

54 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 41 A third check is performed, that is to apply the calibration to a data set that was collected with the spacecraft, re-mounted to the spin table after the calibration data was collected. The result is shown below. Figure 4.5: Norm of magnetic field while spinning on spin table. IMU Mag (blue). TAM (red). Figure 4.5 shows an unexpected result. There is a systematic variation in the field strength that is dependent on the rotation position of the spin table. The TAM shows a greater variation than the IMU magnetometer. A variation like this could be cause by a multitude of things. It was initially speculated that perhaps the motor was causing some sinusoidal change in the magnitude of the magnetic field. But, as already mentioned in Chapter 3, investigation showed there was no dynamic effect from the motor on the inertial field. If there was some ferrous object that was present only when the spacecraft was bolted to the spin table, and was absent during the calibration data collection. And this object rotated with the spacecraft (for example the bolts!). Then this could explain the sine wave pattern, since it would modify the bias of the magnetometer. But, if this was the case, one would expect the see both the IMU magnetometer and Dowty TAM effected in roughly the same way. Ie. they should show the same wave pattern, which they do not. Additionally, extra care was taken to ensure that the conditions during calibration and test were the same (for example leaving the bolts in place while gathering the calibration data). Next, it was thought that perhaps the magnetometer calibration may have errors. Through simulation, it was identified that a bias error in the x or y axis would cause a sine wave pattern such as that observed in the data (see Figure 4.6). But, to achieve the peak-topeak variation observed, the bias in the TAM would have to be in error by around 70.

55 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 42 This seems unlikely, given that the standard error of the bias estimate was calculated to be around 5. Figure 4.6: Simulated error of -70 bias in Dowty TAM X axis. If the origin of the magnetometer was not perfectly on the spin axis, and the inertial field was not uniform, then the magnitude of the measured field would indeed vary as observed. (Ie. with a period equal to the rotation period of the satellite.) The design of the spin table clearly assumed that the origin of the IMU and Dowty TAM was located at their geometric centre, which is a reasonable assumption in absence of any data. A deeper investigation was unable to locate any drawings showing the origin of the Dowty TAM, since the company that produces it no longer exists. But, for another flux gate magnetometer of similar dimensions, it was discovered that the origin of three axis were not co-located, and could be apart by up to 22 mm shown below. Specifications for the IMU were found and showed that its origin was located 8 mm from its geometric centre. These distances are consistent with the fact that more variation is seen in the norm of the Dowty TAM than the IMU. Figure 4.7: Origins of a flux gate magnetometer s sensors of similar size to the Dowty TAM [6].

56 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 43 If there exists a strong local field gradient in the vicinity of the spin table then this would exaggerate the effect of the sensor origins being off spin axis. Could a displacement of the sensor by 22mm in the horizontal plane really cause a variation as large as seen in Figure 4.5? It was decided to go back to examine the inertial field survey done on the spin table from Chapter 3. The data from the magnetic field survey performed earlier was investigated. Horizontal field strength was plotted against the X-Y table top coordinates (in mm) of the spin table. See Figure 4.8 below for a plot of the horizontal field strength (at the height of the satellite) vs table top position. It was found that the approximate field gradient from one corner to the other was 10 nt/mm. Figure 4.8: Horizontal magnetic field strength in the area above spin table. (Average of three surveys conducted with FVM 400 magnetometer.) Rough calculations are shown below: Local field gradient in horizontal plane: Variation caused by 22 mm offset of sensor: 10nT/mm = 220nT Variation observed: calibrated units = = 246nT (multiply calibrated units by magnitude of inertial field at location calibration was performed to recover nt units.) As the rough calculations above show, a variation 246 nt is entirely feasible given that the average local field gradient was 10nT/mm and local spots could be much higher! Since

57 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 44 the IMU Magnetometer is mounted closer to the spin axis than the Dowty TAM, it was decided to continue the experiment using only the IMU as the primary magnetometer Magnetometer Timestamp Latency Correction Since all of the magnetic and Sun data has a timestamp, variations in timing can be thought of as an uncertainty in the data its self. Random and systematic variation in the timestamp δt of the magnetometer data contributes to uncertainty in the magnetic field measurement through: Where B ψ e is a function of encoder position ψ e, and ψe t δb = B ψ e δt (4.7) ψ e t is the spin speed of the spacecraft. It should be noted, that since the magnetometer and Sun sensor data is interpolated to the encoder data, variations in the encoder data timestamp will also have the same effect. It becomes apparent that there are significant time latencies when plotting magnetometer data against position for two different speeds on the same graph. Below, Figure 4.9 and Figure 4.10 show the IMU and Dowty magnetometer reading as a function of encoder angle. Note, that only the X and Y components of magnetic field are plotted, since the spacecraft is rotating around the Z axis, latencies will not be as visible on this axis. Figure 4.9: IMU magnetometer at 18 /s (blue) and 180 /s (red) table rotation rate.

58 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 45 Figure 4.10: Dowty TAM7 magnetometer at 18 /s (blue) and 180 /s (red) table rotation rate. Figure 4.9 shows that a time delay appears as a phase shift in the encoder vs magnetometer plot. Comparing Figure 4.9 and 4.10 it appears to suggest that there is a negative time lag in the Dowty TAM, since the 18 /s line is shifted in the positive direction. What is actually happening is that the time taken for the sensor Raspberry Pi to retrieve the data from the TAM ADC is less than the time taken for the encoder s Raspberry Pi to retrieve a sample from the encoder buffer. So in actual fact, both the encoder data and magnetometer data have time latency and they can not be distinguished. Only the combined effect of the latencies can be observed and accounted for. Additionally, there may be a time lag between when the GPS PPS triggers an interrupt on the Raspberry Pi and when it issues a timestamp. Any difference in this lag between the sensor and encoder Raspberry Pis will contribute to this time delay. Random Variation in Timestamp The random variation in the system timestamp of the spacecraft s Raspberry Pi will contribute uncertainty to both the magnetic field measurement and the Sun vector measurement. Also, as mentioned in the previous section, the variation in the encoder s Raspberry Pi timestamp will also contribute to the uncertainty in the Sun and magnetometer data once it has been interpolated to the encoder data. The random variation of a clock can be characterised by an Allan deviation plot. The Allan deviation is used to characterise the frequency stability of oscillators. This is a plot of the standard deviation of the Pi s clock over different time frames. The standard deviation will vary depending on the time frame it is studied over. Over very short time frames the variation is dominated by white PM and flicker PM noise, while at longer

59 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 46 intervals its dominated by random walk. The time frame over which the clock is studied over must be measured by a more accurate clock. In the case of this experiment the GPS time is available as the more accurate reference. The GPS clock gives 1 pulse per second with an accuracy of around 10 ns. This means that the standard deviation of the Pi clock can be calculated over time frames ranging from 1 second to any multiple of this. For this experiment we are interested in the standard deviation over much shorter time frames dictated by the sampling period of the sensors: (1/30th of a second for the camera and Dowty magnetometer and 1/100th of a second for the IMU magnetometer). So unfortunately we can not calculate these because the shortest time frame output from the GPS is 1 second. Furthermore, the Raspberry Pi does not have a dedicated real time clock, it uses a software clock. A software clock may not be able to be characterised like a quartz oscillator, so its deviation over different time frames may not be characterised as accurately. For example, it was observed that system load had a significant impact on the timestamp variation. Below are plots comparing the variation in the time taken for the satellite s Raspberry Pi to issue a timestamp when triggered by the GPS PPS signal. In the first plot, the camera and IMU were not running, in the second plot the camera and IMU were running. The third plot is of the encoder s Raspberry Pi that was just sampling the encoder. The highest variation is seen in the satellite s Pi when is under full load collecting and sending camera images. Figure 4.11: Time variation camera and IMU off.

60 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 47 Figure 4.12: Time variation camera and IMU on. Figure 4.13: Time variation encoders Raspberry Pi. Also observable on these figures, is the frequency difference between the Pi system clock and the GPS PPS. The negative slope in Figure 4.11 and 4.12 shows that the satellite s Pi System clock is running at a slower frequency than the GPS PPS. The upward slope in Figure 4.13 shows that the encoder s Pi clock is running at a faster frequency than the GPS PPS. Further, it appears to have a non steady frequency shown by the curve in the line. The system clock is interpolated to the GPS clock every second so a frequency

61 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 48 change like this should have minimal impact. One problem with this strategy is that any lags in the interrupt triggered by the PPS will introduce timing errors. This is an area for future investigation and is discussed in the future work section. An assumption will have to be made that the variation seen in this timestamp is similar to the variation in the magnetometer and Sun sensor timestamps. To roughly characterise the random variation in these timestamps for later use in simulation, a Gamma distribution was fit to the combined delays of Figure 4.12 and The shape and scale parameters are a= and b= Discussion of the suitability of this model is presented in Chapter 5. The Gamma probability density function at point x is given by: y = f(x a, b) = 1 b a Γ(a) xa 1 e x b (4.8) Figure 4.14: Gamma distribution fit to time delay data. scale parameter: b= Shape parameter: a= Systematic Variation in Timestamp Since the Raspberry Pi uses a software clock, there may be systematic variations in the timestamp that depend on system load. These are not the systematic variations that will be considered here. Instead, we will try to identify the constant latency in the system timestamps from the magnetometer and Sun sensor to the encoder. This systematic delay occurs because of the finite time required to capture and transmit the data to the Raspberry Pi. The delays on the camera data will be the largest, since acquiring an image takes a certain amount of time. The next biggest delay will be in the IMU magnetometer, since this data comes in a packet with the accelerometer and gyro data, additionally it

62 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 49 comes over USB which is hardly real time. Finally, the Dowty TAM is expected to have the shortest delay as it has an I2C interface. As shown already in Figures 4.9 and 4.10 The presence of a delay causes a shift in the magnetometer vs encoder position plot. If viewed at just one encoder position, it appears as a spreading or increase in the standard deviation of the measured magnetic field at that encoder position. This was exploited to find the delay. Matlab s fminsearch optimiser was asked to find a time delay, that when applied, minimised the sum of the standard deviation of B x and B y at every encoder position. The delays calculated are summarised in Table 4.1. (deg/s) (deg/s) Delay (µs) Speed 1 Speed 2 IMU Mag Dowty TAM Sun Sens Table 4.1: Systematic delay calculated for 10 different sets of data using fminsearch. Delay (µs) IMU Mag Dowty TAM Sun Sens mean σ mean Table 4.2: Summary of systematic delay using fminsearch. The optimization was run with a range of different starting conditions and each time it found the same minimum, so this gave confidence it was correct. The best check is to re-plot the magnetometer vector vs encoder position for the delay-compensated data. This is shown below.

63 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 50 Figure 4.15: IMU magnetometer at 18 /s (blue) and 180 /s (red) table rotation rate after lag correction applied. Figure 4.16: Dowty TAM at 18 /s (blue) and 180 /s (red) table rotation rate after lag correction applied. As can be seen from Figures 4.15 and 4.16 the delay has now aligned the data sets, showing that the correct delay has been calculated.

64 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION Alignment The relationship between the body frame and magnetometer frame is defined by small rotation angles ψ 0m, θ 0m, φ 0m. these are the angles that mechanically rotate the body frame to the magnetometer frame about axes Z-Y-X. ψ 0m is defined to be zero, so there are only two small alignment angles for the magnetometer. Note that the translation from magnetometer origin to body origin is not considered here, as it as no effect on the attitude. To represent a magnetic vector measured in the magnetometers frame (m) in the body frame (b) we use: b B = b mr(θ 0m, φ 0m ) m B (4.9) Where, cos(ψ 0m ) sin(ψ 0m ) 0 cos(θ 0m ) 0 sin(θ 0m ) b mr = sin(ψ 0m ) cos(ψ 0m ) sin(θ 0m ) 0 cos(θ 0m ) cos(φ 0m ) sin(φ 0m ) (4.10) 0 sin(φ 0m ) cos(φ 0m ) Non Linear Least Squares Estimation The small alignment angles ψ 0m, θ 0m along with the inertial magnetic vector can be estimated via Non-Linear Least Squares (NLLS). The measurement model is: y = f(x) = m B = m b R(θ 0m, φ 0m ) b IR(ψ e ) I B (4.11) ψ e is the known encoder angle that rotates from the body coordinate system to the inertial coordinate system around the spin axis, and x is the vector of unknown coefficients to be estimated: x = φ 0m θ 0m I B x I B y (4.12) I B z An initial guess ˆx is made for x. The initial alignment angles are guessed to be zero (The values they would be if the mounting was perfect), while the initial inertial magnetic field vector is guessed to be the value m B read from the magnetometer when the encoder is in the home position (This should be a close guess as the alignment angles are small.) The estimated y values (expected measurements) are calculated from the estimated x: ŷ = f(ˆx) (4.13)

65 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 52 The residuals are then given by the difference between the measured and estimated y values: y = ỹ ŷ (4.14) and the sum of the residuals squared is: j = y T y (4.15) The Jacobian, H (gradient) is evaluated at the current estimate. The Jacobian is: H = f x = Then the correction to the estimate ˆx is given by: The estimate is updated with the correction: f 1 x 1 f 1 x 2 f 1 x 3 f 1 x 4 f 1 x 5 f 2 x 1 f 2 x 2 f 2 x 3 f 2 x 4 f 2 x 5 f 3 x 1 f 3 x 2 f 3 x 3 f 3 x 4 f 3 x 5 (4.16) x = (H T H) 1 H T y (4.17) ˆx c = ˆx + x (4.18) This new estimate of the state, ˆx c is used in the next iteration. The iterations are repeated until the sum of errors squares doesn t change more by some specified tolerance, for example 0.1%. The estimation process was first validated on simulated data, and then applied to data recorded at a slow spin rate (18 /s). The results are given in the table below: IMU Mag Dowty TAM φ 0M (deg) θ 0M (deg) I B x I B y I B z Table 4.3: Estimated alignment and inertial magnetic field when using either the IMU Mag or Dowty TAM. To assess the results, a check is made on an independent data set. The magnetic field vector in the magnetometers frame is rotated back to the inertial frame using the calculated small alignment angles and encoder angle: I B = I B R(ψ e ) B MR(φ 0M, θ 0M ) M B (4.19) Ideally, this should result in a constant magnetic field in the inertial frame. A sample of the results for the IMU magnetometer and Dowty magnetometer are presented in Figure 4.17 below.

66 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 53 (a) (b) (c) (d) Figure 4.17: Estimated inertial magnetic vector from de-rotating body vector. (a) IMU Mag 40 /s (b) IMU Mag 255 /s (c) Dowty TAM 40 /s (d) Dowty TAM 255 /s. The IMU Magnetometer shows a fairly constant estimate of the inertial field, while the Dowty TAM has great variation. The root cause of the variation in the de-rotated magnetic field is the off-rotation axis magnetometer origin as identified previously. It is worse for the TAM. Note how the width of the field components gets wider at high speed. This is due to random variation in the timestamp having greater impact at higher speed, as explained in Equation (4.7). Uncertainty in Alignment and Inertial Field Usually the standard errors of the states estimated from the NLLS routine is estimated from: σ 2 x = j(ht H) 1 n m (4.20)

67 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 54 Where n is the number of observations and m is the number of states in x. But this assumes that there are only random errors in the measurements ỹ. We have systematic and random errors in the measurements of m B, and additionally small errors in the encoder angle ψ e, and so the traditional method of estimating standard errors above yields overly optimistic standard errors (this was verified by using simulation). Instead it was decided to treat the NLLS routine as a data reduction equation, and to propagate the uncertainty in m B through to the uncertainty in the alignment angles and inertial field estimate using the Monte Carlo method of uncertainty propagation. The nominal values of x in the Monte Carlo simulation were set to be the values estimated by the NLLS process. The standard errors in the elements of the scale factor and bias matrix were assumed to come from a Gaussian distribution with standard deviations given by the standard errors of the calibration (equation ). The Monte Carlo simulation was then run until the maximum change in the standard deviation of the state estimate x was less than 1%. The results are given below. Note. This uncertainty estimate does not account for the fact that the sensor is mounted off rotation axis. IMU Mag Dowty TAM σ φ0m (deg) σ θ0m (deg) σi B x σi B y σi B z Table 4.4: Uncertainty in alignment and inertial magnetic field when using either the IMU Mag or Dowty TAM. 4.3 Sun Sensor Data Processing As mentioned in the introduction to data processing, the operations required on the Sun sensor data are more numerous than those on the magnetometer. There is sequence of preprocessing required before a vector can be extracted from the camera data, this sequence is re-caped in Figure 4.18 below.

68 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 55 Figure 4.18: Raw camera data to Sun vector process Initially, the data is logged as a string of 8 bit hexadecimal numbers (each pixel of the camera can assume an intensity value between 0 and 255). This string is converted to a vector of decimal values and then reshaped into a 240*320 matrix, which restores the structure of the image. At this point the image is ready for calibration Camera Calibration The process of camera calibration is estimating the parameters of the camera model presented in Chapter 2. These are the camera intrinsic properties (focal length, principal point) the distortion coefficients and the extrinsic parameters of the calibration images. The camera calibration algorithm used was developed by Zhang in [30] and implemented in the Matlab Computer Vision System Toolbox [3], it consists of two steps: 1) To make an initial guess for the parameters, the lens distortion is initially set to be zero, then the intrinsic and extrinsic parameters are solved assuming zero distortion.

69 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 56 2) All parameters are estimated by a nonlinear least-squares routine (the Levenberg- Marquardt algorithm). This routine minimises the sum of the reprojection errors for all calibration images through a gradient decent method. The reprojection error is like the sum of the squared residuals described previously in the estimation of the magnetometer alignment. It is the geometric error, the euclidean distance between a detected point in a calibration pattern and the same point projected into the same image using the estimated camera parameters, and Equation (2.21) and (2.24). To gather data for the calibration process a series of 36 images of a checker board calibration pattern were taken, the checker board had a 44m grid size, and since it is highly contrasted, key points are easily detected in images. Calibration Results and Uncertainty The parameters estimated from the calibration are the principal point, focal length, skew and distortion coefficients. They are presented in Table 4.5 along with their standard errors. Parameter Value (pix) Standard error Focal ln f x f y Princip pt u v Skew s Rad distort k k k Tngt distort p p Table 4.5: Camera parameters estimated from calibration. The goodness of the calibration process can be assessed by the reprojection errors attained. Below in Figures 4.19 and 4.20 is a plot of the reprojection errors separated into x and y components for all of the calibration images. A different colour represents all the detected points from a particular calibration image.

70 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 57 Figure 4.19: Horizontal reprojection error. σ = 0.13, µ = Figure 4.20: Vertical reprojection error. σ = 0.11, µ = The calibration algorithm has achieved an excellent result, with the mean reprojection errors being essentially zero. The standard error of reprojection in the horizontal plane is 0.13 pixels while that in the vertical plane is 0.11 pixels. If one studies the horizontal reprojection error closely, there does appear to be a correlation between horizontal position and reprojection error, possibly due to differences between the distortion model and the actual shape of the manufactured lens, but it is small enough that it can be neglected If one wished to eliminate this, they could either crop the image to a smaller size and perform the calibration algorithm on the part of the image that would best fit the distortion model. Alternatively the order of the distortion coefficient equation could be increase, but this would have diminishing returns, as to estimate the higher order parameters one would require many more calibration images Centroiding & Sun Vector Centroiding After the image is undistorted, the coordinates of the Sun are extracted by a centroiding process, then the Sun vector is constructed from the pinhole camera geometry. The centroid of the Sun can be located through a geometric or intensity weighted centroid. Both methods will give a sub-pixel level accuracy, the choice of one over the other depends on whether the pixel intensity variations are accurate. For the camera and Sun used in this thesis it was found that a weighted centroid approach resulted in noise of the centroid that was 3-6 times lower than a geometric approach. See Figure 4.21 for a comparison of the Sun centroid while the spacecraft was stationary.

71 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 58 Figure 4.21: Geometric Centroid σ x = 0.06, σ y = 0.07 vs Weighted Centroid σ x = 0.01, σ y = 0.02 Initially, a halogen lamp was used as the Sun source. It was discovered that as the halogen bulb heated up, the centroid would slowly drift when using the intensity weighted approach, while the centroid would remain steady when using a geometric approach. After this an LED was used as the Sun simulator, and while there was still some drift observed in the weighted centroid due to heating, results were much better. It was discovered that the centroid location was very sensitive to the intensity of the Sun source. Initially the Sun source was a high powered flash light, as the battery voltage decreased, the centroid showed considerable shift over the time frame of just 30 minutes. To remedy this, the batteries were exchanged for a stable voltage source. The calculation of the intensity weighted centroid is similar to finding the centre of mass of an object. The equations are: x centroid = n i=1 I ix i n i=1 I i y centroid = n i=1 I iy i n i=1 I i (4.21) Edge of Image It was found that when the Sun approached the edge of the image, the Sun vector became inaccurate. This is due to only a portion of the Sun disc being visible, hence the centroid of this partly visible disc is different to the true Sun centroid. To handle this, Sun measurements near the image edge were discarded. This has the effect of slightly decreasing the useful field of view of the Sun sensor.

72 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 59 Figure 4.22: Variation in centroid at edge of image. Sun Vector The Sun unit vector is derived from the geometry of the pinhole camera model. The geometry is repeated below in Figure The Sun vector is calculated from combining the centroid pixel coordinates with the camera focal length in Equation (4.22). Note that the camera axes definition given in Chapter 3 is slightly different to that shown below. This is due to the image already being flipped right side up by the camera software in use. Figure 4.23: Unit vector from pinhole camera geometry. S = u 1 centroid u 0 v centroid v 0 (4.22) f 2 + (u centroid u 0 ) 2 + (v centroid v 0 ) 2 f

73 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION Parallax Correction The translation from the Sun sensor origin to the satellite body origin must be considered. Failure to do so will result in a parallax error since the Sun vector is a line-of-sight vector, and the Sun can only be placed a finite distance away in the laboratory. The parallax error would be insignificant in orbit on a small spacecraft, since the Sun is so distant. The parallax error is zero when the Sun is in the centre of the image, (camera aligned directly with Sun) and increases when the Sun is further off camera boresight. For the geometry used, the Sun was approximately in the centre of the image when the encoder was in the home position. The Figure 4.24 below illustrates the relationship between the observed Sun vector, the true Sun vector and the offset of the camera axes origin from the body axes origin, d. Figure 4.24: (left) Parallax error on Sun vector. (Right) No parallax error when spacecraft is in home position. This distance can be estimated through a non-linear least squares process. The measure-

74 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 61 ment model is: S 0 S i S 0 S i = cos(ψ e i ) 0 0 S 0 = S h + 0 S i = S i + 0 d d (4.23) Where d is the offset of the camera axes origin from the body axes origin (what is being estimated), S h is the measured Sun vector in the home position of the spin table (ψ e = 0), and S i is the measured Sun vector at any instant, ψ ei is the encoder angle. The NLLS iteration finds the distance, d that satisfies Equation (4.23) for all encoder positions. The effect of the parallax correction can be observed in Figure 4.25 below. (a) (b) Figure 4.25: Difference in yaw angle determined from camera and encoder. (a) Before parallax correction. (b) After parallax correction. Uncertainty of Parallax Correction Once again, the standard error estimates calculated in the standard way (equation (4.20)) are too small due to the fact that errors exist in both the Sun measurements and the encoder. Instead, distance d is estimated on 10 sets of data and the mean is used. The standard deviation of this mean is used as the standard error in the offset (d) estimate. The mean was 1.54 pixels, the standard deviation of this mean was 0.01 pixels Latency Correction As with the magnetometers there is a certain delay between when the data was taken and when the timestamp was assigned. This delay is significantly longer for the camera for two reasons. 1) Image acquisition time is significant. 2) Data transmission time is longer than for the magnetometers since the data is larger. It is easy to make an initial

75 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 62 guess at the delay, since the camera operates at approximately 30 fps, one image takes approximately seconds to acquire Since the Sun is approximately in the middle of the image, this time is divided by 2 to give seconds. This is the order of delay that is expected for the camera. The estimation of the camera delay followed the same methodology explained for the magnetometer (using optimisation). The delay calculated was given in Table 4.2, repeated here: approximately 18200µS with a standard error of 100 µs. The latency is observable in Figure 4.26 (a) where the horizontal pixel of the Sun centroid is plotted against the encoder position for two rotation speeds. In Figure 4.26 (b) the latency offset has been applied which brings the two spin speeds into alignment. (a) (b) Figure 4.26: Sun sensor horizontal pixel at 18 /s (blue) and 180 /s (red) table rotation rate. Before latency correction (a) After latency correction (b) Alignment and Inertial Vector Estimate The alignment of the Sun sensor and estimation of the inertial Sun vector follow a similar process to the magnetometer. The difference is that since the magnetometer was used in the definition of the body axes, there were only two alignment angles to find, with the Sun sensor there are three angles, φ 0 s, θ 0s, ψ 0 s. The problem is that the angle ψ 0 s is not observable when spinning around the z body axis. Were this a real satellite, the procedure would be to reposition the satellite on the spin table so that it rotated about its x or y axis, then the alignment angle ψ 0 s could be calculated. In this experiment, the mock spacecraft is only able to attach to the spin table in one orientation, thus it was not possible to estimate the alignment angle ψ 0 s. From inspecting the geometry of the spacecraft, the nominal value of ψ 0 s is 90. This value will be used for the purposes of solving the alignment angles φ 0 s, θ 0s and the Sun vector in the inertial frame, I S. The uncertainty in this estimate can be guided by the other two alignment angles. It should be realised that for the purposes of determining the spacecraft rotation about the spin axis in the laboratory environment, an error in ψ 0 s will not have an observable effect, since the inertial Sun vector estimated corresponds to the value of ψ 0 s defined. The estimates

76 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 63 for the Sun sensor alignment angles and inertial Sun vector are: φ 0S (deg) ±0.04 θ 0S (deg) ±0.001 ψ 0S (deg) I S x ± I S y ± I S z ± Table 4.6: Estimated Sun sensor alignment and inertial Sun unit vector. To assess the results, a check is made on an independent data set. The Sun vector in the Sun sensor s frame is rotated back to the inertial frame using the calculated small alignment angles and encoder angle: I S = I B R(ψ e ) B S R(φ 0S, θ 0S, ψ 0S ) S S (4.24) Ideally, this should result in a constant vector in the inertial frame. presented below in Figure 4.27 and 4.28 below. The results are Figure 4.27: Estimated inertial Sun unit vector from de-rotating body vector.

77 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 64 Figure 4.28: Estimated inertial Sun angles from derogating body vector. The de-rotated Sun vector is fairly steady, although there does appear to be some systematic error in the components. The y component corresponds to the azimuth or yaw angle. This shows a characteristic flick up and down at the edges of the field of view of the camera. This is probably due to increased lens distortion which did not fit the distortion model in the camera calibration. The z component also shows systematic variation, but of a quite different nature. Looking at the equivalent elevation angle in Figure 4.28 shows this to be a variation of about 0.02 degrees. It is speculated that this could be a slight wobble in the bearing of the spin table, although this is difficult to confirm since such a small angle deviation would not be noticeable among the noise of the magnetometer data. Uncertainty in Alignment and Inertial field As with the magnetometer, the uncertainty of the Sun sensor alignment and inertial vector were calculated through the Monte Carlo Method of error propagation. To perform the MCM simulation the values for the systematic and random errors in the Sun vector must be included in the simulation. The systematic errors in the Sun vector come from the standard errors in the principal point and focal length since they are used in the calculation of each Sun vector. These values were quantified in the calibration process. The random errors in the Sun vector come from the standard error in the centroid location which was quantified in the section on centroiding. Further systematic error includes the uncertainty in the distance estimated in the parallax correction. (Note, the effect of this is the same as uncertainty in the focal length). There is also systematic error introduced

78 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 65 from the latency estimate and random error introduced from the random variation of the timestamp. It was assumed that there was no systematic error in the distortion coefficient, which as Figure 4.27 above shows, was not entirely true. The uncertainty estimates from the Monte Carlo simulation are provided in Table Interpolation Error The Dowty TAM is sampled at 30 Hz, the IMU Magnetometer at 100 Hz and the camera at 30 Hz. The encoder is sampled at approximately 30,000 Hz. Since the Sun sensor and magnetometer data must be interpolated to the encoder data there will be interpolation errors. In the rotation speed of the satellite is constant, then these errors are in the magnitude of the vector, but not in the direction, so they are inconsequential to attitude determination. 4.5 Encoder The encoder used provides 500 counts per revolution. Quadrature decoding increases this to 2000 counts per revolution of the motor. The motor has an integrated gear head with a reduction ratio of 4.8:1 so that there are 9600 counts per revolution of the spin table or /count. Unfortunately the gear head has a backlash (mechanical play) of 0.7, which introduces uncertainty into the recorded position. The impact of this is reduced by ensuring that the spin table only operates in one direction, and that all of the play is taken up before logging starts. To achieve this, the spacecraft is set in the home position using PID position control and the encoder counts are zeroed. The table is then spun in the negative direction back past the home position by 70. The logging is started and the spacecraft begins its rotation in the positive direction. This ensures that all slack is taken up by the time the encoder reaches the zero position. The portion of data logged before reaching the home position is simply trimmed, thus in the collected dataset, the spacecraft starts at the zero count position with zero slack in the gears. The encoder is sampled by the Raspberry Pi at approximately 30,000 Hz. Thus it is necessary to reduce this data through pre-processing, otherwise its quantity becomes unmanageable in Matlab. If the spacecraft rotates at less than 3 Hz then there are multiple samples at each encoder position and these can be discarded. The fist recorded sample at each encoder count is kept and subsequent repeat samples are thrown away. Since the encoder is oversampled, the effective resolution is given by: δ = ω/30000 (4.25) And thus the effective accuracy is 1/2 of the resolution, or (4.25) divided by two. At a rotation speed of 1Hz this would mean the accuracy is 360/30000/2 = But this slightly optimistic, and assumes that the backlash has been completely eliminated by spinning in one direction. In reality the spin speed of the table is not constant and

79 CHAPTER 4. SENSOR CALIBRATION AND ERROR QUANTIFICATION 66 so the amount of slack in the gears is changing, as the angular acceleration changes. If we assume that spinning the table in one direction reduces the backlash to 1% then the uncertainty in the position is = This figure is rounded to 0.01 and this is assumed the 3σ confidence uncertainty in the encoder.

80 Chapter 5 Attitude Uncertainty Analysis 5.1 Introduction Using the calibrated data from Chapter 4 along with the estimated Sun and magnetic vector in the inertial frame, the attitude can be calculated to verify that the calibrations made were effective (see Figure 5.1). It is stressed here that the errors in the attitude calculated in this test will be different to the errors expected in orbit, since the inertial magnetic and Sun vectors used will have different errors associated with them. In the laboratory test, the inertial Sun and magnetic vectors are estimated using the spacecraft sensors, thus systematic errors in the body and inertial vectors will be correlated and will tend to decrease the overall attitude error. This will be demonstrated later in this chapter. In orbit, a WMM error model for the magnetic field is used, along with a Sun vector ephemeris. The errors in these models will not be correlated to the systematic errors in the satellite s sensors. For this reason, a simulation is performed to get a ballpark figure for in orbit errors. To understand which uncertainties contribute the most to attitude error, an Uncertainty Percentage Contribution (UPC) analysis is performed. This analysis is then extended to find the attitude errors under various what if scenarios. Finally, a comparison is made of the in-laboratory attitude errors when using the Triad method, Q-method, and Extended Kalman Filter. Figure 5.1: Data difference between lab test and in orbit. 67

81 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS Triad Results The Triad method was applied to the experimental data to determine the attitude of the spacecraft. The components of the attitude error are given for several rotation speeds below, along with the total angle error. It should be noted that the error in roll (φ) and pitch (θ) is based on the assumption that the spin table has no wobble to its rotation, which may not be true at higher speeds. The error in yaw (ψ) however, can be determined from the difference between the yaw angle calculated and the encoder angle recorded. Recall from Chapter 4, that the uncertainty in the encoder angle was estimated to be around 0.01 degrees, so it should be suitable for evaluating yaw errors on the order of 0.1 degrees. (a) (b) (c) (d) Figure 5.2: Triad attitude errors for varying rotation speeds (using IMU Magnetometer). (a) 40 /s (b) 110 /s (c) 180 /s (d) 255 /s.

82 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS Discussion of Results There is a clear dependence of yaw error on speed. this is consistent with time delays or synchronisation errors in the data time stamps. The yaw error is proportional to the time delay and the rotation speed as explained in the section on time delay estimation in Chapter 4. A time latency will only have a noticeable effect on yaw, since the rotation is about the yaw axis. Pitch and roll errors are invariant to speed since they are orthogonal to the spin plane. The yaw errors also have a tendency to show spikes in the negative error sense. This is consistent with occasional lags in the time stamps. Since a time delay can only introduce an lag in the yaw angle determined, and thus produce negative errors, since error is calculated as (yaw Triad) minus (yaw encoder). One further subtle trend, only noticeable on the low speed spins is a flick up and down at edges in yaw plot. This flick up-down can also be observed in the de-rotated Sun vector data in Figure This corresponds to the edges of the field of view of the camera, and is likely caused by a systematic error in the distortion correction. That is, the distortion was so severe at the edges of the image that it diverged from the model used for calibration. 5.3 Simple Monte Carlo Analysis To get a feeling for where the errors come from, a Monte Carlo uncertainty analysis was performed that modelled only the random error in the magnetometer and Sun sensor. The distributions were assumed Gaussian, with zero mean. The standard deviation was obtained from magnetometer and Sun sensor data while the spacecraft was statically logging data for 2 minutes. They are: IMU Mag (raw units) Sun Sens (pixels) X Y Z Table 5.1: Sensor random noise (1σ), determined from the stationary spacecraft. The simulation result is presented below in Figure 5.3 with the 3σ error bounds marked.

83 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 70 Figure 5.3: Monte Carlo simulation considering only random sensor noise. These 3σ error bounds serve as the uncertainty estimate in the attitude and are plotted in dashed lines on top of the experimental data in Figures 5.4 to 5.7. Figure 5.4: Experimental roll (φ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated simple Monte Carlo 3σ bounds marked in blue dashed lines.

84 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 71 Figure 5.5: Experimental pitch (θ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. simulated Simple Monte Carlo 3σ bounds marked in blue dashed lines. Figure 5.6: Experimental yaw (ψ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated simple Monte Carlo 3σ bounds marked in blue dashed lines.

85 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 72 Figure 5.7: Experimental total angle error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated simple Monte Carlo 3σ bounds marked in blue dashed lines. As seen from Figures 5.4 to 5.7 above, the errors in the spacecraft pitch and roll angles are well bounded by the estimated uncertainty bounds, suggesting that pitch and roll are indeed dominated by the random errors in the sensors. The yaw angle on the other hand is not well bounded by the 3σ uncertainty interval, the predicted 3σ uncertainty interval is far too small. This means that there are significant systematic errors that effect the yaw angle estimate. The total error uncertainty bound is a good approximation for low speeds, but is poor for high speed. The complexity of the model was then increased and re-simulated. The results are presented in the next section.

86 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS Complex Monte Carlo Simulation The Monte Carlo simulation was changed to include all systematic errors as well as random time lags. They are summarised below: Error Value Source IMU Mag Scale factor SD of mean of 10 error σ S calibration runs IMU Mag Bias error σ B SD of mean of calibration runs principal point error σ u0, σ v0 (pix) 0.16, 0.12 camera calibration focal length error (pix) camera calibration Parallax correction error σ d (pix) alignment error IMU mag σ φ0m, σ θ0m (deg) alignment error Sun sensor σ φ0s, σ θ0s (deg) Inertial Mag estimate σi B (calibrated units) Inertial Sun estimate σi S (unit vect) Magnetometer systematic timestamp error σ tsys (µs) Sun Sensor systematic timestamp error σ tsys (µs) Magnetometer and Sun sensor random timestamp error σ trand 0.01 NLLS estimate , Monte Carlo simulations of NLLS estimate 0.04, Monte Carlo simulations of NLLS estimate Monte Carlo simulations of NLLS estimate Monte Carlo simulations of NLLS estimate 111 latency estimate 88 latency estimate Gamma distribution a= b= Gamma distribution fit to variation in Raspberry Pis SysTime stamp Table 5.2: 1 σ Uncertainties used in simulation. otherwise.) (Normally distributed unless stated

87 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 74 The new 3σ error bounds determined from the higher fidelity simulation are used as the uncertainty estimate, and are laid over the experimental data in Figures 5.8 to Figure 5.8: Experimental roll (φ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines.

88 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 75 Figure 5.9: Experimental Pitch (θ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines. Figure 5.10: Experimental yaw (ψ) error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines.

89 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 76 Figure 5.11: Experimental total angle error (deg) for spin speeds 40 /s, 110 /s, 180 /s, 255 /s. Simulated complex Monte Carlo 3σ bounds marked in blue dashed lines. It is debatable whether the Gamma distribution was the correct choice to model time latencies in the Raspberry Pi. As can be seen, the total error bounds tend to over bound the data. Nevertheless, the inclusion of random time delays has represented the trend of increasing uncertainty in the yaw angle at higher rotation speeds. The problem of modelling these lags is fraught with difficulties and probably best avoided by simply using more deterministic hardware or software, such as a microcontroller or a real time operating system. The error bounds on the pitch and yaw are virtually unchanged, again confirming that time delays have negligible effect on these components. Note, that such a high fidelity simulation is probably not justified, as there are likely just a few uncertainties that contribute to most of the error. This will be investigated in the proceeding sections by performing an uncertainty percentage contribution analysis Correlation There exists a correlation between the systematic errors influencing B B, B S and the estimated inertial vectors I B, I S, since the inertial vectors are estimated from data collected with the same two sensors that collect B B, B S data. Intuitively, it is speculated that this correlation should decrease the overall attitude error calculated with the experimental data. To investigate the correlation in systematic errors between the estimated inertial vectors and the measured body vectors, two simulations were run, the first simulation was the complex Monte Carlo simulation described previously, which took into account all correlated systematic errors. In the second simulation, the inertial and body vectors

90 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 77 were de-correlated by performing the NLLS estimation of the inertial vectors and small alignment angles on data with different systematic errors to those effecting the body vectors. Note, this situation does not really correspond to any physically meaningful scenario, but it it simply used to show the effect of correlation. The simulation was run assuming a 1 degree per second spin rate, thus time errors bear no effect on these results. The 3σ uncertainty bounds resulting from the two simulations are presented below. The thick black line represents the correlated result and the thin blue line for the uncorrelated result. Figure 5.12: Effect of correlated systematic errors on attitude (simulated). Black - correlation accounted for. Blue - no correlation. As expected, the calculated attitude error is higher for the uncorrelated simulation. The roll error has increased 0.07 degrees (+42%), the pitch error has increase by between 0.07 to 0.16 degrees (+57%, + 680%) the yaw error has increased by between 0.1 to 0.2 degrees (+100%, +640%) and the total angle error has increased around 0.1 degrees (+57%). 5.5 In-Orbit Uncertainties The uncertainties expected in orbit are different from those demonstrated in the laboratory. In this experiment, it was necessary to estimate the inertial Sun and magnetic vector for the local set-up. In orbit, different inertial magnetic and Sun vectors would be used in the attitude calculation (refer to Figure 5.1). These vectors would come from reference models and the spacecraft s instantaneous position. There are uncertainties associated with these models and with the spacecraft position. Further more, the relative angle between the inertial Sun and magnetic vector is a function of orbital position. Attitude estimates are more accurate when the inertial Sun and magnetic vectors are orthogonal,

91 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 78 in this case the vectors contribute maximum information to the attitude solution, if they become aligned an attitude estimate is not possible since both vectors contribute the same directional information, and thus there is only one unique vector (not enough for an attitude solution). The experimental set-up used was not easily re-configurable and could only simulate one Mag-Sun angle, it was set to a favourable orientation of 85 degrees. To understand what order of errors might be expected in a low Earth orbit, the Monte Carlo simulation was modified. Errors that were only present in the lab (parallax) were removed. Errors in the inertial magnetic and Sun vectors were modified to those that would be expected from using models. The error in the inertial magnetic field was guided by the predicted errors in the WMM2015 [31] (assessed in January 2017). The inertial magnetic field direction was maintained, and scaled up to 24,300 nt total strength. (as would be expected in a low Earth orbit at 500 km altitude.) The 1σ errors in the components were set to [138, 89, 165] T corresponding to inclination and declination errors of approximately 0.22 and 0.35 respectively. The inertial Sun vector is known very accurately and can be modelled to a high precision if a complex model is used [32]. Since this is a post-processing the attitude solution, it was assumed that the most accurate Sun ephemeris possible is used, and that the errors in this are negligible in comparison to the accuracy of the Sun sensor. The uncertainty in the alignments was assumed equal in all three axes for both the Sun sensor and magnetometer with a standard error of 0.04 degrees. This was guided by the average standard error achieved in the NLLS estimation process in Chapter 4. The same 85 degree Sun-Mag angle as in the experiment was used. Random noise for the magnetometer and Sun sensor was the same as listed in table 5.1. Random and systematic timing errors were the same as listed in Table 5.2. Finally, orbital position errors were not considered. The simulation was run until results converged within 5% (this is why some lines appear jagged in the figures.) Results in terms of the 3σ Euler angle errors and total angle error are shown below in Figures 5.13 to 5.16 for spin speeds, 90, 180, 360 degrees per second.

92 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 79 Figure 5.13: Roll (φ) error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM. Figure 5.14: Pitch (θ) error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM.

93 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 80 Figure 5.15: Yaw (ψ) error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM. Figure 5.16: Total angle error 3σ (deg) in orbit for spin speeds 90 /s, 180 /s, 360 /s from MCM.

94 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 81 The results show that the errors are much higher in orbit than in the laboratory. This is due to the large uncertainties in the inertial magnetic field, this will be investigated in the next section. Figure 5.15 and 5.16 show that the time delays only effect the yaw angle and total error. Studying the total error (Figure 5.16) shows that the timing delay does not effect the total attitude error until the spin speed exceeds about 90 /S, as up until this point, the errors in yaw (Figure 5.15) are insignificant compared to those in roll (Figure 5.13). (Recall, the total error is the root sum square of the three Euler angle errors, so it will be dominated by the largest of these components.) Uncertainty Percentage Contribution To understand which sources of uncertainty contribute the largest amount to the attitude error in orbit, an Uncertainty Percentage Contribution (UPC) analysis can be performed. The UPC for a variable, gives the percentage contribution of the uncertainty in that variable to the squared uncertainty in the result. [1]. If the measured variables and their errors are independent of one another, then the general formula for the Taylor Series Method of uncertainty propagation is [1]: ( ) 2 ( ) 2 ( ) 2 r r r Ur 2 = UX 2 X 1 + UX 2 1 X UX 2 2 X J (5.1) J Where, U r is the uncertainty in the result and U Xi variables. Then the UPC for variable X i is [1]: are the uncertainties in the measured UP C i = ( r/ X i) 2 (U Xi ) 2 U 2 r 100 (5.2) This method was applied to the in-orbit scenario. First, a check was made to ensure that the TSM was indeed a reasonable approximation by comparing the uncertainty bounds predicted to those from the Monte Carlo Method. For no errors in timing the two results are presented below. Note, that since no timing errors are simulated, the uncertainty bounds are symmetric, thus only the positive half is given in the figure. The results show the TSM is a reasonable approximation.

95 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 82 Figure 5.17: 3σ uncertainty bounds for in orbit. Comparison of Taylor Series Method and Monte Carlo Method. No time errors simulated, thus uncertainty bounds are symmetric. The relative UPC for each error is a function of rotational position of the satellite, so the UPC is plotted against position for each component of attitude φ, θ, ψ. Since the UPC shows the contribution of each uncertainty to the squared uncertainty in the result squared, the differences are exaggerated. This method is useful to rank the uncertainties, but it is not possible to calculate an absolute contribution of each to the non squared uncertainties to the result. Nevertheless, given that the uncertainty of the result is dominated by one or two sources of uncertainty, then reasonable estimates can be made of how much these contribute to the total uncertainty. Further, it is a simple case of switching off the uncertainty under consideration and re-running the analysis to determine the quantitative contribution that uncertainty had to the result. The UPC can be plotted for the components of attitude, φ, θ, ψ or for the total attitude error. The plots for UPCs to total attitude error are given below. Since the UPCs are so widely different, they were sorted in descending order and plotted over two graphs. The first graph contains the dominant sources of uncertainty. The second graph contains all of the insignificant sources.

96 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 83 (a) (b) Figure 5.18: Uncertainty Percent Contribution to total angle error. (a) most significant contributors. (b) less significant contributors. Figure 5.18 shows that the total attitude error is dominated by the uncertainty in the inertial magnetic field model. This agrees with common knowledge. The reason the X component of the inertial magnetic field is not one of the top contributors is simply because it is so small compared to the Y and Z components ( I B = [ 1950, 6170, 23420] T nt ). It is also possible to plot the most significant contribution to each of the Euler angles. This is shown in Figure 5.19.

97 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 84 (a) (b) (c) Figure 5.19: Uncertainty Percent Contribution to error in Euler angles. (a) Roll (φ) (b) Pitch (θ) (c) Yaw (ψ) One interesting observation from Figure 5.19 (b) and (c) is that the Sun sensor roll alignment (φ 0S ) is a major contributor to pitch error and the uncertainty in the alignment of the Sun sensor yaw alignment ψ 0S is a significant contributor to the yaw error. It might be possible to reduce the attitude error by defining the Sun sensor axes to be the body axes, thus eliminating this alignment error. But, yaw angle error is the lowest of the three Euler angles. Further, φ 0S uncertainty is only a major contributor around the home position of spin rotation, and this is the point where the pitch error is lowest anyway (see Figure 5.17). This means the there will be minimal improvements in total error if the body axis is defined by the Sun sensor. This can be verified by switching off the alignment uncertainties of the Sun sensor in the TSM simulation, and re-propagating the errors. The result is shown below in Figure 5.20, it shows a 0.05 degree reduction in pitch error (at the home position), and a constant 0.04 degree reduction in yaw error. These result in a 0.02 degree reduction in total angle error (3σ).

98 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 85 Figure 5.20: Reduction in 3σ uncertainty bounds by defining body axes from Sun sensor degree reduction in total error (black). As just demonstrated, the TSM makes it very quick to answer interesting what if questions, since it is quick to run. Questions such as: What would be the total attitude uncertainty if we used the US DoD Milspec[33] errors in the WMM? ([140, 140, 200] T )? (These are the standard errors at sea level, but should serve as a conservative estimate of errors at 500 km altitude, since the field is more uniform away from the Earth s crust and the total field strength is lower.) What if the uncertainties in the camera principal point and focal length were able to be reduced by a factor of 10? What if a lower fidelity Sun ephemeris was used with a mean error of 0.01 degrees? The simulations revealed that the changes in total error are significant for an increased uncertainty in the inertial magnetic field (case b). For changes to the uncertainty in the Sun sensor focal length and principal point, the change in total angle error is negligible (case c), as with using a lower fidelity Sun ephemeris (case d). The results of these scenarios are depicted in Figure 5.21, with a summary of the changes given in Table 5.3 since the changes are difficult to read off the figure.

99 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 86 Figure 5.21: 3σ uncertainty for Euler angle errors and total angle error for what if cases. a - default case. b - milspec error in I B components. c - uncertainties in camera principal point and focal length reduced 1 order of magnitude. d - Lower fidelity Sun ephemeris used. Change in attitude error (deg) Scenario φ θ ψ Total Angle b: U( I B ) to to c: U(f, u 0, v 0 10 ) to to d: U( I S 0.01 ) to to Table 5.3: Summary of changes in 3σ attitude errors from different what if scenarios. b - milspec error in I B components. c - uncertainties in camera principal point and focal length reduced 1 order of magnitude. d - Lower fidelity Sun ephemeris used. One interesting scenario is to find what are the uncertainty contributions in absence of the dominating errors in the inertial magnetic field. If the inertial magnetic field errors are set to zero, then the 3σ total angle error is around 0.36 degrees, shown in Figure 5.22

100 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 87 Figure 5.22: 3σ attitude error for the case where uncertainties in the inertial magnetic field are zero. The major contributors to the Euler angles and total angle error are shown in Figure 5.23 and 5.24 below.

101 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 88 (a) (b) (c) Figure 5.23: Uncertainty Percent Contribution to error in Euler angles in absence of I B errors. (a) Roll (φ) (b) Pitch (θ) (c) Yaw (ψ). Figure 5.24: Uncertainty Percent Contribution to total angle error in absence of I B errors.

102 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 89 Figure 5.24 shows that in the absence of uncertainty in the inertial magnetic field, magnetometer noise is the largest contributor to total angle attitude error. This is followed by the uncertainty in the Sun sensor principal point and alignment. Further investigation showed that if Sun sensor alignment uncertainty was eliminated and the 3σ total angle uncertainty reduced by 0.04 degrees, further reducing uncertainties in principal point by a factor of 10 would decrease the total error further by 0.09 degrees resulting in a total uncertainty of 0.26 degrees. Note that magnetometer calibration and alignment uncertainty has a very small effect. Observe that a magnetometer alignment angle and the magnetometer y-bias are ranked 6th and 7th in the top 7 UPCs to total angle error. 5.6 Best Accuracy Achievable A secondary objective was to find the best attitude performance achievable with the calibrated sensors. Here, the performance of the Triad, Q-Method and EKF are compared for the in-laboratory scenario. The EKF implemented was the Mission Mode EKF described in [12]. This EKF estimates attitude as well as gyro Bias, and uses the gyro measurements in place of a dynamic model. The quaternion is used as the global attitude representation, while three-components in the state are used to represent the local attitude errors [12]. The gyro was not calibrated before implementing the EKF, so scale factor errors could impact accuracy, especially at higher rotation speeds [34]. Further, the gyro rate random walk was set to zero. In a more in-depth approach, one would estimate it from an Allan deviation plot. The filter was initialised with the truth attitude from the encoder. The theoretical optimal weights to chose for the q Method are inversely proportional to the variance in the total angle measured by the sensor [12]. Although it was found that using equal weights resulted in slightly lower attitude errors than the theoretical optimal weights calculated in the formula above, so equal weights were used instead. This could mean that the systematic errors in the data are still significant, or that the method to calculate the optimal weights was incorrect. It is difficult to compare the three methods in a fair way, since the EKF is able to provide the attitude even when the Sun is not visible. To ensure the comparison was fair, the EKF results were restricted to the periods where the Sun was visible. A comparison of the three attitude estimation algorithms is given below in Figure 5.25 to 5.28.

103 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 90 Figure 5.25: Roll (φ) errors Triad vs Q Method, vs EKF, 40 /s spin rate Figure 5.26: Pitch (θ) errors Triad vs Q Method, vs EKF, 40 /s spin rate

104 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 91 Figure 5.27: Yaw (ψ) errors Triad vs Q Method, vs EKF, 40 /s spin rate Figure 5.28: Total angle errors Triad vs Q Method, vs EKF, 40 /s spin rate

105 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 92 The summary of the total angle error for all spins runs conducted is given below in Figure It also gives the total angle error that the EKF achieved over the entire rotation interval (including when Sun is not available). Figure 5.29: 3σ total angle error comparison for all data files at rotation speeds from degrees per second. The accuracy of the three methods is comparable. It was expected that the EKF would have significantly out performed the Triad and q-method, but this is not the case. Possible reasons for this could be inadequately tuned covariances in the EKF. This becomes even more important when using the gyro measurements to replace the dynamic model, as noisy MEMS gyro measurements could readily degrade the attitude solution if the covariance was not correctly tuned. The noise characteristics of MEMS gyroscopes are orders of magnitude worse than the high-precision gyroscopes that are typically used for replacing the dynamic model. Springmann[35] notes that for small spacecraft without sloshing fuel or flexible structures, better accuracy may be achieved by using a dynamic model rather than a gyro. For a small spinning spacecraft the dynamic model should be reasonably simple, and have a much lower process noise than a MEMS gyroscope.

106 CHAPTER 5. ATTITUDE UNCERTAINTY ANALYSIS 93 It is seen that the Triad and q-method are very close in performance. It should be noted that the Triad method already essentially weights the Sun measurements more than the magnetometer because the Sun vector is treated as the first vector in the Triad equation, which means two pieces of information come from the Sun, while only one piece of information comes from the magnetic vector. It was found that when the order of these vectors was changed in the Triad method, its results were noticeably worse, and then the q-method was seen to clearly perform better than the Triad method. Excluding the two highest speed runs, where timing errors start to make a large impact, the average 3σ attitude error is degrees for the Triad method, degrees for the q-method, degrees for the EKF with Sun in view and degrees for the EKF over the entire rotation period (with and without Sun). The attitude accuracy achieved here is better than that predicted by the earlier Monte Carlo simulations (0.2 3σ). This suggests that some of the uncertainties used in that simulation were over-conservative. Note, that at higher speeds, the EKF solution is much worse than the Triad and q-method, since it is impacted by both timing latencies and gyro scale factor errors. It was expected that the accuracy of the EKF would be worse without the Sun in view, and it is, but the increase in error seems disproportionate. The EKF errors for the entire 360 degree rotation have been included in the appendix, and seem to suggest there could be a slight wobble of around 0.1 degree in the spin table, seen from sinusoidal variation in the roll and pitch, or it may be related to the variation in inertial magnetic field magnitude measured from the off-axis magnetometer. Investigation into this is flagged for future work.

107 Chapter 6 Conclusion 6.1 Key Findings The Triad and q-method are robust and simple to implement and their use should not be discounted for spinning spacecraft. The Kalman filter has the advantage that it can provide an attitude solution even when the Sun is not in view. Although, in-practice it may not give significantly better results than the Triad and q-methods, especially if the covariances are not tuned accurately. Uncertainty in the inertial magnetic field dominates attitude errors in orbit. To minimise attitude errors, focus should be placed on obtaining a low-noise magnetometer and high quality gyro, since the magnetometer noise was dominant in absence of inertial field uncertainty, and gyro noise will dominate the Kalman filter solution if it is used for dynamic model replacement. If the spacecraft is spinning at speeds higher than 0.25Hz, care should be taken to ensure time stamps are accurate, as timing errors this will degrade the attitude solution at higher spin speeds. A robust attitude determination approach might make use of both the Kalman filter and Triad method. Case Result Assumptions Attitude error simulated In- Lab Attitude error demonstrated In-Lab Attitude error Simulated In- Orbit (WMM errors) Attitude error Simulated In- Orbit (Mil-spec WMM errors) 0.20 (3σ) MC sim, Triad method, correlated errors, 85 mag-sun angle 0.14 (3σ) Triad method, correlated errors, 85 mag-sun angle 0.77 (3σ) TSM sim, Triad method,85 mag-sun angle, I B 24,300nT, WMM2015 I B uncertainty 1.10 (3σ) TSM sim, Triad method, 85 mag-sun angle, I B 24,300nT, MIL-PRF-89500A I B uncertainty Table 6.1: Key results. 94

108 CHAPTER 6. CONCLUSION Detailed Conclusion Experimental testing of attitude determination hardware is a vitally important checkpoint to complete before sending any spacecraft into orbit. Tests are performed to validate calibrations, quantify uncertainties and discover any unexpected interactions or behaviours. The work in this thesis was an exercise in the above, and did discover several such behaviours during the course of calibrations: The timing consistency of the hardware used (Raspberry Pi) was found to be quite poor. It was discovered that the camera had an unexpected effect on the flux gate magnetometer bias. The magnetic field gradient in the vicinity of the spin table was shown to make the magnitude of the measured magnetic field change significantly when the magnetometer origin was not on the spin axis. The Sun sensor proved to be surprisingly sensitive to the choice of Sun used. The encoder used for the attitude truth was discovered to have indeterministic behaviour. It was speculated that the root cause was in the decoder electronics, but given time constraints this was not fully diagnosed, instead a work-around was found by including an error flag in the ground station software, to indicate when the encoder suffered a fault. Attitude determination hardware, namely a digital Sun sensor and magnetometer were calibrated using simple methods requiring no specialised equipment. The uncertainties in these calibrations were quantified. These uncertainties were then propagated through simulation to determine the resulting uncertainty in the attitude solution of a spinning spacecraft using such sensors. It was predicted that uncertainties in timing increased the attitude error at higher spin rates. Simulations showed that the total attitude error should not exceed 0.2 degrees at a spin rate of 40 degrees per seconds, while at 255 degrees per second, total error should not exceed 0.8 degrees (3σ). Experimental data was then gathered by spinning the calibrated sensors on a single axis spin table, equipped with an optical encoder that provided a truth attitude solution to quantify errors. The calibrations and uncertainty predictions were validated by showing that the predicted uncertainty bounds were reasonable, although tended to fall on the conservative side, with attitude errors being over-bounded. It was stressed that these results are valid for only the particular inertial Sun-magnetic field geometry present in the laboratory (85 degrees). Furthermore, correlated systematic errors had the effect of reducing attitude error calculated on the laboratory spin table. To gain an understanding of what attitude errors would be expected from an in-orbit satellite fitted with the same hardware (but better clock), and calibrated in the same manner, spinning in the same orientation, a simulation was run that used the standard errors calculated in the calibrations along with those expected from using the WMM2015 model. It was found that the attitude error was much higher in orbit, around 0.77 degrees (3σ). To understand what the major contributions to this error were, an uncertainty percentage

109 CHAPTER 6. CONCLUSION 96 contribution analysis was run. The results of this analysis showed that the uncertainty in the inertial magnetic field was the dominant factor. In absence of this dominating uncertainty, the next largest source of error was magnetometer noise. Contributions from systematic uncertainties in the magnetometer and Sun sensor calibration were shown to be negligible, thus the simplistic method for calibrating the magnetometer (rotating the spacecraft by hand around all axes) is a reasonable method that can be applied without the need for a Helmholtz cage. Further, it was shown that using a lower accuracy Sun ephemeris does not significantly increase total attitude error. In a test to determine the highest attitude accuracy attainable in the laboratory setting, three attitude determination algorithms were compared; the Triad method, the q-method and the Extended Kalman Filter. For low speed spins all three methods showed comparable results of around 0.14 degrees attitude error (3σ). The Kalman Filter did not always outperform the Triad and q-methods, possibly due to inadequate covariance tuning. At higher spin speeds, the Kalman Filter performed noticeably worse than the Triad and q-methods, due to the combination of latencies and gyro scale factor error. As expected, the attitude error for the Kalman Filter without the Sun visible was higher than with the Sun visible, as it must rely on just the magnetometer and gyro during these periods. Both of which are fairly low-grade COTS instruments. 6.3 Future Work Future work on the attitude determination test stand can be grouped into three categories: mechanical design, electrical hardware, and data finally processing/calibration. Possible future developments for the spin table mechanical hardware are: Use of a higher count, hollow shaft encoder to achieve better angular resolution and avoid the issue of mechanical backlash in the gears. Higher reduction ratio gears to provide more torque and thus a smoother rotation speed. Use of two bearings spaced far apart to minimise possible wobble in the spin table. larger rotation platform with a clamping mounting system that would allow positioning of a cubesat in several orientations for estimation of sensor alignment about 3rd axis. Location of the motor further from the spin table spool to reduce the magnetic field gradient. Use of a Helmholtz cage, or perhaps one external inertial magnetometer to allow experimental data gathering to proceed, even in the presence of a changing inertial field, as this would provide a truth solution. Suggested improvements to electrical design are:

110 CHAPTER 6. CONCLUSION 97 Use of a microcontroller to provide precise timestamps for the magnetometer and sun sensor. The magnetometer could be controlled by a Raspberry Pi that is running a real time operating system. Use of a strobe light to synchronise encoder and satellite clocks. Development of the Sun sensor to move image processing to a dedicated microcontroller. The microcontroller would then just output the Sun unit vector. This would greatly reduce data volume and allow the Sun sensor can use the full 5MP resolution of the camera. Research into correct Sun simulation. Use a constant current power supply for Sun LED. Finally, further work to the calibration and data processing may be: Investigate what sensors could be added to drive the attitude error into the hundredths of a degree range. Study the merits of using a dynamic model vs MEMS gyro for propagation in the EKF for small spinning spacecraft. Investigation into mechanical calibration of Sun sensor by the use of encoder to see if it can achieve better results than a checker board style calibration. Further development of the Sun sensor might achieve higher accuracy by using more advanced calibrations such as dark frame subtraction, and finding to optimum exposure and ISO settings for the camera. Additionally, investigation into the effects of a rolling shutter could be performed and rolling shutter compensation techniques could be applied [36] so that the Sun sensor might achieve excellent accuracy at high spin rates. Integration of determined uncertainties into a full orbit simulation to determine the maximum and minimum attitude errors over the course of a full orbit. Investigate different attitude determination methods for spinning space craft, such as separate estimation of spin axis and rotation position to compare their attitude accuracy with 3 axis methods. Quantification of errors introduced by temperature effects. Are they worth considering?

111 Appendix Presented below are plots of the EKF attitude error for the entire rotation period, with the period of Sun visibility (±40 ) marked with vertical dashed lines. Significant systematic errors still exist when considering the entire rotation period. This is possibly due to the non-constant inertial magnetic field (documented in Chapter 4) or a wobble in the spin table bearing. 98

112 CHAPTER 6. CONCLUSION 99

113 CHAPTER 6. CONCLUSION 100

Sensors: a) Gyroscope. Micro Electro-Mechanical (MEM) Gyroscopes: (MEM) Gyroscopes. Needs:

Sensors: a) Gyroscope. Micro Electro-Mechanical (MEM) Gyroscopes: (MEM) Gyroscopes. Needs: Sensors: Needs: Data redundancy Data for both situations: eclipse and sun Question of sampling frequency Location and size/weight Ability to resist to environment Low consumption Low price a) Gyroscope

More information

Design Architecture of Attitude Determination and Control System of ICUBE

Design Architecture of Attitude Determination and Control System of ICUBE Design Architecture of Attitude Determination and Control System of ICUBE 9th Annual Spring CubeSat Developers' Workshop, USA Author : Co-Author: Affiliation: Naqvi Najam Abbas Dr. Li YanJun Space Academy,

More information

A Stellar Gyroscope for CubeSat Attitude Determination

A Stellar Gyroscope for CubeSat Attitude Determination A Stellar Gyroscope for CubeSat Attitude Determination Samir A. Rawashdeh and James E. Lumpp, Jr. Space Systems Laboratory University of Kentucky James Barrington-Brown and Massimiliano Pastena SSBV Space

More information

Attitude Determination using Infrared Earth Horizon Sensors

Attitude Determination using Infrared Earth Horizon Sensors SSC14-VIII-3 Attitude Determination using Infrared Earth Horizon Sensors Tam Nguyen Department of Aeronautics and Astronautics, Massachusetts Institute of Technology 77 Massachusetts Avenue, Cambridge,

More information

Attitude Determination and. Attitude Control

Attitude Determination and. Attitude Control Attitude Determination and Placing the telescope in orbit is not the end of the story. It is necessary to point the telescope towards the selected targets, or to scan the selected sky area with the telescope.

More information

NEW EUMETSAT POLAR SYSTEM ATTITUDE MONITORING SOFTWARE

NEW EUMETSAT POLAR SYSTEM ATTITUDE MONITORING SOFTWARE NEW EUMETSAT POLAR SYSTEM ATTITUDE MONITORING SOFTWARE Pablo García Sánchez (1), Antonio Pérez Cambriles (2), Jorge Eufrásio (3), Pier Luigi Righetti (4) (1) GMV Aerospace and Defence, S.A.U., Email: pgarcia@gmv.com,

More information

Integrated Test Facility for Nanosat Assessment and Verification

Integrated Test Facility for Nanosat Assessment and Verification Integrated Test Facility for Nanosat Assessment and Verification Steve Wassom, Quinn Young, Bryan Bingham, Rees Fullmer, Mitch Whiteley, Robert Burt, Mike Watson, Tom Ortiz, Joe Richards, Sam Wilcox Utah

More information

FIBER OPTIC GYRO-BASED ATTITUDE DETERMINATION FOR HIGH- PERFORMANCE TARGET TRACKING

FIBER OPTIC GYRO-BASED ATTITUDE DETERMINATION FOR HIGH- PERFORMANCE TARGET TRACKING FIBER OPTIC GYRO-BASED ATTITUDE DETERMINATION FOR HIGH- PERFORMANCE TARGET TRACKING Elias F. Solorzano University of Toronto (Space Flight Laboratory) Toronto, ON (Canada) August 10 th, 2016 30 th AIAA/USU

More information

Infrared Earth Horizon Sensors for CubeSat Attitude Determination

Infrared Earth Horizon Sensors for CubeSat Attitude Determination Infrared Earth Horizon Sensors for CubeSat Attitude Determination Tam Nguyen Department of Aeronautics and Astronautics Massachusetts Institute of Technology Outline Background and objectives Nadir vector

More information

Spinning Satellites Examples. ACS: Gravity Gradient. ACS: Single Spin

Spinning Satellites Examples. ACS: Gravity Gradient. ACS: Single Spin Attitude Determination and Attitude Control Placing the telescope in orbit is not the end of the story. It is necessary to point the telescope towards the selected targets, or to scan the selected sky

More information

Attitude Determination and Control System Design for STU-2A Cubesat and In-Orbit Results

Attitude Determination and Control System Design for STU-2A Cubesat and In-Orbit Results 13 th Annual Summer CubeSat Developer s Workshop August 6-7, 2016, Logan, Utah Attitude Determination and Control System Design for STU-2A Cubesat and In-Orbit Results Presented by Shufan Wu Guowen Sun,

More information

Fundamentals of attitude Estimation

Fundamentals of attitude Estimation Fundamentals of attitude Estimation Prepared by A.Kaviyarasu Assistant Professor Department of Aerospace Engineering Madras Institute Of Technology Chromepet, Chennai Basically an IMU can used for two

More information

Infrared Earth Horizon Sensors for CubeSat Attitude Determination

Infrared Earth Horizon Sensors for CubeSat Attitude Determination Infrared Earth Horizon Sensors for CubeSat Attitude Determination Tam Nguyen Department of Aeronautics and Astronautics Massachusetts Institute of Technology Outline Background and objectives Nadir vector

More information

Determining absolute orientation of a phone by imaging celestial bodies

Determining absolute orientation of a phone by imaging celestial bodies Technical Disclosure Commons Defensive Publications Series October 06, 2017 Determining absolute orientation of a phone by imaging celestial bodies Chia-Kai Liang Yibo Chen Follow this and additional works

More information

Space Surveillance using Star Trackers. Part I: Simulations

Space Surveillance using Star Trackers. Part I: Simulations AAS 06-231 Space Surveillance using Star Trackers. Part I: Simulations Iohan Ettouati, Daniele Mortari, and Thomas Pollock Texas A&M University, College Station, Texas 77843-3141 Abstract This paper presents

More information

Pointing Control for Low Altitude Triple Cubesat Space Darts

Pointing Control for Low Altitude Triple Cubesat Space Darts Pointing Control for Low Altitude Triple Cubesat Space Darts August 12 th, 2009 U.S. Naval Research Laboratory Washington, D.C. Code 8231-Attitude Control System James Armstrong, Craig Casey, Glenn Creamer,

More information

Automated Tuning of the Nonlinear Complementary Filter for an Attitude Heading Reference Observer

Automated Tuning of the Nonlinear Complementary Filter for an Attitude Heading Reference Observer Automated Tuning of the Nonlinear Complementary Filter for an Attitude Heading Reference Observer Oscar De Silva, George K.I. Mann and Raymond G. Gosine Faculty of Engineering and Applied Sciences, Memorial

More information

EE565:Mobile Robotics Lecture 6

EE565:Mobile Robotics Lecture 6 EE565:Mobile Robotics Lecture 6 Welcome Dr. Ahmad Kamal Nasir Announcement Mid-Term Examination # 1 (25%) Understand basic wheel robot kinematics, common mobile robot sensors and actuators knowledge. Understand

More information

Attitude Estimation Version 1.0

Attitude Estimation Version 1.0 Attitude Estimation Version 1. Francesco Farina May 23, 216 Contents 1 Introduction 2 2 Mathematical background 2 2.1 Reference frames and coordinate systems............. 2 2.2 Euler angles..............................

More information

Nemanja Jovanović. School of Electrical Engineering

Nemanja Jovanović. School of Electrical Engineering Nemanja Jovanović Aalto-2 satellite attitude control system Bagus Adiwiluhung Riwanto CubeSat Attitude System Calibration and Testing School of Electrical Engineering Thesis submitted in partial fulfilment

More information

CS491/691: Introduction to Aerial Robotics

CS491/691: Introduction to Aerial Robotics CS491/691: Introduction to Aerial Robotics Topic: Midterm Preparation Dr. Kostas Alexis (CSE) Areas of Focus Coordinate system transformations (CST) MAV Dynamics (MAVD) Navigation Sensors (NS) State Estimation

More information

PRATHAM IIT BOMBAY STUDENT SATELLITE. Critical Design Report Attitude Determination and Control System (ADCS) for Pratham

PRATHAM IIT BOMBAY STUDENT SATELLITE. Critical Design Report Attitude Determination and Control System (ADCS) for Pratham PRATHAM IIT BOMBAY STUDENT SATELLITE Critical Design Report Attitude Determination and Control System (ADCS) for Pratham Indian Institute of Technology, Bombay 26 June, 2010 Chapter 1 Objectives of ADCS

More information

Attitude Determination using Infrared Earth Horizon Sensors

Attitude Determination using Infrared Earth Horizon Sensors Attitude Determination using Infrared Earth Horizon Sensors Tam N. T. Nguyen Department of Aeronautics and Astronautics Massachusetts Institute of Technology 28 th Annual AIAA/USU Conference on Small Satellites

More information

The Swarm Vector Field Magnetometer (VFM): instrument commissioning & performance assessment José M. G. Merayo

The Swarm Vector Field Magnetometer (VFM): instrument commissioning & performance assessment José M. G. Merayo instrument commissioning & performance assessment José M. G. Merayo DTU Space, Technical University of Denmark Division Measurement & Instrumentation Systems overview Fluxgate principle Amorphous magnetic

More information

BOWSER Balloon Observatory for Wavelength and Spectral Emission Readings

BOWSER Balloon Observatory for Wavelength and Spectral Emission Readings COSGC Space Research Symposium 2009 BOWSER Balloon Observatory for Wavelength and Spectral Emission Readings BOWSER 1 Mission Premise 4.3 km above sea level 402.3km above sea level BOWSER 2 Information

More information

Attitude Determination System of Small Satellite

Attitude Determination System of Small Satellite Attitude Determination System of Small Satellite Satellite Research Centre Jiun Wei Chia, M. Sheral Crescent Tissera and Kay-Soon Low School of EEE, Nanyang Technological University, Singapore 24 th October

More information

Lightweight, Low-Power Coarse Star Tracker

Lightweight, Low-Power Coarse Star Tracker Lightweight, Low-Power Coarse Star Tracker Ray Zenick AeroAstro Inc. 17th Annual AIAA/USU Conference on Small Satellites Paper Number SSC03-X-7 August 14, 2003 The LIST Concept Medium accuracy star tracker

More information

D-SAT Simplified Magnetic Attitude Control

D-SAT Simplified Magnetic Attitude Control D-SAT Simplified Magnetic Attitude Control Warren K. Soh, Norhizam Hamzah, Ahmad Sabirin Arshad Astronautic Technology (M) Sdn. Bhd. (ATSB) Suite G1A, Enterprise 3, Technology Park Malaysia, Bukit Jalil

More information

IMU Filter. Michael Asher Emmanuel Malikides November 5, 2011

IMU Filter. Michael Asher Emmanuel Malikides November 5, 2011 IMU Filter Michael Asher Emmanuel Malikides November 5, 2011 Abstract Despite the ubiquitousness of GPS devices, on board inertial navigation remains important. An IMU like the Sparkfun Ultimate IMU used,

More information

Generation X. Attitude Control Systems (ACS) Aprille Ericsson Dave Olney Josephine San. July 27, 2000

Generation X. Attitude Control Systems (ACS) Aprille Ericsson Dave Olney Josephine San. July 27, 2000 Generation X Attitude Control Systems (ACS) Aprille Ericsson Dave Olney Josephine San July 27, 2000 ACS Overview Requirements Assumptions Disturbance Torque Assessment Component and Control Mode Recommendations

More information

PRELIMINARY DESIGN REVIEW

PRELIMINARY DESIGN REVIEW STUDENTS SPACE ASSOCIATION THE FACULTY OF POWER AND AERONAUTICAL ENGINEERING WARSAW UNIVERSITY OF TECHNOLOGY PRELIMINARY DESIGN REVIEW ATTITUDE DETERMINATION AND CONTROL SYSTEM of PW-Sat2 student satellite

More information

THE DYNAMIC TEST EQUIPMENT FOR THE STAR TRACKERS PROCESSING

THE DYNAMIC TEST EQUIPMENT FOR THE STAR TRACKERS PROCESSING THE DYNAMIC TEST EQUIPMENT FOR THE STAR TRACKERS PROCESSING ABSTRACT Sergey Voronkov Space Research Institute, Russian Academy of Sciences, 117997, Profsoyuznaya str., 84/32, Moscow, Russia Phone: +7 095

More information

Lecture Module 5: Introduction to Attitude Stabilization and Control

Lecture Module 5: Introduction to Attitude Stabilization and Control 1 Lecture Module 5: Introduction to Attitude Stabilization and Control Lectures 1-3 Stability is referred to as a system s behaviour to external/internal disturbances (small) in/from equilibrium states.

More information

Attitude Control Strategy for HAUSAT-2 with Pitch Bias Momentum System

Attitude Control Strategy for HAUSAT-2 with Pitch Bias Momentum System SSC06-VII-5 Attitude Control Strategy for HAUSAT-2 with Pitch Bias Momentum System Young-Keun Chang, Seok-Jin Kang, Byung-Hoon Lee, Jung-on Choi, Mi-Yeon Yun and Byoung-Young Moon School of Aerospace and

More information

Multi-aperture miniaturized star sensors, modular building blocks for small satellite AOCS systems

Multi-aperture miniaturized star sensors, modular building blocks for small satellite AOCS systems Multi-aperture miniaturized star sensors, modular building blocks for small satellite AOCS systems Jeroen Rotteveel ISIS Innovative Solutions In Space BV Rotterdamseweg 380, 2629HG Delft, The Netherlands;

More information

Design and Implementation of a Space Environment Simulation Toolbox for Small Satellites

Design and Implementation of a Space Environment Simulation Toolbox for Small Satellites 56th International Astronautical Congress 25 35th Student Conference (IAF W.) IAC-5-E2.3.6 Design and Implementation of a Space Environment Simulation Toolbox for Small Satellites Rouzbeh Amini, Jesper

More information

Machine Positioning Uncertainty with Laser Interferometer Feedback

Machine Positioning Uncertainty with Laser Interferometer Feedback Machine Positioning Uncertainty with Laser Interferometer Feedback The purpose of this discussion is to explain the major contributors to machine positioning uncertainty in systems with laser interferometer

More information

Zeeman Effect. Alex Povilus Physics 441- Fall 2003 December 20, 2003

Zeeman Effect. Alex Povilus Physics 441- Fall 2003 December 20, 2003 Zeeman Effect Alex Povilus Physics 441- Fall 2003 December 20, 2003 Abstract The Zeeman Effect is observed by application of a strong magnetic field to a mercury vapor cell and exciting transitions by

More information

MAE 142 Homework #5 Due Friday, March 13, 2009

MAE 142 Homework #5 Due Friday, March 13, 2009 MAE 142 Homework #5 Due Friday, March 13, 2009 Please read through the entire homework set before beginning. Also, please label clearly your answers and summarize your findings as concisely as possible.

More information

From Hall Effect to TMR

From Hall Effect to TMR From Hall Effect to TMR 1 Abstract This paper compares the century old Hall effect technology to xmr technologies, specifically TMR (Tunnel Magneto-Resistance) from Crocus Technology. It covers the various

More information

Native Earth Electric Field Measurements Using Small Spacecraft in Low Earth Orbit

Native Earth Electric Field Measurements Using Small Spacecraft in Low Earth Orbit Utah State University DigitalCommons@USU All Graduate Theses and Dissertations Graduate Studies 12-2009 Native Earth Electric Field Measurements Using Small Spacecraft in Low Earth Orbit John A. Pratt

More information

BLUE-PRINT II XII Physics

BLUE-PRINT II XII Physics BLUE-PRINT II XII Physics S.No. UNIT VSA SA I SA II LA Total (1 Mark) (2 Marks) (3Marks) (5 Marks) 1. Electrostatics 1(1) 4(2) 3(1) - 8(4) 2. Current Electricity - 2(1) - 5(1) 7(2) 3. Magnetic Effect of

More information

Spacecraft Angular Rate Estimation Algorithms For Star Tracker-Based Attitude Determination

Spacecraft Angular Rate Estimation Algorithms For Star Tracker-Based Attitude Determination AAS 3-191 Spacecraft Angular Rate Estimation Algorithms For Star Tracker-Based Attitude Determination Puneet Singla John L. Crassidis and John L. Junkins Texas A&M University, College Station, TX 77843

More information

Calibration of a magnetometer in combination with inertial sensors

Calibration of a magnetometer in combination with inertial sensors Calibration of a magnetometer in combination with inertial sensors Manon Kok, Jeroen D. Hol, Thomas B. Schön, Fredrik Gustafsson and Henk Luinge Division of Automatic Control Linköping University, Sweden

More information

Two dimensional rate gyro bias estimation for precise pitch and roll attitude determination utilizing a dual arc accelerometer array

Two dimensional rate gyro bias estimation for precise pitch and roll attitude determination utilizing a dual arc accelerometer array Rochester Institute of Technology RIT Scholar Works Theses Thesis/Dissertation Collections -- Two dimensional rate gyro bias estimation for precise pitch and roll attitude determination utilizing a dual

More information

Satellite Attitude Determination with Attitude Sensors and Gyros using Steady-state Kalman Filter

Satellite Attitude Determination with Attitude Sensors and Gyros using Steady-state Kalman Filter Satellite Attitude Determination with Attitude Sensors and Gyros using Steady-state Kalman Filter Vaibhav V. Unhelkar, Hari B. Hablani Student, email: v.unhelkar@iitb.ac.in. Professor, email: hbhablani@aero.iitb.ac.in

More information

MOCK cet paper II 2012 (PHYSICS)

MOCK cet paper II 2012 (PHYSICS) MOCK cet paper II 2012 (PHYSICS) 1. The equations of two sound waves are given by Y 1 = 3 sin 100πt and Y 2 = 4 Sin 150 πt. The ratio of the intensities of sound produced in the medium is 1)1:2 2) 1:4

More information

Attitude Estimation for Augmented Reality with Smartphones

Attitude Estimation for Augmented Reality with Smartphones Attitude Estimation for Augmented Reality with Smartphones Thibaud Michel Pierre Genevès Hassen Fourati Nabil Layaïda Université Grenoble Alpes, INRIA LIG, GIPSA-Lab, CNRS June 13 th, 2017 http://tyrex.inria.fr/mobile/benchmarks-attitude

More information

Stochastic Models, Estimation and Control Peter S. Maybeck Volumes 1, 2 & 3 Tables of Contents

Stochastic Models, Estimation and Control Peter S. Maybeck Volumes 1, 2 & 3 Tables of Contents Navtech Part #s Volume 1 #1277 Volume 2 #1278 Volume 3 #1279 3 Volume Set #1280 Stochastic Models, Estimation and Control Peter S. Maybeck Volumes 1, 2 & 3 Tables of Contents Volume 1 Preface Contents

More information

A Concept of Nanosatellite Small Fleet for Earth Observation

A Concept of Nanosatellite Small Fleet for Earth Observation A Concept of Nanosatellite Small Fleet for Earth Observation Prof. Janusz Narkiewicz jnark@meil.pw.edu.pl Sebastian Topczewski stopczewski@meil.pw.edu.pl Mateusz Sochacki msochacki@meil.pw.edu.pl 10-11

More information

Presentation by Indian Delegation. to 49 th STSC UNCOPUOS. February 2012 Vienna

Presentation by Indian Delegation. to 49 th STSC UNCOPUOS. February 2012 Vienna Presentation by Indian Delegation to 49 th STSC UNCOPUOS February 2012 Vienna ASTROSAT Astrosat is India s first dedicated multiwavelength astronomy satellite with a capability to observe target sources

More information

AS3010: Introduction to Space Technology

AS3010: Introduction to Space Technology AS3010: Introduction to Space Technology L E C T U R E 22 Part B, Lecture 22 19 April, 2017 C O N T E N T S Attitude stabilization passive and active. Actuators for three axis or active stabilization.

More information

Autonomous Mobile Robot Design

Autonomous Mobile Robot Design Autonomous Mobile Robot Design Topic: Inertial Measurement Unit Dr. Kostas Alexis (CSE) Where am I? What is my environment? Robots use multiple sensors to understand where they are and how their environment

More information

Natural Signals for Navigation: Position and Orientation from the Local Magnetic Field, Sun Vector and the Gravity Vector

Natural Signals for Navigation: Position and Orientation from the Local Magnetic Field, Sun Vector and the Gravity Vector Natural Signals for Navigation: Position and Orientation from the Local Magnetic Field, Sun Vector and the Gravity Vector Kartik B. Ariyur Isabelle A. G. Laureyns John Barnes Gautam Sharma School of Mechanical

More information

Quaternion-Based Tracking Control Law Design For Tracking Mode

Quaternion-Based Tracking Control Law Design For Tracking Mode A. M. Elbeltagy Egyptian Armed forces Conference on small satellites. 2016 Logan, Utah, USA Paper objectives Introduction Presentation Agenda Spacecraft combined nonlinear model Proposed RW nonlinear attitude

More information

5.12 The Aerodynamic Assist Trajectories of Vehicles Propelled by Solar Radiation Pressure References...

5.12 The Aerodynamic Assist Trajectories of Vehicles Propelled by Solar Radiation Pressure References... 1 The Two-Body Problem... 1 1.1 Position of the Problem... 1 1.2 The Conic Sections and Their Geometrical Properties... 12 1.3 The Elliptic Orbits... 20 1.4 The Hyperbolic and Parabolic Trajectories...

More information

ADCSS 2017: Sodern presentation

ADCSS 2017: Sodern presentation ADCSS 2017: Sodern presentation 1 Agenda Star trackers road map: a wide range of products End of CCD star trackers: SED26 replaced by Horus as standalone multi mission star tracker Hydra maintained beyond

More information

For more sample papers visit :

For more sample papers visit : For more sample papers visit : www.4ono.com PHYSCS Paper 1 (THEORY) (Three hours) (Candidates are allowed additional 15 minutes for only reading the paper. They must NOT start writing during this time)

More information

SPIN STATE ESTIMATION OF TUMBLING SMALL BODIES

SPIN STATE ESTIMATION OF TUMBLING SMALL BODIES AAS 15-363 SPIN STATE ESTIMATION OF TUMBLING SMALL BODIES Corwin Olson, Ryan P. Russell, and Shyam Bhaskaran INTRODUCTION It is expected that a non-trivial percentage of small bodies that future missions

More information

GP-B Attitude and Translation Control. John Mester Stanford University

GP-B Attitude and Translation Control. John Mester Stanford University GP-B Attitude and Translation Control John Mester Stanford University 1 The GP-B Challenge Gyroscope (G) 10 7 times better than best 'modeled' inertial navigation gyros Telescope (T) 10 3 times better

More information

Application of state observers in attitude estimation using low-cost sensors

Application of state observers in attitude estimation using low-cost sensors Application of state observers in attitude estimation using low-cost sensors Martin Řezáč Czech Technical University in Prague, Czech Republic March 26, 212 Introduction motivation for inertial estimation

More information

An Agile Multi-Use Nano Star Camera for Constellation Applications

An Agile Multi-Use Nano Star Camera for Constellation Applications An Agile Multi-Use Nano Star Camera for Constellation Applications Scott Palo 1,2, George Stafford 2 and Alan Hoskins 1 1 University of Colorado 2 Blue Canyon Technologies Partnership The BCT technical

More information

AISSCE 2016 EXPECTED (SURE SHORT) QUESTIONS WEIGHTAGE-WISE 2016

AISSCE 2016 EXPECTED (SURE SHORT) QUESTIONS WEIGHTAGE-WISE 2016 CLASS: XII AISSCE 2016 Subject: Physics EXPECTED (SURE SHORT) QUESTIONS WEIGHTAGE-WISE 2016 Q3 Section A ( 1 Mark ) A force F is acting between two charges placed some distances apart in vacuum. If a brass

More information

Development of an Active Magnetic Attitude Determination and Control System for Picosatellites on highly inclined circular Low Earth Orbits

Development of an Active Magnetic Attitude Determination and Control System for Picosatellites on highly inclined circular Low Earth Orbits Development of an Active Magnetic Attitude Determination and Control System for Picosatellites on highly inclined circular Low Earth Orbits A thesis submitted in fulfilment of the requirements for the

More information

PHYSICS PAPER 1 (THEORY)

PHYSICS PAPER 1 (THEORY) PHYSICS PAPER 1 (THEORY) (Three hours) (Candidates are allowed additional 15 minutes for only reading the paper. They must NOT start writing during this time.) ---------------------------------------------------------------------------------------------------------------------

More information

XXXXXXXXXXXXXXX. First Pre-Board Examination, Physics

XXXXXXXXXXXXXXX. First Pre-Board Examination, Physics Series SSO Code No. 55/1/B Roll No. Candidates must write the code on the title page of the answer book General Instructions: Please check that this question paper contains 6 printed pages. Code number

More information

Lecture Module 2: Spherical Geometry, Various Axes Systems

Lecture Module 2: Spherical Geometry, Various Axes Systems 1 Lecture Module 2: Spherical Geometry, Various Axes Systems Satellites in space need inertial frame of reference for attitude determination. In a true sense, all bodies in universe are in motion and inertial

More information

Surveying Prof. Bharat Lohani Department of Civil Engineering Indian Institute of Technology, Kanpur

Surveying Prof. Bharat Lohani Department of Civil Engineering Indian Institute of Technology, Kanpur Surveying Prof. Bharat Lohani Department of Civil Engineering Indian Institute of Technology, Kanpur Module - 12 Lecture - 1 Global Positioning System (Refer Slide Time: 00:20) Welcome to this video lecture

More information

cheops Assemble your own planet watcher cheops Paper Model Scale 1:15

cheops Assemble your own planet watcher cheops Paper Model Scale 1:15 cheops cheops Assemble your own planet watcher Paper Model Scale 1:15 About CHEOPS The CHaracterising ExOPlanet Satellite, or CHEOPS, is a space science mission dedicated to the study of known exoplanets

More information

Angle estimation using gyros and accelerometers

Angle estimation using gyros and accelerometers Lab in Dynamical systems and control TSRT21 Angle estimation using gyros and accelerometers This version: January 25, 2017 Name: LERTEKNIK REG P-number: Date: AU T O MA R TI C C O N T OL Passed: LINKÖPING

More information

StellarXplorers IV Qualifying Round 2 (QR2) Quiz Answer Key

StellarXplorers IV Qualifying Round 2 (QR2) Quiz Answer Key 1. Which of these Electromagnetic radiation bands has the longest wavelength (λ)? [Section 12.1] a. X-Ray b. Visible Light c. Infrared d. Radio 2. How is energy in Electromagnetic (EM) radiation related

More information

Quaternion based Extended Kalman Filter

Quaternion based Extended Kalman Filter Quaternion based Extended Kalman Filter, Sergio Montenegro About this lecture General introduction to rotations and quaternions. Introduction to Kalman Filter for Attitude Estimation How to implement and

More information

General Instructions :

General Instructions : Class XII Subject - Physics General Instructions : 1. All questions are compulsory. 2. Q. 1 to 5 are Very short Answer type questions (1 Mark each. ) 3. Q. 6 to 12 are short Answer type questions. (2 Marks

More information

VN-100 Velocity Compensation

VN-100 Velocity Compensation VN-100 Velocity Compensation Velocity / Airspeed Aiding for AHRS Applications Application Note Abstract This application note describes how the VN-100 can be used in non-stationary applications which require

More information

An Attitude Control System and Commissioning Results of the SNAP-1 Nanosatellite

An Attitude Control System and Commissioning Results of the SNAP-1 Nanosatellite An Attitude Control System and Commissioning Results of the SNAP-1 Nanosatellite WH Steyn, Y Hashida and V Lappas Surrey Space Centre University of Surrey Guildford, Surrey GU2 5XH United Kingdom Abstract.

More information

Development of Magnetometer and Sun Sensors Based Orbit and Attitude Determination for Cubesat

Development of Magnetometer and Sun Sensors Based Orbit and Attitude Determination for Cubesat Development of Magnetometer and Sun Sensors Based Orbit and Attitude Determination for Cubesat MTS-UFS-CONAE Maria Pereyra, Roberto Alonso and Jose Kuba 1st IAA Latin American Symposium on Small Satellites

More information

Geostationary Satellites and Astrophotography

Geostationary Satellites and Astrophotography Geostationary Satellites and Astrophotography By Clay S. Turner 11/14/08 Introduction When I first started doing astrophotography last January, it was only natural to take pictures of some of Orion s deep

More information

EE Camera & Image Formation

EE Camera & Image Formation Electric Electronic Engineering Bogazici University February 21, 2018 Introduction Introduction Camera models Goal: To understand the image acquisition process. Function of the camera Similar to that of

More information

Small Satellite Laser Comm Pointing

Small Satellite Laser Comm Pointing Small Satellite Laser Comm Pointing Darren Rowen July 11, 2016 2016 The Aerospace Corporation Agenda Optical Ground Station Tracking Demo of Cubesat Laser OCSD-B/C Design & Configuration OCSD-A Star Tracker

More information

Gravity Probe B Data Analysis Challenges, Insights, and Results

Gravity Probe B Data Analysis Challenges, Insights, and Results Gravity Probe B Data Analysis Challenges, Insights, and Results Mac Keiser April 15, 27 April 15, 27 Jacksonville, FL 1 Topics Data Analysis Strategy and Methods Challenges and Insights Trapped Magnetic

More information

Preliminary Development of an Experimental Lightweight Pulsed Plasma Thruster for Solar Sail Attitude Control

Preliminary Development of an Experimental Lightweight Pulsed Plasma Thruster for Solar Sail Attitude Control Preliminary Development of an Experimental Lightweight Pulsed Plasma Thruster for Solar Sail Attitude Control Kevin Pryor, Bong Wie, and Pavlos Mikellides Arizona State University 18 th Annual AIAA/USU

More information

Construction of a Variable Electromagnet and Gauss Meter

Construction of a Variable Electromagnet and Gauss Meter Construction of a Variable Electromagnet and Gauss Meter Tanushree Bezbaruah, Chinmoy Bharadwas, Reinkosi Mam, Barnali Devi, Diganta Kumar Sarma # Department of Physics, B. Borooah College, Ulubari, Guwahati-781007,

More information

Chapter 2 Process Variability. Overview. 2.1 Sources and Types of Variations

Chapter 2 Process Variability. Overview. 2.1 Sources and Types of Variations Chapter 2 Process Variability Overview Parameter variability has always been an issue in integrated circuits. However, comparing with the size of devices, it is relatively increasing with technology evolution,

More information

Calibration Routine. Store in HDD. Switch "Program Control" Ref 1/ Ref 2 Manual Automatic

Calibration Routine. Store in HDD. Switch Program Control Ref 1/ Ref 2 Manual Automatic 4.2 IMPLEMENTATION LABVIEW 4.2.1 LabVIEW features LabVIEW (short for Laboratory Virtual Instrument Engineering Workbench) originally released for the Apple Macintosh in 1986. It is a highly productive

More information

Visual Feedback Attitude Control of a Bias Momentum Micro Satellite using Two Wheels

Visual Feedback Attitude Control of a Bias Momentum Micro Satellite using Two Wheels Visual Feedback Attitude Control of a Bias Momentum Micro Satellite using Two Wheels Fuyuto Terui a, Nobutada Sako b, Keisuke Yoshihara c, Toru Yamamoto c, Shinichi Nakasuka b a National Aerospace Laboratory

More information

FB-DC6 Electric Circuits: Magnetism and Electromagnetism

FB-DC6 Electric Circuits: Magnetism and Electromagnetism CREST Foundation Electrical Engineering: DC Electric Circuits Kuphaldt FB-DC6 Electric Circuits: Magnetism and Electromagnetism Contents 1. Electromagnetism 2. Magnetic units of measurement 3. Permeability

More information

Design of Attitude Determination and Control Subsystem

Design of Attitude Determination and Control Subsystem Design of Attitude Determination and Control Subsystem 1) Control Modes and Requirements Control Modes: Control Modes Explanation 1 ) Spin-Up Mode - Acquisition of Stability through spin-up maneuver -

More information

Key Contents. Magnetic fields and the Lorentz force. Magnetic force on current. Ampere s law. The Hall effect

Key Contents. Magnetic fields and the Lorentz force. Magnetic force on current. Ampere s law. The Hall effect Magnetic Fields Key Contents Magnetic fields and the Lorentz force The Hall effect Magnetic force on current The magnetic dipole moment Biot-Savart law Ampere s law The magnetic dipole field What is a

More information

Multi-Sensor Fusion for Localization of a Mobile Robot in Outdoor Environments

Multi-Sensor Fusion for Localization of a Mobile Robot in Outdoor Environments Multi-Sensor Fusion for Localization of a Mobile Robot in Outdoor Environments Thomas Emter, Arda Saltoğlu and Janko Petereit Introduction AMROS Mobile platform equipped with multiple sensors for navigation

More information

Elements of magnetism and magnetic measurements

Elements of magnetism and magnetic measurements Elements of magnetism and magnetic measurements Ruslan Prozorov Oct 2009, Feb 2014, Oct 2018 Physics 590B magnetic moment of free currents Magnetic moment of a closed loop carrying current I: Magnetic

More information

Simplified Filtering Estimator for Spacecraft Attitude Determination from Phase Information of GPS Signals

Simplified Filtering Estimator for Spacecraft Attitude Determination from Phase Information of GPS Signals WCE 7, July - 4, 7, London, U.K. Simplified Filtering Estimator for Spacecraft Attitude Determination from Phase Information of GPS Signals S. Purivigraipong, Y. Hashida, and M. Unwin Abstract his paper

More information

A Survey of Spacecraft Charging Events on the DMSP Spacecraft in LEO

A Survey of Spacecraft Charging Events on the DMSP Spacecraft in LEO A Survey of Spacecraft Charging Events on the DMSP Spacecraft in LEO Phillip C. Anderson Space Science Applications Laboratory The Aerospace Corporation PO Box 92957 M2/260 Los Angeles, CA 90009-2957 ph:

More information

Automatic Star-tracker Optimization Framework. Andrew Tennenbaum The State University of New York at Buffalo

Automatic Star-tracker Optimization Framework. Andrew Tennenbaum The State University of New York at Buffalo SSC17-VIII-6 Automatic Star-tracker Optimization Framework Andrew Tennenbaum The State University of New York at Buffalo aztennen@buffalo.edu Faculty Advisor: John Crassidis The State University of New

More information

Parameterized Least-Squares Attitude History Estimation and Magnetic Field Observations of the Auroral Spatial Structures Probe

Parameterized Least-Squares Attitude History Estimation and Magnetic Field Observations of the Auroral Spatial Structures Probe Utah State University DigitalCommons@USU All Graduate Theses and Dissertations Graduate Studies 215 Parameterized Least-Squares Attitude History Estimation and Magnetic Field Observations of the Auroral

More information

PHYSICS Course Structure Units Topics Marks Electrostatics Current Electricity III Magnetic Effect of Current & Magnetism

PHYSICS Course Structure Units Topics Marks Electrostatics Current Electricity III Magnetic Effect of Current & Magnetism PHYSICS Course Structure Units Topics Marks I Chapter 1 Chapter 2 II Chapter 3 III Chapter 4 Chapter 5 IV Chapter 6 Chapter 7 V Chapter 8 VI Chapter 9 Electrostatics Electric Charges and Fields Electrostatic

More information

Science Curriculum Matrix

Science Curriculum Matrix Science Curriculum Matrix Physics Version 1.0 beta June 2, 2008 This curriculum (core matrix) document will eventually become part of the Science Curriculum Matrix. We envision the Science Curriculum Matrix

More information

Feasibility of Using Commercial Star Trackers for On-Orbit Resident Space Object Detection

Feasibility of Using Commercial Star Trackers for On-Orbit Resident Space Object Detection Feasibility of Using Commercial Star Trackers for On-Orbit Resident Space Object Detection Samuel Clemens York University Regina Lee York University Paul Harrison Magellan Aerospace Warren Soh Magellan

More information

Landing-Sensor Choosing for Lunar Soft-Landing Process

Landing-Sensor Choosing for Lunar Soft-Landing Process Landing-Sensor Choosing for Lunar Soft-Landing Process Huang hao Chu Guibai Zhang He (China Academy of Space Technology, No.104 Youyi Road Haidian Beijing China) Abstract: Soft landing is an important

More information

Attitude Control Simulator for the Small Satellite and Its Validation by On-orbit Data of QSAT-EOS

Attitude Control Simulator for the Small Satellite and Its Validation by On-orbit Data of QSAT-EOS SSC17-P1-17 Attitude Control Simulator for the Small Satellite and Its Validation by On-orbit Data of QSAT-EOS Masayuki Katayama, Yuta Suzaki Mitsubishi Precision Company Limited 345 Kamikmachiya, Kamakura

More information

Adaptive Unscented Kalman Filter with Multiple Fading Factors for Pico Satellite Attitude Estimation

Adaptive Unscented Kalman Filter with Multiple Fading Factors for Pico Satellite Attitude Estimation Adaptive Unscented Kalman Filter with Multiple Fading Factors for Pico Satellite Attitude Estimation Halil Ersin Söken and Chingiz Hajiyev Aeronautics and Astronautics Faculty Istanbul Technical University

More information