FAULT DETECTION AND DIAGNOSIS IN A SPACECRAFT ATTITUDE DETERMINATION SYSTEM by FATEMEH PIRMORADI B.Sc, University of Tehran, Iran, 2001 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE In THE FACULTY OF GRADUATE STUDIES Mechanical Engineering The University of British Columbia December 2005 © Fatemeh Pirmoradi, 2005 Abstract Spacecraft systems need increased on board autonomy to detect the occurred faults (e.g., faults in sensors and actuators), isolate the faulty components, and effectively handle their operation in the presence of such faults. In this research a scheme of fault detection and diagnosis is developed for spacecraft Attitude Determination (AD) sensors along with an algorithm for attitude determination. These together can provide a significant degree of autonomy since faults can be handled without ground interaction and intervention. The attitude determination system is a key component of the attitude control system of a spacecraft. Hence, improvements to its accuracy and reliability contribute directly to its performance and the success of the spacecraft mission. An integrated AD system that includes rate gyros and vector sensors (Sun sensor and magnetometer) is developed. Measurement data from all sensors are fused by utilizing a linearize Kalman filter, which is designed based on system kinematics, to provide attitude estimation and the values of gyro bias. The designed estimator is shown to provide more accurate estimates of the attitude angles than the measurements obtained directly from sensors. This results in the removal of erroneous sensor measurements, and prevents unbounded sensor measurement errors. Bias-free data are then used in the Fault Detection and Diagnosis (FDD) scheme. ii The algorithm of the FDD scheme uses a model-based state estimation approach, combining the information from the rotational dynamics and kinematics of a spacecraft with the sensor measurements to predict the future sensor outputs. The innovation sequences of Extended Kalman Filters (EKFs) are monitored by several statistical tests to detect the presence of a failure and to localize failures in all AD sensors. The isolation procedure is developed in two phases. In the first phase, two EKFs are designed which use subsets of measurements to provide estimates of states and form residuals that are used to verify the source of the fault. In the second phase of isolation, testing of multiple hypotheses is performed. Fault signatures for each hypothesis are formed by running multiple EKFs in parallel. Generalized likelihood ratio test is utilized to identify the faulty components. The simulation results show that the scheme developed in this thesis can correctly detect and isolate the faulty components. Furthermore, it is shown that in the developed scheme a small number of hypotheses is used, which results in faster isolation and highly distinguishable fault signatures. An important feature of the developed FDD scheme is that it can provide attitude estimations even if only one set of sensors is operating properly. iii Contents Abstract ii Contents iv List of Tables vii List of Figures viii Dedication xi Acknowledgments xii CHAPTER 1 INTRODUCTION 1.1. Background and Motivation 1 1.2. Research Objective 3 1.3. Health Monitoring Concept of the Attitude Determination System 5 1.4. Organization of the Thesis 8 CHAPTER 2 AN OVERVIEW OF FDD APPROACHES 2.1. Introduction 10 2.2. Fault Detection and Diagnosis 12.3. Overview of Approaches to Fault Detection and Diagnosis 13 2.3.1. Model-free approaches 14 2.3.2. Model-based approaches 5 2.4. The FDD Approach Used in This Research 20 iv CHAPTER 3 DESCRIPTION AND MODELING OF SPACECRAFT AD SYSTEM 3.1. Introduction 22 3.2. Coordinate Systems 3 3.3. Spacecraft Rotational Dynamics 26 3.4. Simulation Model 29 3.5. Attitude Sensing 30 3.6. Integrated Attitude Determination System 32 3.6.1. Vector sensors 4 3.6.2. Rate gyros 35 3.7. Concluding Remarks 7 CHAPTER 4 KALMAN FILTERS IMPLEMENTATION 4.1. Introduction 3 8 4.2. Kalman Filter Implementations in FDD Scheme 40 4.2.1. Choice of state vector 44.2.2. Initialization of the state vector x0 40 4.2.3. Computing the state transition matrix42 4.2.4. Computing the process noise matrix Qw 45 4.2.5. Computing the covariance matrix M before the update 46 4.2.6. Propagating forward the state vector x 47 4.2.7. Calculating the projected observations z4.2.8. Computing the Kalman gain matrix K 49 4.2.9. Computing the covariance matrix after the update P 50 4.2.10. Computing the new state estimate x 54.3. Kalman Filter Implementation in AD Scheme 1 CHAPTER 5 THE FAULT DETECTION AND DIAGNOSIS APPROACH 5.1. Introduction 8 5.2. Kalman Filter as a Residual Generator 59 5.3. Failures and Residual Mean 60 5.4. Health Monitoring and FDD Scheme 61 v 5.5. Statistical Tests for Fault Detection 65 5.5.1 TheMest 66 5.5.2 The chi-square test 69 5.6. Hypotheses Testing 73 5.7. Geometrical Interpretation5.8. Concluding Remarks 80 CHAPTER 6 RESULTS AND DISCUSSIONS 6.1. Introduction 83 6.2. System Characteristics 86.3. Attitude Determination Results 85 6.4. Fault Detection and Diagnosis Results and Discussion 86 6.4.1. Fault detection 90 6.4.2. Primary isolation 5 6.4.3. Diagnosis/Isolation 7 6.4.4. Timing of FDD steps 98 6.5. Distinguishability in Fault Isolation 96.6. Important Features 102 CHAPTER 7 CONCLUSION 7.1. Conclusion 105 7.2. Main Contributions 107 7.3. Recommendations for Future Research 108 BIBLIOGRAPHY 109 vi List of Tables Table 6.1 Specifications of failure scenarios. 88 Table 6.2 Threshold values used in statistical tests. 8Table 6.3 Distinguishability of failure signatures for rate gyros. 99 Table 6.4 Distinguishability of failure signatures for vector sensors. 99 Table 6.5 Distinguishability of failure signature for all failure hypotheses in the 101 absence of Primary Isolation phase. vii List of Figures Figure 1.1 Incorporation of FDD module in attitude determination and control 6 system of a spacecraft. Figure 1.2 The structure of attitude determination and health monitoring system. 6 Figure 2.1 Major approaches to fault detection and diagnosis. 13 Figure 3.1 Sun-centered inertial and body-fixed coordinate systems. 24 Figure 3.2 Three successive Euler rotations relating two coordinate systems. 26 Figure 3.3 Euler angle y/ about the third axis. 28 Figure 3.4 Euler angle 6 about the new second axis. 2Figure 3.5 Euler angle <f> about the new first axis. 8 Figure 3.6 Closed-loop configuration of integration mechanism. 34 Figure 4.1 Overall structure of Extended Kalman Filter. 41 Figure 5.1 The structure of the proposed FDD scheme. 63 Figure 6.1 Roll angle error from AD-KF. 86 Figure 6.2 Roll gyro bias estimation error.Figure 6.3 Pitch angle error from AD-KF. 86 Figure 6.4 Pitch bias estimation error.Figure 6.5 Yaw angle error from AD-KF. 86 viii Figure 6.6 Yaw bias estimation error. 86 Figure 6.7 Angular rate errors of FDD-KF-1 in healthy mode. 89 Figure 6.8 Angular position errors of FDD-KF-1 in healthy mode. 89 Figure 6.9 Angular rate errors of FDD-KF-1 in healthy mode. 89 Figure 6.10 Angular position residuals of FDD-KF-1 in healthy mode. 90 Figure 6.11 Angular Rate Residuals of FDD-KF-1 for failure scenario 1. 91 Figure 6.12 Angular Position Residuals of FDD-KF-1 for failure scenario 1. 91 Figure 6.13 /-test on FDD-KF-1 residuals in fault detection phase-Scenario 1. 91 Figure 6.14 Chi-square test on FDD-KF-1 residuals in fault detection phase- 92 Scenario 1. Figure 6.15 Angular Rate Residuals of FDD-KF-1 for failure scenario 2. 92 Figure 6.16 Angular Position Residuals of FDD-KF-1 for failure scenario 2. 93 Figure 6.17 Mest on FDD-KF-1 residuals in fault detection phase-Scenario 2. 93 Figure 6.18 Chi-square test on FDD-KF-1 residuals in fault detection phase- 93 Scenario 2. Figure 6.19 Angular Rate Residuals of FDD-KF-1 for failure scenario 3. 94 Figure 6.20 Angular Position Residuals of FDD-KF-1 for failure scenario 3. 94 Figure 6.21 Mest on FDD-KF-1 residuals in fault detection phase-Scenario 3. 94 Figure 6.22 Chi-square test on FDD-KF-1 residuals in fault detection phase- 95 Scenario 3. Figure 6.23 Primary isolation in failure scenario 1. 95 Figure 6.24 Primary isolation in failure scenario 2. 6 Figure 6.25 Primary isolation in failure scenario 3. 9Figure 6.26 Likelihood functions for hypotheses testing. 97 ix Figure 6.27 Likelihood functions for all hypotheses in failure scenario 3. 97 Figure 6.28 Timing of FDD phases. 98 Figure 6.29 Pitch rate error in the presence of fault and the accurate estimation of 102 it for recovery. Figure 6.30 Pitch rate estimation error. 102 Figure 6.31 Pitch Rate residuals of FDD-KF-1 in Different Fault Magnitude. 103 Figure 6.32 Fault Detection Chi-Square test results. 10Figure 6.33 Chi-square and GLR tests results for different fault magnitudes. 104 x To My Parents, For Their Never-ending Love and Support xi Acknowledgements I would like to express my first and foremost gratitude to my supervisors, Prof. F. Sassani and Prof. C.W. de Silva, for their guidance and support throughout my program. I am grateful for the opportunity they provided for me to pursue my graduate studies at UBC. I would like to thank my examination committee members, Dr. M. Chiao and Dr. L. Gamage, for their careful reading of my thesis and very helpful comments. The financial support through Natural Sciences and Engineering Research Council of Canada (NSERC) and collaboration with Canadian Space Agency (CSA) are greatly acknowledged. My thanks extend to my colleagues in Process Automation and Robotics Laboratory, Dr. Tafreshi, Mr. Mallakzadeh and Mr. Karami, and in Industrial Automation Laboratory, Mr. Wijewardene, Mr. Wang, Dr. Tang, Mr. Behbahani and Mr. Fan for being so considerate and helpful. I also greatly appreciate constant assistance and support of the engineering subject librarian, Ms. Aleteia Greenwood, and the graduate secretary of the Mechanical Engineering Department, Ms. Chotivan Manglanond. I also would like to thank Dr. Roya Rahbari for helping me understand the process of research and acting as a mentor. I wish to thank my brother and sister, Vahid and Maryam, who filled me with their love and liveliness from thousands of miles away. Thank you for everything. I would not have been able to go through the past two years of my life, if it was not for the support of my especially dear friends, Saba, Patrick, Roja, Ali and Shora. They provided me with their endless care, support and companionship that helped me adjust to my new life. xn CHAPTER 1 Introduction 1.1. Background and Motivation Failures in space missions have resulted in the loss of human lives, interruptions in research activities, as well as enormous economic losses. However, the increasing demand for conducting experiments in space and deploying satellites into orbits for observation, communication and commercial purposes have necessitated having reliable, durable and safe control systems and instrumentation which will contribute directly to the intended mission of the spacecraft. This demand motivates the development and design of sophisticated technologies • that improve the performance of control systems and instruments installed onboard. These technologies would not only aim to increase the vehicle operating life and reduce the cost, but also encompass control systems that counteract problems such as the presence of external disturbances in uncertain environments and the detection and compensation of system failures. Spacecraft operations mostly rely on ground-based support and communication through radio commands to the spacecraft. Large amounts of data are continuously collected and 1 downlinked to ground for processing, computation and analysis of the current status of the spacecraft by human operators, and in anomalous situations for decision making by ground experts. Consequently the necessary commands are transmitted to the spacecraft. Exception to this arises when the resulting levels of communication time delay between the spacecraft and the ground station cannot be tolerated in the specific mission. Delay-free communication (or delay levels consistent with real-time communication) becomes particularly important when some faults or failures occur in the system and early detection, identification, and diagnosis of them become crucial for taking the necessary subsequent actions (e.g., control, parameter adjustment, reconfiguration, and emergency maneuvering). Furthermore, any loss of ground control and monitoring results in the failure of the spacecraft mission. In view of these, modern spacecraft need more autonomy on-board to effectively handle their operation in the presence of faults and failures in sensors, actuators, and other components. In addition, the introduction of increased intelligence and autonomy on-board the satellites will reduce the amount of data collected and downlinked to the ground. These demands lead to the present research effort, which is aimed at increasing the ability of spacecraft to detect and diagnose faults and failure in time with minimal human intervention from a ground station. Most of the existing Attitude Determination (AD) systems use the so-called "redline system" for fault detection and diagnosis, where redlines are defined as the limits at which the system is inoperable. These limits correspond to the values at which some selected measurements or derived core parameters exceed their nominal operating values. While this approach is effective in avoiding catastrophic failures caused by a specific component, it has many drawbacks. For example, this technique produces a high false 2 alarm rate which usually results in the premature removal of a properly operating component from the loop, and inconsistent redlined limits that vary from one instrument to another, since the components of each unit may be produced by different manufacturers. Furthermore, unlike the ground systems, high physical redundancy in modern spacecraft systems is not feasible. Having physical backup systems leads to extra cost and requires additional space for the installation of hardware elements and instrument sets which may not fit in due to the required weight or space limits. Even though many critical subsystems have double redundancy, the concepts of triple module redundancy with voting [49] and quadruple redundancy with parity check [42] are also not practical because of the weight limits in spacecraft systems. Besides, if faults affect all the elements in the same way, this method cannot help in the detection of the faults. In this thesis, a health monitoring scheme is proposed which not only enhances the current system, but also continuously provides useful information from the AD system. The proposed health monitoring system provides information about the condition of the system state variables, which will help detection and diagnosis of incipient anomalies. This information allows the main controller to execute appropriate actions for system reconfiguration such as gain adjustment, activation of alternative system, and so on. These actions minimize damage after a failure is detected. 1.2. Research Objectives The main objective of this thesis is to develop a health monitoring scheme which addresses the problem of Fault Detection and Diagnosis (FDD) in a spacecraft control system, specifically for the spacecraft AD, together with obtaining accurate attitude 3 estimation out of observed measurements. The AD system provides information of the current status of the satellite for use by controllers in order to command the necessary actions to the actuators. The AD system is a key component of the spacecraft attitude control system, and improvements to its accuracy and reliability contribute directly to the success of the spacecraft mission. The objective of AD is to generate estimates of the angular rates and the attitudes of the satellite for use by the controllers. Multiple sensors are used in order to obtain the measurement data in the Attitude Determination and Control System (ADCS), depending on its architecture. In different phases of the mission, different types of sensors are selected, depending on the attitude determination scheme, and are configured to provide the necessary data. The failure detection and diagnosis of the AD system of a spacecraft involves the detection and isolation of faults and failures in these on-board sensors. The solution offered in this thesis is a health monitoring scheme for the AD system in which, combined with the attitude determination algorithms, an FDD scheme introduces a significant degree of autonomy, since a fault can be detected and identified without ground interaction and intervention. The developed health monitoring scheme uses model-based statistical signal processing methods. Specifically, Kalman filters are utilized as optimal state estimators, based on the kinematics and dynamics of the system and sensor measurements, to predict the states of the system and form the residuals using the observed measurement. Then the residuals are analyzed using methods based on detection or information theory. 4 1.3. Health Monitoring Concept of the Attitude Determination System The structure of a system for attitude determination and fault detection and diagnosis for the AD system sensors is presented in this section. Figure 1.1 shows how the FDD module is incorporated into the Attitude Determination and Control System (ADCS) of a spacecraft. Measurements from sensors are processed for AD and monitored for FDD. The FDD module provides the information about the sensors that have failed. This information can be processed and utilized for recovery actions and re-setting the controller parameters. Since the equations of motion for a spacecraft are nonlinear, the attitude determination problem involves a nonlinear filtering problem. Therefore, nonlinear equations are used to design four Kalman filters. The first Kalman filter is employed in AD (AD-KF) to provide estimates of the states of the system. It uses a linearized model about a nominal trajectory obtained from the mission requirements. The remaining three Kalman filters employed for FDD (FDD-KF-1, FDD-KF-2, and FDD-KF-3) use nonlinear state equations, but the state and the measurement nonlinearities are linearized around the latest state estimates for covariance propagation. A significant advantage of using the Kalman filter in AD arises from the fusion of measurement data from different types of sensors which result in getting more accurate estimates of the attitude of the spacecraft out of the observed measurements. 5 Attitude Determination •o to_ -b AD-KF CO Fault Detection Statistical Tests FDD-KF-1 Fault Detection and Diagnosis Module Primary Isolation i Continue i Monitorin i No Fault ! Fault ! Detected FDD-KF-2 Statistical Tests X - X FDD-K.F-3 •1 Failures from Gyros Failures from Vector Sensors Failures from All Sensors Isolation / Diagnosis Failure Hypotheses Hypothesis Testing GLR Test Faulty Components Identified Figure 1.2 The structure of the attitude determination and health monitoring system. Due to the presence of unbounded errors in the output of the rate gyros, the data fusion is important for the removal of the erroneous gyro measurements in the AD system. Figure 1.2 shows the proposed overall structure of AD and FDD. The FDD scheme consists of three main phases: Fault detection, Primary isolation, and Fault diagnosis/isolation. For the purpose of failure detection and diagnosis, the difference is generated between the predicted outputs given by the Kalman filters and the observed measurements, referred to as the residuals. In the absence of failure, the residuals are unbiased (of zero-mean), demonstrating agreement between the estimates and the observed measurements. In contrast, biased residual are indicative of abnormal behavior or failures. In the first phase of FDD, the presence of an unknown fault is detected. Therefore, statistical threshold tests are continuously used to monitor the residuals and detect faults. If the test statistic exceeds the defined threshold, then a failure is declared. However, according to our knowledge of rate gyros outputs, they consist of several biases some of which grow with time. This causes triggering fault signals by gyros during long term use. In order to detect faults in the sensors that do not originate from gyro biases, and also to obtain accurate angular rate measurements, these biases are estimated by the Kalman filter for AD (AD-KF) as well as the attitude angles, and are fed back to the system to remove erroneous gyro measurements. In summary, AD-KF fuses data from different sensors and generates estimates of the angular position of the spacecraft and the bias-free angular rates from gyros. Subsequently, the bias free measurement data are used in the FDD algorithm. 7 Next step in the FDD scheme is designed to partly isolate the failure. The primary isolation phase aims to identify whether the source of failure is from the rate gyros, vector sensors, or both. This is performed by designing two filters, running in parallel, and statistical testing. The information obtained from the primary isolation phase is utilized in the next phase of FDD scheme (fault isolation/diagnosis). In this phase the failed components are identified, using the approach of hypotheses testing. The isolation phase consists of multiple hypotheses for different failure scenarios. The best match for the present system state, from the hypothesized states, is found using the technique of Generalized Likelihood Ratio (GLR) test. 1.4. Organization of the Thesis Chapter 2 presents an introduction to fault detection and diagnosis. The existing approaches are categorized to model-based and model-free approaches and the research procedure for FDD in AD system is presented. In Chapter 3, the attitude definition in the present research is described. The concept of AD in a spacecraft and modeling of the dynamics are presented. The need for integrated attitude determination followed by the sensor error models are also discussed in Chapter 3. Chapter 4 focuses on the implementation of Kalman filters that are employed in both the FDD scheme and the AD scheme. This takes us to the first step of the proposed scheme of detection and diagnosis based on monitoring the residual of the first filter in the FDD scheme. In Chapter 5, the methodology and design of the FDD scheme is described. It includes the description and implementation of the statistical tests. A geometrical interpretation of the hypotheses test 8 is also included to provide additional insight into the diagnosis problem. In Chapter 6, some numerical results under different fault scenarios are presented followed by discussions on hypotheses distinguishability and some features of the developed FDD scheme. Chapter 7 provides the conclusions of the research followed by some suggestions for future research directions. 9 CHAPTER 2 An Overview of FDD Approaches 2.1. Introduction As a result of introducing measurement instruments to replace the biological senses of humans observing machine conditions, the problem of inaccurate measurements due to failure of sensors and faulty data arose. Malfunction of sensors and their failure become more critical when they are used in an automatic control system where human operator is removed from the process. In this chapter, the fault categorization process is explained, an overview of major approaches is given, the FDD approach in this research is presented, and its advantages are explained. 2.2. Fault Detection and Diagnosis In general, faults represent any type of malfunction in an actual dynamic system that leads to an unacceptable anomaly in the overall system performance. In other words, according to literature, faults are non-permitted deviations of a characteristic property of the system which leads to the inability to fulfill the intended purpose [21]. 10 Such malfunctions can occur either in the plant of the system or in its measurement and control instruments. The way the faults impact the system in each case is different, so the faults may be categorized into one of the following groups: 1. Additive measurement faults. These are discrepancies between the measured and the actual values of the system output or input variables. This category of faults can mostly describe sensor biases. Actuator malfunctions can also be considered as additive faults, as they are discrepancies between the input command of the actuator and its actual output. These faults cause offsets in the input and output vectors.[23], as given by y(.0+M) (21) u(t) + fL(t) where y(t) and u(t) are the output and the input of the system and fM (t) and fL if) are the output and input offset faults, respectively. 2. Additive process faults. These are disturbances (including unmeasured inputs) acting on the system which cause a shift in the outputs. These faults best describe system component leaks, loads, and so on. In the context of fault detection, these disturbances are the ones that we wish to detect and isolate. 3. Multiplicative process faults. These are changes (abrupt or incipient) of some system parameters which also depend on the magnitude of the known inputs. Such faults best describe the deterioration of system equipment; for example, surface contamination or clogging. It can be shown in the state space form as [23] x(t) = (A + AA)x(0 + (B + AB)w(0 j/(0 = (C + AC)x(f) (2'2) 11 where A, B, and C are system matrices and delta (A) denotes the change in their parameters in the presence of fault. It should be noted that this classification is primarily analytical. From a practical point of view, some faults may be considered both additive and multiplicative. Fault characterization and condition monitoring process involve the following tasks: • Fault detection: the identification of the presence of an unknown fault. • Fault diagnosis: identification of the nature and location of a detected fault. It answers the question of which component is faulty. Fault signature or fault model may be used for this purpose. • Fault accommodation/resolution: the correction of the fault by activating new controllers, adjusting control parameters, or scheduling gains. If a fault cannot be removed, the task is to accomplish the original or modified mission in the presence of the fault by either taking hardware actions (e.g., activating backup systems) or software actions (e.g., reconfiguring the system for the intended task). Detection performance of a diagnostic technique is described by: • Fault sensitivity: the ability of the technique to distinguish reasonably small faults • Reaction speed: the ability of the techniques to detect faults with reasonably small time delay after their occurrence. • Robustness: the ability of the technique to detect faults in the presence of noise, disturbances, and modeling errors, with few false alarms. 12 2.3. Overview of Approaches to Fault Detection and Diagnosis Generally, FDD methods can be divided into two main classes: physical and analytical redundancies. Figure 2.1 gives a general overview of the methods and the way they are categorized, which will be briefly discussed in this section. FDD Methods Analytical Redundancy Hardware Redundancy Signal Based Model Based Spectrum Analysis Wavelet Techniques Qualitative/Heuristic Model Analytical Model Expert Knowledge Base/Neural Network System M. State Parameter Estimation Estimation Figure 2.1 Major approaches to fault detection and diagnosis. In physical redundancy, which is a traditional engineering approach, multiple sensors (instrument sets and hardware elements) are installed to measure the same physical quantity. A fault signal is generated when a serious discrepancy occurs in the output of the sensors. In this method, since two parallel sensors are not generally adequate for fault isolation, three or more redundant hardware units are necessary in order to isolate the faulty elements [3]. This method has several disadvantages: it incurs extra hardware cost, and requires extra space for installation of hardware elements and instrument sets. It might be necessary to have one to one component redundancy in some critical 13 might be necessary to have one to one component redundancy in some critical subsystems. However, the concepts of triple module redundancy with voting [49] and quadruple redundancy with parity check [42] is not efficient, because of weight and space limitations in many engineering systems, which is a particularly serious concern in aerospace applications. Most FDD methods are based on analytical redundancy and can be grouped into, two major approaches: 1. Model-free (Signal based): methods that do not use a system model 2. Model-based: methods that use a system model 2.3.1. Model-free approaches In model-free approaches, a mathematical model of the system is not used. Physical redundancy eliminates the need for model thus can also be categorized in this group [17]. Model-free approaches are briefly reviewed now. 1. Limit checking In this method, system measurements are compared to preset limits. A fault is declared if those measurements exceed the limits. In many systems two levels of limits are set. The first level is only for warning, while the second triggers an emergency action. While this method is widely used in practice, it has several drawbacks. Because of possible input variations, the limits should be set conservatively to avoid high false alarms. Furthermore, if the fault in one component propagates to other parts of the system, this method causes confusion in diagnosis. 14 2. Installing special limit sensors These limit sensors measure the physical properties in the system hardware (e.g., limit temperature or pressure) or measure some specific variables (e.g., sound, vibration) 3. Frequency analysis In this method a typical frequency spectrum of the system measurements under normal operation conditions is obtained. Any deviation from this spectrum indicates an abnormality. Certain types of failure may have a characteristic signature in the spectrum that can be used for failure isolation. This method is widely used in such situations as the spectral analysis for feature extraction using wavelet technique in a diesel engine [45]. However, it is limited to dynamic systems involving vibrations. Complementary methods together with the above-mentioned techniques are used for evaluating the detected symptoms. They consist of simple logical rules to reach a conclusion. They work on the information presented to them by the detecting hardware or software, or interact with the human operator and inquire information from him/her through the entire logical process. 2.3.2. Model-based approaches In this method a quantitative (analytical model) or qualitative (knowledge-based) model of the physical system is used for fault detection and diagnosis. Here, sensory measurements are compared to analytically computed values of the particular variable and subsequently the resulting differences - the residuals - are generated. These residuals are evaluated to indicate the presence of a fault. A fault signal is declared if the residuals exceed a certain threshold value. Due to the noise present in the system, these 15 residuals are never zero even when a fault does not exist, which leads to the need for testing the residuals against thresholds. The residuals generated to indicate faults may also react to the noise and disturbances that can exist in the process and the measurements of the system. Desensitizing the residuals to these sources is an important aspect in the design of a fault detection and diagnosis algorithm. To deal with the effect of noise, the residuals can be filtered and statistical techniques can be applied for their evaluation. For this purpose, the knowledge of the statistical properties of noise and the noise-transfer dynamics of the system should be available. 2.3.2.1. Analytical models The general procedure of analytical model-based fault detection and isolation can be roughly divided into two steps [13]: 1. Generation of residuals (functions that are accentuated by the fault vector f) 2. Decision and isolation of the faults (time, location, sometimes also type, size, source and cause) If a fault occurs, the redundancy relations are no longer satisfied and the residual r ^ 0. This residual is used to form the appropriate decision functions. They are evaluated in the fault decision logic in order to monitor both the time of occurrence and the location of the fault. Basically, there are two different ways of generating residuals and fault isolation. The residuals are generated by either state estimation techniques, including Kalman filter, parity relations, and diagnostic observer schemes or parameter estimation technique. These techniques are briefly introduced next. 16 State estimation approach In the Kalman Filter method, the innovation of Kalman Filter is used as the fault detection residual. This residual is white and has a zero mean under non-faulty conditions, and becomes non-zero in the presence of a fault. The information about the failure types should be available for fault isolation [9], [20], [32]. The key idea in the parity relation approach is to check the consistency of the mathematical equations of the system (analytical redundancy relations) by using the actual measurements. In this method, residuals are colored and disturbance decoupling improves. A fault is declared once pre-assigned error bounds are exceeded. More details and other references are given in [13]. The basic idea of the diagnostic observer approach is to reconstruct the outputs of the system from the measurements or subsets of measurements, with the aid of observers, and by using the estimation error as a residual for the detection and isolation of the faults. The residual sequence is colored, which makes statistical testing somewhat complicated, but enhances the isolation of faults. In the case of a non-faulty system, residuals are influenced by unknown inputs while they would increase in the case of a fault. Therefore, in order to detect faults in the system, the increment of the residual caused by the faults should be checked. One way to do this is to compare them with a threshold. Some implementations of the state estimation methods are for nuclear reactors [10], aerospace systems [37], [47] and automobiles [39]. 17 Parameter estimation approach It is used for detection and isolation of parametric (multiplicative) faults. In this method residuals are generated using a parameter identification technique. It makes use of the fact that faults of a dynamic system are reflected in the physical parameters. Therefore, estimation of the parameters of the mathematical model is used for fault detection. In physical systems, coefficients which indicate process faults are not directly measurable; therefore, determination of their changes can be done by determining the changes in model parameters. A fault event and the time of its occurrence are determined by using a statistical decision making method. This approach has been used in hydraulic systems [28], spacecraft main engine [6], and others. After a fault event has been detected, the patterns of parameter changes are submitted to a classification procedure with the aim of determining the fault type, size, location, and cause. This includes whiteness, chi-square, generalized likelihood, different types of multiple hypotheses tests, etc. For more information on these techniques see [4], [7], [37] and [49]. 2.3.2.2. Qualitative Model Approach Expert systems (knowledge based methods) can be used as an alternative means to detect and diagnose faults in a system. In this method Artificial Intelligent (AI) techniques are used to achieve human-like reasoning [38]. This method is mostly used for fault detection and diagnosis of the systems or processes for which an accurate model is either not available or is very complex to develop. While the algorithmic methods use quantitative 18 analytical models, the expert system approach makes use of qualitative models based on available knowledge of the system. Knowledge based methods complement the model based methods of fault detection. The combination of both strategies allows the evaluation of all available information and knowledge of the system for fault detection. The ability of an expert system to integrate both strategies has made them ideal for fault diagnosis purposes. The main task can be divided into fault detection by analytic and heuristic symptom generation, and fault diagnosis [23], [25]. In analytical symptom generation part, analytical knowledge of the system is used to produce residuals. Characteristics of the system can be obtained by data processing and feature extraction which were described previously. In heuristic symptom generation, qualitative information is used from human operators. Through human observation and inspection, heuristic characteristic values in the form of special noise, color, smell, vibration, wear and tear, etc., are obtained. Process history in the form of performed maintenance, repair, former faults, lifetime, and load measures represents a further form of heuristic knowledge. Also statistical data from experience for the same or a similar process can be added. Therefore, heuristic symptoms are generated as linguistic variables. It is advantageous to use a unified representation of the two kinds of symptoms. One possibility is to present both kinds of symptoms with confidence numbers between zero and one, and use probabilistic approaches. Another possibility is the representation as membership functions of fuzzy sets. By using these fuzzy sets and corresponding membership functions, all analytic and heuristic symptoms can be represented in a 19 unified way within the range 0</x(Si) < 1, whereas are generated symptoms. This integrated symptom representations are then the inputs for the inference mechanism. For establishing a heuristic knowledge base, logical interactions between observed symptoms (effects) and unknown faults (causes) are used to generate the rule base. Finally, different diagnostic forward and backward reasoning strategies can be applied. The final results of this scheme are diagnosed faults [24]. Sometimes in formulating an FDD problem, a model may not exist either qualitatively or quantitatively, that relates the symptoms to the system faults. This in turn might be due to a lack of information about how faults occur and propagated in the system. In the neural network approach, instead of having a mathematical model or expert knowledge, the data collected from the system replace the model. This method is particularly useful when no prior information about the relationship between the faults and the symptoms is available, which is mostly the case in complex processes [30], [44]. Commonly, the neural network approach is used as a fault classifier for fault diagnosis. It should be noted that the growing demand for higher operational safety together with the increase in the complexity in automation have resulted in the integration of different FDD approaches in different applications [8], [36]. 2.4. The FDD Approach Used in This Research The model-based state estimation approach is utilized in this research. Systems in aerospace applications are safety-critical, where security and reliability play an important role. Since the mathematical model can be derived in aerospace applications, specifically in control systems, the model-based estimation approach is more robust and outperforms 20 other methods. This approach also handles the noise in the system which is one of the main concerns in attitude determination. The approach is based on monitoring the innovation sequence of the designed Kalman filters followed by hypothesis testing for fault isolation. However, in the design of the FDD scheme the isolation of fault is performed in two stages. This scheme resolves the problem of delay in detection due to a build up of the likelihood functions for active hypotheses in multiple hypotheses testing [32], [37] for fault isolation. Furthermore, recovery is possible when at least one set of sensors (either rate gyros or vector sensors) is in healthy operation. Primary isolation of faults is advantages since in hypotheses testing fewer likelihood functions have to be computed which results in the faster isolation of faults in the system. In addition, it leads to higher distinguishability of faults. 21 CHAPTER 3 Description and Modeling of Spacecraft AD System 3.1. Introduction Attitude is the orientation of a space vehicle relative to a known set of directions or reference frame. In this chapter, an overview of the Attitude Determination (AD) system of a spacecraft is given along with the attitude determination configuration. The material in this chapter is organized as follows. Section 3.2 includes a description of the coordinate systems used in developing the system equations and the algorithm for this research, which facilitates the understanding of the attitude determination problem. In Section 3.3, the spacecraft rotational dynamics are discussed in detail and in Section 3.4 the model used for simulation and its constraints are presented. Section 3.5 describes the fact that the spacecraft AD system task depends on the control modes and measurement instruments, which has motivated the utilization of an integrated attitude determination in this research. Finally, measurement models of selected sensors are described in Section 3.6. 22 3.2. Coordinate Systems It was mentioned in Chapter 1 that the attitude of a spacecraft is its orientation in space. Therefore the spacecraft attitude determination problem is better understood by defining the coordinate systems in the space. As Fortescue and Stark have noted [12] "there must be some datum frame of reference, and once this has been chosen then the attitude of a spacecraft refers to its angular departure from this datum." In attitude dynamics study, the first and fundamental frame is defined as the inertial reference frame. It is important because it is only in an inertial or non-accelerating reference frame with respect to which Newton's laws of motion are approximately correct. As Kaplan points out [26], in practice, it is sufficient to select a coordinate frame which is not accelerating significantly to disturb the problem solution beyond the desired accuracy over the time frame of interest. In analyzing the motion of a spacecraft orbiting the Earth, it is appropriate and sufficient to consider a Sun-centered coordinate frame as an inertial frame which is followed in this research. Since we are analyzing the orientation of an object, another frame that has to be defined is a body-fixed frame. Then the attitude will be defined as a transformation relating the orientation of the body relative to the inertial frame. As shown in Figure 3.1, a body-fixed coordinate frame has its origin at the vehicle centre of mass and is a convenient coordinate system for developing the equations of motion of the vehicle. The alignment of the body-fixed frame axes with the principal axes of the spacecraft inertia will simplify the equations of the rotational motion of the vehicle. Consequently, the orientation of the spacecraft is described relative to the Sun-centered inertial frame. The origin of this 23 frame is at the centre of the Sun and the third axis (z,) is normal to the ecliptic plane of the rotation of the Earth around the Sun (xt, yt ). Zb Figure 3.1 Sun-centered inertial and body-fixed coordinate systems. In some situations it is convenient to define other coordinate frames attached to the sensors of the spacecraft to simplify the interpretation and manipulation of the sensor data. Data from each frame are then related to the body coordinate frame through a coordinate transformation. This body frame is in turn related to the inertial frame through another coordinate transformation. This last transformation defines the attitude of the body, and is investigated in this research. The transformation between the sensor frames and the body-fixed frame is generally a known transformation, which can be calculated prior to the mission based on the design of the spacecraft and configuration of its instruments. Therefore, with the assumption that the sensor frames correspond to the body-fixed frame, the minimum set of frames that is required to analyze the attitude or 24 orientation of a spacecraft includes an approximately inertial frame as a reference frame and a body frame, fixed to the vehicle. Euler angles are considered for parameterizing the attitude in derivations used here. Based on the Euler theorem [26], any two independent orthonormal coordinate frames can be related by a sequence of maximum three rotations about the coordinate axes, where no two successive rotations may be about the same axes. Although this method suffers from singularity, thereby causing difficulties in the mathematical algorithms, it is used because the outputs of several measurement instruments are expressed in terms of Euler angles and also the operating point is in the region where singularity of Euler angles is not an issue. In the Euler angle method, when defining the orientation of a body with respect to a reference frame, a series of pure rotations is used, and this results in an orthogonal transformation. The associated rotations are called Euler angles. Any rotation of a rigid body may be completely described using these three parameters. There are multiple combinations of angles and axes that yield the same final orientation. In view of this, the Euler angles are not unique [40]. As shown in Figure 3.2, the order of the axes transformation that is used in this research is \j/ —> 6 —> <p with the axes order of rotation z —> y —> x. The resulting transformation matrix T is as follows: T cos#cosy cosflsiny/' -sin# -cos^sin^ + sin^sin^cos^ cos^sin^ + sin^sintfsinl//' sin0cos# sin^sin^ + cos^sin^cos^//- -sin^cos^ + cos^sin^sin^ cos^cos# (3.1) 25 Figure 3.2 Three successive Euler rotations relating two coordinate systems. 3.3. Spacecraft Rotational Dynamics Rotational motion of a rigid body in space may be described using Newton's Second Law for rotational motion. The simplifying assumptions made are that the spacecraft is considered a symmetric body and the rotational moments of inertia do not change during the simulation. For further simplicity, the body frame is taken to coincide with the principal axes of inertia. Therefore, the rotational motion of the spacecraft can be described in the body frame using Eulcr's equation [26], [43]: M,=IA,+o}yco,{Iz-Iy) (32) My= Iy(bv+a>xa):(Ix-I:) (33) M:=I:oJ:+cjxcoy(Iy-Ix) 26 where cox, (Oy and coz are angular velocities about the body axes x, y, and z, respectively, Mx, M y and Mz are total moments about the body axes x,y, and z, respectively, and Ix, I y and/2 are the moments of inertia along the principal axes of rotation (x, y, z). Rewriting these equations in the state space form gives ">y = (J; - KVi' ^ + MyIy'i (3.6) ojz=(ix-iy)i;xcoxcoy+Mj;' (37) These equations are nonlinear and do not have a closed-form analytical solution. Therefore, the angular velocities are computed by direct numerical integration of the angular accelerations around the corresponding axes. Body angular rates are related to the inertial Euler angle rates using "Euler angle rate equations" [43]. Based on the selected set of Euler angles and their sequence of rotation described in Section 3.2, and with reference to Figures 3.3 to 3.5, these equations are as follows: G)x=^-\ifsm{9) (38) ct)y=9 cos(0) + iff cos(0) sin(0) Q)z = y/"cos(0)cos(0) + 0sin(0) (3 10) Here, y/ is the Euler angle about the third axis (Figure 3.3), $ is the angle about the "new" second axis (Figure 3.4), and <f> is an Euler angle about the "new" first axis 27 (Figure 3.5). The variables y/, 0, and (j> denote yaw, pitch, and roll angles, respectively. They are the angles by which the body frame is rotated relative to the reference frame. Figure 3.4 Euler angle 9 about the new second axis. Figure 3.5 Euler angle (f) about the new first axis. 28 Since \jf, 6, and <p are not along the orthogonal coordinates, the transformation matrix of the angular rates is not orthogonal. Thus, the expression relating the rate of change of Euler angles to the body rates cannot be obtained from (3.5) by simply transposing the matrix [43]. The relationship relating the rate of change of Euler angles to the body angular rates in a matrix form is V" e i cos(0) A 0 sin(0) cos(^) 0 cos(^) cos(0) - sin(0) cos(0) cos(#) sin(0)sin(#) cos(0)sin(0) co. co„ co. (3.11) Note that the Euler angle rates can be integrated to yield the Euler angles. However, the angular velocity componentscox,coz, and coy along the body axes x, y, and z (body rates) cannot be integrated to obtain the associated angles by which the attitude obtained from the gyro might be described. Measurements of the body axes angular rates cox, co and coz, together with knowledge of the initial condition of the Euler angles, allow us to integrate with respect to time the set of equations (3.5)-(3.7). Consequently, Euler angles y/, 6, and cj>, by which the body frame is rotated relative to the reference frame, are obtained. 3.4. Simulation Model Although the spacecraft dynamic model that has been outlined in the previous section is based on some simplifying assumptions, it is applicable to various spacecraft with some modifications. This simplified model can be applied to the attitude determination of any rotating object and be used for filtering. The moments acting on the spacecraft during its mission include disturbance torques and control torques. Disturbance torques are due to external effects such as the gravity gradient, the geomagnetic field of the earth, and solar 29 pressure. Control torques are the torques that are required to maintain the spacecraft in its reference trajectory and are produced by the actuators embedded in the spacecraft such as momentum wheels and thrusters. During the development of the algorithm and subsequent testing, spacecraft motion is simulated to provide a "true" reference trajectory. Noisy measurements of this true reference are simulated as well. The AD algorithm operates on these in an attempt to recover the original motion and provide better estimates of attitude. Having described the equations that govern the rotational motion of a spacecraft and the constraints, it is necessary to investigate how the motion is measured and what the measurement instruments are. These measurements are monitored with the aid of the estimated values of the spacecraft attitude. In Chapter 4, forming the residuals as an essential piece of information for monitoring and fault detection and diagnosis scheme will be described and discussed in detail. 3.5. Attitude Sensing Instrumentation for measuring the attitude of a spacecraft is used to determine the attitude of the spacecraft with respect to a defined reference frame. The final product may be for instance the Euler angles of the spacecraft or the sun vector components in the body frame. It was mentioned in Chapter 1, Section 1.2, that the objective of attitude determination is to generate estimates of the attitude and the angular rate of the spacecraft for use by its controllers. Attitude determination is the process of computing the orientation of the 30 spacecraft relative to a reference coordinate frame. This typically involves several types of sensors and sophisticated data processing procedures. Multiple sensors are used in order to obtain the measurement data in the Attitude Determination and Control System (ADCS), depending on its architecture. The most commonly used attitude sensors include Horizon scanner, Sun sensor, Star sensor, Magnetometer and Gyros. The Global Positioning System (GPS) known as a source of position information is also being used for attitude determination in space applications [1], [35]. In different phases of the mission different types of sensors are employed depending on the architecture of the ADCS and are configured to provide the necessary data. The selection of sensors is very much dependant on the mission requirements and the design of the attitude control modes. As an illustrative example, the MOST satellite [5], [34], a Canadian scientific micro-satellite which was launched in June 2003, was designed to have four attitude control modes: Safe-hold, Detumbling, Coarse pointing and Fine pointing. Depending on the selected control mode, the ADCS is configured to provide data from the measurement instruments including magnetometer, sun sensors, rate sensors and star sensors. Safe-hold is defined to be an uncontrolled state where the satellite could be tumbling or moving into arbitrary attitude. In this mode the ADCS provides protection of the science instruments onboard against damages followed by the recovery operations. Detumbling involves using the magnetometers and magnetorquers to control and slow down the tumble rate of the satellite so that coarse pointing control can be executed. Normally, this is used after the deployment of the satellite from the launch vehicle. Coarse pointing is a control mode that was designed to be activated after the 31 satellite detumbled in order to point the satellite in the direction of interest and Sun sensors are included for data collection. Finally, in the Fine pointing mode, the star tracker determines the attitude with high accuracy as required for the satellite mission. The mode, in which the spacecraft is unforced, is considered for simulation in this research. Therefore, external disturbances are the source of the moments acting on the spacecraft. In this research, an integrated attitude determination system is devised for data collection. The system considers rate gyros, Sun sensors and magnetometers. In the next sections, the need for having an integrated attitude determination system will be discussed and the attitude solution from Sun sensors and magnetometers and the characteristics of the rate gyros along with their error model will be presented. 3.6. Integrated Attitude Determination System One advantage of using rate gyros in the AD system of the spacecraft is that they can measure angular rates directly without considering the spacecraft angular attitude [43]. This becomes particularly important when other sensors such as Earth or Sun sensors cannot capture the angular position data. This may happen once the Earth or Sun leaves the field of view of the sensors. Consequently, it is not possible to measure the spacecraft angular rates and thereby control its angular position. However, despite the fact that rate gyros offer a relatively high accuracy for a short-term attitude determination, they also generate unbounded errors with time. Due to accumulation of errors in the output of the rate gyros over time, a sensor integration mechanism is required for the removal of any erconeous gyro measurements in the AD system. For this purpose another set of sensors have to be used in the AD system along with the rate 32 gyros. In fact, a Sun sensor which is the most commonly used sensor in space applications is utilized. Since a minimum of two nonparallel directions are needed to uniquely determine the spacecraft orientation [26], another vector sensor such as a magnetometer is needed. Therefore, another attitude solution is obtained from both Sun sensor and magnetometer data of two reference directions, which provides the second set of attitude information. Wahba [48] proposed an attitude solution [15] by matching two non-zero, non-colinear vectors that are known in one coordinate frame and measured in another. See [15] and [31] for other methods of solving this problem. However, the calculation of angles from two observed vectors from the vector sensors, namely the Sun sensor and the magnetometer, is outside the scope of this research. Data simulation is performed in order to directly give the attitudes, and the algorithm to be developed merely requires the measured values and the quality of the measurements. There are several advantages of this sensor integration and data fusion. It results in bounded rate gyro measurement errors by resetting the gyro measurements with attitude solution of the Sun sensor and magnetometer sampling time. Additionally, along with the initialization of the rate sensors, better estimates of the spacecraft attitude are obtained for use by controllers. This also leads to the generation of residuals from the estimated outputs and the actual measurements, for health monitoring and fault detection of the sensors. This topic is discussed in detail in Chapters 4 and 5. This integration of data may be accomplished based on filtering as shown in Figure 3.6. 33 Sun Sensor and Magnetometer States + Attitude Solution Errors Rate Gyro —X States + Gyro Errors • Filter - Error Estimates State Estimates Figure 3.6 Closed-loop configuration of integration mechanism. 3.6.1. Vector sensors Vector sensors include Sun sensor and Magnetometer. By combining data from these sensors, an attitude solution for the spacecraft is derived. Sun sensors are the most common attitude sensors employed on satellites. They can have different ranges of accuracy. Some can measure the direction of the sun with an accuracy of 0.015°, whereas some others have an accuracy of only 0.5° [43]; however, analytical processing of the output of the two sensors is basically the same. Sun sensors come in both analog and digital designs. Digital sensors are more accurate but more expensive. It is assumed that the combination of data from vector sensors generate a bias-free attitude solution corrupted by Gaussian white noise only, as shown below. 9... =6 + na (3.12) Here 6m is the measured attitude angle, 0 is the actual spacecraft attitude angle, and ne is the measurement noise. 34 3.6.2. Rate gyros Two major categories for gyroscopes are rate gyros that measure rotation rate and rate integrating gyros that generate an angular displacement from an initial value. When using rate gyros in the AD of a spacecraft, normally three of them are installed. Also, it is assumed that the sensitive axes of the rate gyros are aligned with each of the body axes of the spacecraft. The angular rate measurements from the gyros are used to solve a set of differential equations (3.5)-(3.7) which describe the attitude of the spacecraft where co =[cox coy cozYrepresents the angular rate output from three orthogonal rate gyros. More specifically, cox, coy, and coz are the outputs of the rate gyros with their sensing axes aligned with the roll, pitch and yaw axes, respectively. The rate gyros that are used onboard the spacecraft have a drift rate bias which grows in time and accumulates gradually, leading to erroneous rate measurement over time. As presented by Farrenkopf [11] the dynamic model for generating angular rates is one based on the rates driven by white noise and biases in which the derivative of them are functions of the biases themselves with exponential error effect on the rate gyro outputs. The problem with using gyros in any attitude determination system where Kalman-based filtering is used is that its bias or drift violates the white noise assumption required for Kalman filtering. As a solution to this, in this research, the biases in the output of the gyros are also estimated by Kalman filter and are fed back to correct the measurements in each rate gyro sampling time. Therefore, the new rotational rates are produced from the rates that have been perturbed by noise and biases. 35 Typically, the rate gyro output comprises the superposition of several biases; e.g., instrument misalignment factor, and initial tilt. Here, based on the model developed by Farrenkopf [11], the terms whose contributions to attitude errors that are significant are considered. From this assumption, the measured rate gyro output is corrupted by the drift-rate bias b and the drift-rate noise rj, as expressed below. a>m=a + b(t) + Tj (3.13) Here com is the output of gyro and 0) is the actual angular velocity of the spacecraft. The drift-rate noise rj is considered a zero-mean Gaussian white noise with a standard deviation of (Tw and a covariance Qw . E[Tj(t)] = 0 (3.14) E[V (tW(t')] = QJt)S(t-t') (3.15Here 8{t -t') is the Dirac delta function. According to [29] for most gyros, b(t) can be accurately modeled as: 4-b(0 = -b(0/T + 77i (3-16) at where nb is a zero-mean Gaussian white noise with a standard deviation of ab and a covariance Q b, and T is the sensor time constant. E[T]b(t)] = 0 (3.17) m(0,^(O] = Q6(0S('-O (318) It is assumed that the noise signals in the measurement and the process are uncorrected; specifically, E[m,VTb(t,)] = 0 (3.19) 36 3.7. Concluding Remarks In this chapter the coordinate systems used for attitude determination were explained. Then the rotational dynamic model used in the development of the attitude determination algorithm and the fault detection and diagnosis scheme in this research was presented. Describing the limitations of using rate gyros for long term missions, an integrated attitude determination was considered and the measurement model for each type of sensor was described. 37 CHAPTER 4 Kalman Filters Implementation 4.1. Introduction In this chapter the design and implementation of Kalman filters [2], [19], [50] for the present study are explained with the details of derivation of the various equations and related matrices. Four Kalman filters are designed and used for schemes of attitude determination, fault detection and diagnosis. For integrated attitude determination in a spacecraft using rate gyros and vector sensors, the measurements should be combined through a sensor fusion technique. The measurement data from the vector sensors is used to correct the gyro measurements, which results in bounded measurement errors. This process motivated the design, of the first Kalman filter to extract angular position of the spacecraft and to estimate gyro biases. The estimated gyro biases are fed back to the system and gyro measurements are corrected. This process is particularly important in using the rate gyros in space missions to avoid accumulation of the error in their outputs. 38 In the fault detection and diagnosis scheme, three Kalman filters are used in different phases based on the architecture that will be presented in the following chapters. The main role of these three filters is residual generation and estimation of the states of the . system based on the available measurement data. In the fault detection and diagnosis phase, the first filter employs the measurements from all the sensors while the second filter makes use of the rate gyro measurement data only, for state estimation. In the third filter, the attitude solution from vector sensors is the only measurements entering the filter for state estimation and residual generation. Therefore, in this part, filters are designed and implemented according to the Extended Kalman Filter (EKF) scheme for three different purposes. For easy reference to the filters, the first filter is referred to as the Attitude Determination Kalman Filter (AD-KF) since it operates in the attitude determination part to provide bias estimation. The remaining three filters operate for Fault Detection and Diagnosis (FDD). These filters are referred to as FDD-KF-1, FDD-KF-2 and FDD-KF-3. Since the goal of AD-KF is the fusion of data from both types of sensors and providing the accurate estimates of attitude [16], its design is slightly different from the standard Linearized Kalman Filter (LKF) or the standard Extended Kalman Filter (EKF). All the differences and the related equations and matrices will be discussed in the following sections. This chapter is organized in a way that the FDD-KFs - which are based on EKF - are explained in the first part. Afterwards, the AD-KF is discussed with all the differences and related equations and matrices. 39 4.2. Kalman Filter Implementations in FDD Scheme For implementation of EKF a number of matrices must be defined. Figure 4.1 shows the entire structure of the EKF. It gives an overview of how the filter works and what matrices and other quantities should be defined. In the following subsections, the derivation of the matrices and filter implementations are discussed in detail. 4.2.1. Choice of state vector State vector is chosen according to the variables that are to be estimated. The function of having Kalman filters is to estimate the attitude of the spacecraft and angular rates, and as has been discussed earlier, generate residuals leading to fault detection and primary isolation in attitude determination sensors, namely, rate gyros and vector sensors. Therefore, the state vector consists of three angular rates and three angular positions, represented as * = [p q r y/ 6 <p]T (4 ^ 4.2.2. Initialization of the state vector x0 The EKF filter routine requires an initial guess, or estimate of the state vector, to begin processing. Although poor initialization might lead to filter convergence, realistically, a reasonable estimate of the spacecraft attitude and rates is an initial condition that can speed up and guarantee convergence. In the simulation, the measurement errors are added to the actual initial values coming from the data simulation algorithm to initialize the state vector. In the real implementation, if a filter is required to be restarted during the flight, the initial condition is obtained from the attitude solution of the vector sensors. 40 Start Initialize £„, State Vector Initialize P, Covariance Matrix h Compute New State Estimate z = measured I Compute P, Covariance Matrix After Update 1 Initialize R,,(r), Measurement Noise Covariance Matrix Compute Q N-(/), Continuous Process Noise Covariance Matrix P = (I-KH)M Compute K, Kalman Gain Matrix K,= MHr[H MH' +R ] Compute O , State Transition Matrix <t>t=e*T- =I + FT; Compute H, Measurement Matrix H dh | dx1' I" E[wT] = ~Rv R reflects confidence in measurements £'[WW7'] = Q„. Q reflects confidence in system model Compute QJ (k), Discrete Process Noise Matrix I Q;' = JOGQG^'JT Compute M, Covariance Matrix Before Update I M=a»1p4.1a»/ + Q/ Numerically Integrate Nonlinear Dynamic Equation Forward x = propagated x = f(x,t) + w Figure 4.1 Overall structure of Extended Kalman Filter. 41 4.2.3. Computing the state transition matrix, <J> The State Transition Matrix, <D, embodies the dynamic equations needed for EKF by the computation of the Kalman gain and propagation of the state vector forward in time. This is also the matrix that contains the linearized dynamics in the form of truncated Taylor Series approximation. Consider the nonlinear dynamic system x = /(x,f) + w (4.2) z = h(x,t) + \ (4.3) where f(\,t) and /z(x,Oare nonlinear functions of states and time,w and v are zero-mean, independent, Gaussian white noise vectors of the process and the measurements with the covariance matrices Qlv(?)and Rv(0 given by E{yrwT} = QwS(t-T)' (4.4) E{vvT} = RvS(t-r) (4.5) The linear state space representation of the process model may be written as x = F(x,0x + G(;)w (4.6) where F is the matrix representing the dynamic equations for the system, x is the state vector mentioned earlier, G is the mapping matrix and w is a vector containing random, zero-mean, process noise. This process noise is meant to represent the known deficiencies in the dynamic model such as unmodeled dynamics, approximations, etc. Based on the process model, the dynamic equations for the system may be written as <*>x = *. = (IY ~ IZ x2x3 + wM/;' (4.7) 42 (Oy=X2= (f -Ik)I~ XXX, + WMI. -1 (4.8) y ®z = X3 = (f ~ Iy)I~ XXX2 + WMIZ -1 (4.9) y/ = x4 = sin(x6) cos(x6) cos(x5) cos(x5) (4.10) 6 = x5 = cos(x6)x2 — sin(x6)x3 (4.11) 0 = x6 = x, + sin(x6) tan(x5)x2 - cos(x6) tan(x5)x-'3 (4.12) Here, the moments acting on the spacecraft are merely disturbance torques that are due to external effects such as the gravity gradient, the geomagnetic field of the earth, and solar pressure. They enter the system equations as process noise with the variances (squares of 2 2 2 the standard deviations) aM , aM , and aM . These equations are the equations which are numerically integrated to propagate the states from one time step to the next. Clearly, they are nonlinear in terms of the states and this is what drives the use of EKF. The EKF requires linearization of this nonlinear system matrix. This is accomplished by taking the partial derivatives of each of the dynamic equations with respect to each state according to This is in fact the Jacobian matrix with respect to x evaluated along the reference trajectoryx. The reference trajectory can either be a pre-designed nominal trajectory leading to Linearized Kalman Filter (LKF) or the previously estimated values from the Kalman filter itself which is referred to as the Extended Kalman Filter (EKF). The F(x,0 = df (4.13) 43 resulting system dynamic matrix F is a 6><6 matrix which consists of four 3x3 sub-matrices in the form '3x3 M 3x3 M 3x3 (4.14) The sub-matrices M13*3, M23.v3 and M33.V3 are given below: M'3.v3 = i;\ix-iv)q I;\IX-IV)P 0 (4.15) M23x3 0 0 1 sin(^) cos(0) cos(0) sin(^) sin(#) cos(0) cos(^) cos(0) - sin(0) cos(0) sin(#) cos(6>) (4.16) M33x3 = 0 0 0 sin(0) , . .,. .... 5— (^ sin(f) + r cos(0)) cosz(0) 0 (qsin(<p) + rcos(<j))) cos2(0) <7cos(0)-rsin(0) cos(6) - (q sin(^) + r cos(0)) sin(6») cos(0) (<? cos(0) - r sin(^)) (4.17) The continuous time state transition matrix O is given by 0(0 = e Ff (4.18) The discrete form of this matrix is generated by substituting the filter time step Ts for t. 44 2! (4.19) Unlike in an LKF where the state transition matrix is actually used to propagate the states forward in time step through matrix multiplication, in the EKF this matrix is only used in the calculation of the Kalman gains. The states are actually propagated via numerical integration of the nonlinear dynamic equations. The infinite series is truncated at the first two terms as additional terms do not generally improve the performance of the overall filter [50]. Therefore the state transition matrix is approximated as rj> =eFT' ~l + FT (4.20) 4.2.4. Computing the process noise matrix Qw The process noise matrix Qw is meant to reflect the confidence in the overall system model. It is defined as E{wT} = QJt)5(t-T) (4.21) where wis a vector representing the process noise in the state space system equation (4.6). The covariance matrix of w is defined as the 6^6 matrix 6x6 = 0 < 0 0 0 0 0 0 < 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (4.22) 45 Here, the terms oM ,<JM , and aM are the variances (squares of the standard deviations) of the disturbance torques in each axis. The tuning parameter <f>s is added to account for uncertainty in the system model and is discussed in Chapter 6. The discrete process noise matrix, Qwd , is computed in each iteration of the EKF as [14] Qj = QM = )®(tM,T)G(T)Q(T)GT(T)<S>T(tM,T)dT (4.23) It 4.2.5. Computing the covariance matrix M before the update The covariance matrix M before the update is calculated as M=0,P,_,0/+Q/ (4.24) where P is the covariance matrix after update. The covariance matrix is a measure of the confidence in the estimate. In this case the initial covariance matrix reflects the confidence in the initial estimate of the state vector. This matrix is defined as the squared error in the initial estimate which can be user-defined. For software implementation, this is generated as a diagonal matrix with the squares of the error corresponding to each initial state along the diagonal. In this study, the initial states are assumed to be off the actual initial conditions by the standard deviations of the measurements. Also, since this is a covariance matrix representing the squared error, it must be positive definite, by definition, Therefore, a small positive value, in the order of a percentage of the standard deviation, is added to each element to ensure that the matrix remains positive definite in the case where the error in an initial estimated state is close to zero. Accordingly, the matrix P is calculated recursively. 46 4.2.6. Propagating forward the state vector x In the case of a nonlinear system such as the one considered here, the state vector cannot be propagated forward in time using the state transition matrix as would be the case with a linear system. Instead, equations (4.7)-(4.12) are numerically integrated to propagate the states from one step to the next. In this study, the numerical integration of the nonlinear differential equations is performed using the second-order Runge-Kutta numerical integration technique. 4.2.7. Calculating the projected observations z In general, the measurement equation that is required for the application of the EKF is considered to be a nonlinear function of the system states, according to z = h(x,t)+\ (4.25) In the linearized form this is expressed as z = H(f,/)i+v (4.26) where v is a zero-mean, Gaussian white noise with the covariance matrix Rv defined by equation (4.5). The measurement noise matrix Rv reflects the confidence in the accuracy of the measurements and is a diagonal matrix with the squares of the sensor standard deviations along the diagonal, and H is obtained with the same argument made for the computation of F, as H(x,0 = ^L (4.27) 47 For a system in which the measurements are discrete, the linear measurement equation can be rewritten as zk = H(xk,k)xk + \k (4.29) where the discrete measurement noise covariance matrix Rv consists of a matrix of variances representing each measurement noise source. In the system considered here, the system states are measured. Thereby, the measurement matrix H relates the measurements to the states and depending on which measurements enter the EKF, Rvrf and H are defined accordingly. In our application, with three Kalman filters in the FDD part with different measurement inputs, the matrices are defined as follows: • For the case where all measurements are used in KF (FDD-KF-1), H is a 6X6 identity matrix and R/ is R. cr/ 0 0 0 0 0 0 aq 0 0 0 0 0 0 a, 2 0 0 0 0 0 0 a¥20 0 0 0 0 0 (7e20 0 0 0 0 0 OV (4.30) • For the case where only measurements from the rate gyros are used to estimate the angular rate and the angular position (FDD-KF-2), H is defined to be 48 H = 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 (4.31) and Rvrf consists of the variances of the rate gyro measurement noise: R' = a; 0 0 0 CT/0 0 o a; (4.32) For the case where measurements from the vector sensors are used to estimate the angular rates and the angular position (FDD-KF-3), H is denned as follows: H = 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 (4.33) Here R/ consists of the variances of the attitude solution from vector sensors, as follows: R <v 0 0 o oy o o o o-• (4.34) 49 4.2.8. Computing the Kalman gain matrix K The Kalman gain is calculated at each time step as a function of the matrices, which is defined earlier. The expression for this gain matrix and the covariance of the residuals generated by the Kalman filter algorithm are as follows: Kt=MHr[HMHr+R,r' (4.35) V = H M Hr +RV The KF residuals are a key component of the FDD scheme and will be defined later in this chapter and will be discussed in the next chapter. 4.2.9. Computing the covariance matrix P after the update Once the Kalman gain is calculated, the covariance matrix after the update is computed using the following equation: Pt=(I«*-K4H)M (4.36) The covariance matrix in each time step provides a measure of confidence in the estimates at each step. 4.2.10. Computing the new state estimate x Finally, the state estimate is generated by the filter. The filter combines the state vector that has been propagated forward by numerically integrating the nonlinear dynamic equations with a weighted residual formed by differencing the observation with the projected observation and weighting it with the Kalman gain. In this manner, the EKF 50 produces its estimate of the state vector at the next time step using the following equation: x,=x,+K,(z/-z,) (4.37) where zk is the measured observation from the sensors, and the difference of it and the values that have been estimated by KF is defined as the residual. It is an essential piece of information in the fault detection and diagnosis algorithm, and the detail of its utilization in the algorithm will be discussed in the next chapter. Once the sate estimate is formed, the cycle begins for the next time step as shown in Figure 4.1. The entire process is implemented using MATLAB and the representative results on filter performance and the residuals are presented in Chapter 6. 4.3. Kalman Filter Implementation in AD Scheme As introduced earlier in Section 4.1, to determine the attitude of the spacecraft, measurement data from two types of sensors are fused [16], providing more accurate estimates of the spacecraft attitude than the angles measured directly from sensors, and more importantly, estimating the growing bias in the rate gyro outputs. This leads to the removal of erroneous rate gyro measurements that may enter the FDD algorithm. Removal of the bias is very crucial as this would cause not only an error in the attitude estimation of the spacecraft but also trigger a fault alarm where no fault has actually occurred. This error is known and cannot be assumed as a true fault in the system; so, a distinction should be made between a fault and error in the system. Consequently the error has to be removed from the measurement, which results in bounded measurement errors. Since the concept and derivation of the matrices are mostly the same as what has 51 been explained previously in the design of FDD-KFs, here we briefly present the matrices and only explain the differences. As mentioned in Section 3.3, the system of differential equations relating the Euler angles to the gyro outputs is nonlinear. Devising an attitude estimator requires linearization of this system of equations. Therefore, the following system perturbation equation is used: Ax = FAx + Gw (4.38) In the present problem of state estimation in AD, it is also required to estimate the gyro biases and set them as states of the filter. Consequently, by estimating the rate gyro biases during the measurement update of the filter and subtracting them from the output of the gyro in each iteration, the gyro measurements are corrected and the erroneous gyro measurements are removed. Combining the kinematics of the motion with the gyro error model equation (3.16) described in Chapter 3, the system of equations may be written as sin(x,) cos(x,) V = *, =—7^7<7 + T^r (4-39) cos(x2) cos(x2) 6 = x2 = cos(x3 )q — sin(x3) r (4.40) = i3 = p + sin(x3) tan(x2) q - cos(x3) tan(x2) r (4.41) *,=*4= —+ *7* (4.42) 7i bq=x5 = — + Tlbq (4.43) T2 6, =x6= — + Vbr (4.44) T2 the error state vector is formed as 52 Ax (4.45) Ay/ AO A(j) Ab. The system dynamics matrix F is formed using the same concepts presented in Section 4.2.3 using the above mentioned state space equations. In fact, the difference here is that the Jacobian matrix with respect to x is evaluated along a nominal trajectoryx. The resulting system dynamic matrix F is a 6X6 matrix that consists of four 3x3 sub-matrices in the form M'3,3 M23.3 M 3x3 (4.46) with the sub-matrices M^, M23x3 andM33x3 denned as follows: M'3x3 0 0 0 sin(0) .... —j—- (g sin(0) + r cos(0)) cos2(0) 0 (q sin(0) + r cos(0)) cos2(0) gcos(^)-rsin(^) cos(0) - (q sin(0) + r cos(0)) sin(0) . — (q cos(^) - r sin(0)) cos(0) (4.47) M 3x3 = 0 0 sin(0) cos(0) cos(^) sin(0) sin(0) cos(0) cos(0) cos(0) - sin(^) cos(0) sin(0) cos(0) (4.48) 53 M33,3 T, 0 0 0 0 0 --(4.49) Here, tx, t2 ,and r3are the time constants of the rate gyros. The process noise mapping matrix is given by G = 0 3x3 0 3.v3 x3A:3 I, (4.50) The process noise vector w is made up of the three measurement noise components of the gyro outputs p, q, and r, and the three process noise components of the gyro biases, as given by w = [77„-77, Vr Vbp Vbq Vbrf (4.51) According to the explanation in Section 4.2.4, the covariance matrix of w is a 6><6 matrix as given by 3*3 0, ••n jaj "3x3 03.v3 Qb 3*3 (4.52) Here 3*3 and Qb 3*3 are diagonal matrices with their diagonal elements given by 2cr^ 2CT^ 2cr^ {(7 2,o~ 2,0" 2} and { —, —, —}, respectively [14], or in an alternative T T T p <i r representation: 54 6x6 < 0 0 0 0 0 0 «: 0 0 0 0 0 0 0 0 0 0 0 0 2o2bP TP 0 0 0 0 0 0 2<j2bp 0 0 0 0 Q 2a2bp (4.53) By initializing the state x and covariance matrix P based on the arguments of Sections 4.2.2 and 4.2.5, the covariance matrix is propagated in time using: M4=04PM0/+Q/ (4.54) In Section 4.2.4, Qwd is mentioned to be the discrete equivalent ofGQ^G7^. The state transition matrix Q>k is computed using the current angular ratecom = [pm qm rm]T obtained from the rate gyros. Therefore the rate gyro measurement data are employed directly in the computation of the system dynamic matrix and not in the measurement equation. Thus, the measurement vector is defined based on the attitude solution from the vector sensors, as ¥ e P. Then the error measurement equation is defined by (4.55) Az, = HAxt + \k (4.56) 55 where Az^is the difference between the vector sensor attitude solution and the reference trajectory. H which is a matrix relating the measurements to states is defined as follows: H 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 (4.57) The variable v,, is the measurement noise with its 3x3 covariance matrix R„ defined as R. <v 0 0 0 <7g2 0 0 0 oV (4.58) The measurement update equation of KF, which is used once at each measurement update, is given by Ai^OAi^, +Kk(Azk -HOAiH) (4.59) The elements of the predicted error state vector Axk are the errors in the estimates of the three Euler angles at time step k. At each measurement update, the Kalman gain matrix K and the updated state covariance matrix are computed using the following relations: K,= MtHr(H Mt Hr+R/r' P*=(l6x6-K,H)MA (4.60) (4.61) After each measurement update, the attitude angles and the rate gyro biases are updated as 56 xk=Axk + x (4.62) Consequently the estimates of the angular position of the spacecraft and the rate gyro biases b are computed for one time step. This process is repeated for the subsequent cycles. In each step the estimated biases are fed back to the system to correct the gyro measurements according to Pc=Pm-bP (4.63) ac=am-K (4.64) rc=rm-br (4.65) where index m represents the measured value and index c represents the corrected value. This entire process has been implemented using MATLAB and the results on the filter performance and the attitude estimates are presented in Chapter 6. 57 CHAPTER 5 The Fault Detection and Diagnosis Approach 5.1. Introduction In this chapter the Fault Detection and Diagnosis (FDD) scheme proposed for the AD system of a spacecraft is described. The material in this chapter is organized as follows: in Section 5.2 the role of the extended Kalman filters as the residual generators is explained. Section 5.3 outlines the manner in which the failures enter into the system equations and describes the effect of failures on the residual mean. In Section 5.4 the designed FDD scheme in this research is explained in detail and the role of each of the three main phases {Fault detection, Primary Isolation, Fault Diagnosis) is described. The subsequent sections describe the tests and techniques that are required in the three phases of FDD. Section 5.5 presents a description of the statistical threshold tests, namely the t-test and the chi-square test, and their role in the FDD scheme, followed by their implementation. Section 5.6 deals with hypotheses testing that is employed in the third phase: fault isolation. The multiple hypotheses technique and the Generalized Likelihood Ratio (GLR) test are also explained in this section. Since the objective of the isolation phase is to decide among alternative failure hypotheses, only one hypothesis will 58 correctly describe the present state of the system at any time, and this filter will have the maximum likelihood function value. In Section 5.7, the residual space is introduced and the geometrical interpretation of the isolation technique is presented. The isolation is performed by comparing the direction of the observed residual with all the hypothesized failure directions and then choosing the scenario that is the most likely. Finally, Section 5.8 summarizes the chapter and points out some considerations that should be taken into account for further analysis. 5.2. Kalman Filter as a Residual Generator In the FDD framework designed in this research, the residual generated by the Kalman filter is an essential piece of information. It is used in every phase of the FDD algorithm: from detecting the failure by statistical testing of the residuals, to categorizing the type of failure; namely, detecting the faulty section in the primary isolation stage and to isolating the failure; namely, identifying the exact faulty components, by multiple hypotheses testing. Prior to the development of an FDD technique for a system, it is necessary to consider how failures affect the system and how to process the observed data from the system to produce a signal in which failure effects are reflected. As described in Section 4.2, the Kalman filters designed to operate in the FDD phase generate residuals and estimate the states depending on the measured observations entering the filter. The residual generated by the Kalman filter algorithm is the difference between the measured values of the states obtained from sensors and the values estimated by the Kalman filter: 59 r = Res x =z z (5.1) In the absence of a failure, the vector r is referred to as the innovation, and in the presence of a failure, it is referred as the residual. Some of the powerful features of the residual that motivate its use as a quantity to reflect the presence of faults are their zero-mean (in the absence of fault) and white (independent) properties [46]. These properties are very useful in developing a health monitoring scheme for the AD system of a spacecraft. The innovation sequences of Kalman filters are monitored and a fault signal is generated for a deviation of these properties. 5.3. Failures and Residual Mean Typically, residuals are formed as the sum of two components: the noise which is random with zero-mean and the faults which are deterministic and unknown. Thus the residuals may be considered random variables whose mean is determined by the faults. This leads to formulating the detection problem as testing of the zero mean hypothesis while the isolation problem (diagnosis) as making a decision among a set of alternative hypotheses. In the following sections, the detailed formulation and discussion of both cases are presented. In an ADC system, sensor faults are modeled as additive faults [3], [49]. Additive changes are generally valid since sensor failures tend to occur independently of the dynamic behavior of the system; e.g., a bias that develops in the output signal of the sensor. The equations given next describe the manner in which the failures enter into the system equations. 60 The no-failure (null hypothesisH0) and failure (H{) hypotheses are defined as follows: H0: x(k + 1) = F x(k) + Gw (k) (5.2) z(k) = Ux(k) + \(k) Hx: x(k + \) = ¥ x(k) + Gw (k) (5.3) z(*) = Hx(*) + v(*) + L,St_T.u for ke [k0,kf] and j= 1,2, 6 since we have three observations of attitude angles from the vector sensors and three from the rate gyros. The vector Ly. describes the way the failure enters into the system. Here Sk represents the failure mode, which is assumed to be a unit step function in this study, v is the magnitude of the step failure, which is generally unknown, and r* is the unknown time at which the failure occurs. 5.4. Health Monitoring and FDD Scheme In the previous sections, the role of the Kalman filter in the FDD algorithm design was described and how the sensor failures are modeled which affect the system was studied. It was also discussed how these failures affect the innovation sequences of the Kalman filters. Having discussed these issues, the development of the proposed health monitoring and FDD scheme is presented. Figure 5.1 shows the health monitoring structure developed for fault detection and diagnosis of the AD system of a spacecraft. The FDD module is incorporated in the AD 61 system and it operates after the attitude estimator which is referred to as AD-KF. The AD-KF fuses data from different sensors and generates estimates of the angular position of the spacecraft and the bias-free angular rates from the gyros. Subsequently, the bias-free data are used in the FDD algorithm. The FDD module consists of three phases. First phase: Fault detection, Second phase: Primary isolation and Third phase: Fault diagnosis/identification. Fault detection Fault detection refers to detecting the failure of one or more sensors through the use of anticipated measurements. In the fault detection phase, one Kalman filter is designed to generate all the residuals by using the observed measurements from all sensors. As introduced in Section 4.1, this Kalman filter is termed FDD-KF-1. In this phase, two statistical threshold tests, namely the /-test and the chi-square-test, are applied to the residuals of the Kalman filter and a comparison of their performance is made and discussed. The detailed description and implementation of these tests will be given in Section 5.5 on statistical testing for fault detection. Primary Isolation In the primary isolation phase, the intention is to partly isolate the failure. In other words, in primary isolation it is decided whether the failure is from the vector sensors or from the rate gyros or both. This is performed by designing two filters running in parallel. The first one, which is referred to as FDD-KF-2, is designed to only obtain the measurement 62 Rate Gyro Attitude estimation for recovery when vector sensors fail to Attitude Determination (O to. AD-KF L 4 0 Estimation of Angular Position Sun Sensor & Magnetometer | Sensor Kalman Filter Test Module Sub System Sub System Output > Residual Vector —• Data Flow ——• Recovery Signal Conditional Data Flow Data Monitoring Kalman Filter (FDD-KF-2) Kalman Filter (FDD-KF-1) Kalman Filter (FDD-KF-3) 73 n eg a. c Hypotheses Generator All Flypotheses Hypotheses for Gyro Failures FDD-KF-2, HI FDD-KF-2, H2 H FDD-KF-2, H7 Hypotheses for Vector Sensor Failures i FDD-KF-3, HI • FDD-KF-3, H2 FDD-KF-3, H7 Fault Diagnosis Hypothesis Vector Gyro Residuals Fault Detection Chi-Square Test >e? Yes f-Test >e? Yes No ! No Failure, | Continue Monitoring j Vector Sensor Residuals Angular Velocity estimation for recovery when Gyro sensors fail Primary Isolation t/3 -C C K re H O ST OS e 6 •< o -n Vi a Gyro Sensors GLRT Test Vector Sensor GLRT Test Both Sensors GLRT Test Data flows across red line, only if a Fault is detected Faulty Components are Identified Figure 5.1 The structure of the proposed FDD scheme. data from the rate gyros and thereby generating the residuals of the three rates, and estimating both the angular positions and angular rates. The second filter that is utilized for this phase is called FDD-KF-3 and is responsible for generating the residuals of the three attitude angles; specifically roll, pitch, and yaw, and estimating the angular rates of the spacecraft. Unlike the first filter, this filter merely uses measurement data from the attitude solution of the vector sensors. For example, in the case of failure in one of the rate gyros, the residual of the FDD-KF-2 reflects the failure; however, the FDD-KF-3 residual remains unchanged since it does not make use of the measurements from the gyros. In view of this, it can be identified that the failure source is from the rate gyros. If one of the angle sensors becomes faulty, the second filter triggers an alarm signal thereby identifying that the source of failure is the vector sensors. However in both cases one still cannot specifically isolate the exact sensor that has failed. This configuration of filters allows the source of failure be recognized if it is from the rate gyros, the vector sensors or both, but requires one more step for complete fault isolation. Fault Diagnosis The final stage in the health monitoring scheme for the spacecraft AD system is the fault diagnosis phase in which the faulty components in the AD system are correctly identified. It consists of multiple hypotheses for different failure scenarios. The diagnosis scheme is designed based on the direction of the residual in the residual space for each hypothesis. Therefore, the isolation is performed by comparing the direction of the observed residual with the directions of the hypothesized failures and choosing the most likely scenario. Finding the best match of the present system state from those hypothesized is performed 64 using the Generalized Likelihood Ratio approach. In Sections 5.5, 5.6 and 5.7 the detailed description, implementation and interpretation of this phase are presented. 5.5. Statistical Tests for Fault Detection Fault detection involves application of statistical testing on the residuals for the zero-mean hypothesis. The zero-mean hypothesis represents a no-fault state while the other hypothesis represents the case that the mean is non-zero and fault does exist: H0 : mr = 0 no fault (5.4) Hx: mr^0 fault is present (5.5) Here mr is the mean of residuals in a window of iV observations. Due to the presence of sensors in AD, monitoring the AD system of a spacecraft concerns dealing with random noise and faults together. Accordingly, random noise affects the residuals of the system, and it interferes with the detection and diagnosis of faults. Therefore, a decision process is needed where the residuals can be tested against a threshold or uncertainty region. Usually, because of the unknown and random nature of the sensor noise in the system, this threshold is chosen based on observations, experience and simulation. In statistical threshold testing for fault detection, a statistic is generated that is a function of the residual. It is then compared with a defined threshold to determine whether a failure has occurred. Proper setting of a threshold provides a trade-off between generating false alarms and missing of actual failures. In general, a test can be written as 65 H o if w < e if w > e D = (5.6) H where D is the decision, w is the test statistic and e is the threshold. Since the faults in the spacecraft systems need to be detected online and the performance of the statistical decision procedure is improved if it is based on a series of observations rather than on a single one, data processing is performed over a series of observed records. This means that one set of observation is taken as a window with a constant length, and it is made to slide in real time to obtain a series of observations. In statistical tests it is verified whether or not a failure exists in the interval of interest. In the fault detection stage of this study, two statistical threshold tests, namely the /-test and the chi-square test, are applied on residuals and the results are compared. They both detect the change in the mean of the residuals. The /-test does not require any information on the covariance of the residuals and uses the sample covariance; however, the chi-test utilizes the covariance matrix that has been estimated by the EKFs. In the following sections the description of each test and their implementation procedure in the proposed FDD scheme will be explained. Some numerical results from simulation and the associated detection performance will be discussed in Chapter 6. 5.5.1 The /-test It is known that in the absence of a failure the residual is Gaussian with zero-mean and otherwise, it is Gaussian with mean m. Consequently, the following two hypotheses are defined and the validity of each hypothesis is checked: 66 H0: mr=0 if ti<ei Healthy Mode (5.7) Hx : mr * 0 if *,•>£,• Failure Mode (5.8) Here i is indicative of the number of residuals and their corresponding statistic computed for the observed window, and e is the threshold. The standard procedure for testing the hypotheses (5.7) and (5.8) for N samples of observed residuals using the Mest is to determine the statistic [41] p-mQ ,=wi (5-9) which has a t distribution with 7V-1 degrees of freedom. Here p denotes the sample mean of the residual and S denotes the sample variance. These two quantities are computed as I i=k0+N >' ~ £A <510) The hypothesis H0 is rejected if t > e. Setting of the threshold is done empirically for which the level represents a trade-off between missing the actual failures and generating false alarms. This test is used in the first phase of the health monitoring scheme as shown in Figure 5.1. Each one of the residuals generated from the FDD-KF-1 is examined by this test. In other words, six Mests are carried out on the six residuals. To implement the test, it is required to set a threshold for which the value is a design parameter. It is chosen based on the t 61 distribution table and standard deviation of the noise in the system. In the implementation of this test, two thresholds are used, one for the angle residuals and the other for the rate residuals since the measurement standard deviations are different. Setting the threshold provides a trade-off between missing the actual failures and generating false alarms. Since the noise is statistical, the noise samples whose values are large can occasionally cause the statistic to cross the threshold, thus triggering a false alarm. On the other hand, raising the threshold may delay the detection of true failures. The threshold level therefore represents a tradeoff between the false alarm and the detection rate. In this study, to avoid too many false alarms and at the same time provide a fast and correct detection, the alarm signal is triggered after the statistic consecutively crosses the threshold for a defined period of time. For further detail see Section 6.4. Testing for ten data measurements is considered reasonable as it delays the detection phase by about one second. In Chapter 6, this test will be demonstrated by giving some numerical results. It will be shown that the failures that cause a large jump in the residual are easy to detect. In contrast, if the jump in the residual is small and contaminated with noise, deciding whether a failure has occurred can be quite subtle. The presence of noise implies that in general the detection is not always correct. However, the detection test is required to be as accurate as possible in an appropriate sense. 5.5.2 The chi-square test The chi-square test is a statistical hypotheses testing method that has been used to examine a change in the mean of a random vector. When the underlying noise 68 distribution is normal or can be approximated as such, the detection testing of the residuals may be implemented as a chi-square test. The KF residuals with two useful properties of normal distribution and independence are used to set up a chi-square test for fault detection. In order to describe the chi-square test, the chi-square distribution is briefly explained here for reference. More details can be found in [41]. For a set of independent random variablesx,(k), x2(k),...,xn(k), each having normal distribution with zero mean and unit variance, the distribution obeyed by is referred to as the chi-square distribution with n degrees of freedom. Consider a vectorR(/) = [r,(k),r2(k)... rn(k)]T, whose elements are normally distributed with zero mean and covariance VR . This vector is to be normalized, which can be done by using the transformation wn (k) = x2i (k) + x22 (k) + ... + x2n (k) (5.12) R(k)=\R-U2(k) R(k) (5.13) The resulting vector R(k) has independent elements each with unit variance, since E{R(*) RT(k) }= E{v/2(*)R(*)Rr(*) V-,/2(/c) } = \x-l/2(k)E{R(k)RT(k)}v;]/2(k) (5.14) (5.15) = V -V'(*)V (i)V -"\k) (5.16) = I (5.17) 69 The statistical function /3(k) is formed with vector R(&) as follows: f3(k)= RT(k)R(k) (5.18) = RT(k)\R\k)R(k) (5.19) where /3(k) follows the chi-square distribution with n degrees of freedom. Therefore, testing is preformed on the statistic fl(k) and the detection rule can be considered as two hypotheses as follows: H0 : j3(k) < xa,n Vk Normal Operation (5.20) Hx : /3(k) > xa,„2 3k Faults in the system (5.21) The threshold is obtained from the chi-square distribution table of n+l degrees of freedom with a confidence level of a. A fault signal is generated in case the statistic P(k) is greater than the threshold. While this failure detection technique involves the monitoring of the innovations of a filter [20], [49] it is also applied for checking the consistency of two estimates of the same parameter [4]. The former is used in this study and is referred to as the Residual Chi-Square Test (RCST). The second is referred to as the State Chi-Square Test (SCST) and is different from RCST and is not used in this work. The residual chi-square test (RCST) is applied to monitor the residual of the filters in this study, and it is utilized in different stages of the health monitoring scheme. In the first phase, it is applied on the residuals of FDD-KF-1 to detect failures in the sensors. In the 70 second phase the chi-square test is the test that is applied to the residuals of FDD-KF-2 and FDD-KF-3, which leads to primary isolation. The role of the chi-square test in the health monitoring scheme is basically to generate an alarm similar to the /-test, and it makes no attempt to isolate the failures. In the proposed scheme shown in Figure 5.1, it is implemented in fault detection and also in the preliminary isolation part where the source of failure is identified. In primary isolation, it is decided if the failures are from the gyros, the vector sensors or both. For implementation of the chi-square test, we form a vector R of residuals as R = fo r2 r3 r4 r5 r6]T (5.22) Here, R consists of elements of two different types: rates and angles. Therefore, for test implementation, R is divided into two parts. The first three elements r,, r2, and r3 are the residuals of angular rates along the x, y, and z axes, respectively. »,»=['i h (5.23) As mentioned in Section 5.2, they are formed as the difference between the bias-free measurements of angular rates (from AD-KF) and estimated values from Kalman filters as given by ra> = <*>*-<*> (5.24) 71 and the' second three elements r4, r5, and r6 are residuals of angular positions about the x, y, and z axes, respectively: r0=[r4 r5 r6]T (5.25) where the residuals are rfl=e*-e (5.26) Consequently, the vectors to be monitored in time are formed. These vectors are normalized according to (5.13) where the covariance matrix \R is replaced by \aix3 ( for angular rate residuals) and Ve3x3 (for angular position residuals). The matrix is the covariance of the innovation sequence (r0) which has been estimated by FDD-KF-1 and FDD-KF-2 and is computed from the KF equation (4.35) by where the matrices H and Kdv are set based on what has been described in Section 4.2.7. Similarly, V6^ is the covariance matrix of the innovation sequence (r0) which has been estimated by FD-DKF-1 and FDD-KF-3. Now two statistics (3(k) are generated and compared against the threshold described in Section 5.5.2. Setting the threshold for this test is the same as what was discussed for the £-test in Section 5.5.1. V = H Mk Hr +Rd (5.27) 72 5.6. Hypotheses Testing In the previous sections, the fault detection and primary isolation phases were described in detail and the role of two EKFs (FDD-KF-2 and FDD-KF-3) in the first stage isolation was described. In this section a complete isolation procedure is presented in detail. The purpose of fault diagnosis (fault isolation) is to identify which components, sensors in the present case, are the sources of the occurred fault in the system. Since the presence of some faults in the system was declared in the previous stages, the isolation involves the decision among a set of alternative hypotheses. For this purpose, the multiple hypotheses (MH) testing approach is employed. The premise here is that these failures have been detected by the statistical threshold test and identified primarily by using two filters running in parallel. These filters (FDD-KF-2 and FDD-KF-3) and their structure were discussed earlier in Chapter 4. The MH testing structure utilized in this phase along with its geometrical interpretation, and the distinguishability criterion for the hypotheses will be discussed in following sections. The MH testing approach used for the diagnosis phase in the FDD scheme, for the AD system, is set up based on different fault scenarios. Therefore, each hypothesis corresponds to a fault scenario in the system. For example, hypothesis #1 assumes that the occurred faults in the system correspond to a failure in the roll rate gyro. Subsequently, the observed measurements are processed and tested in order to assign the best matched hypothesis to the state of the system. In other words, a test is conducted to decide which hypothesis is the most likely one by processing the observed data. Consequently, the state of the system is decided based on the maximum likelihood value. In other words, the goal is to decide which of these M hypothesized states of the system 73 (for different types of failures) performs the best in terms of having the maximum likelihood. The formulation and procedure of the test will be discussed later in this section. To formulate the MH method several hypotheses should be stated. Consider the system equations presented previously: H,: x,(£ + l) = Fx,(£) + Gw(£) (5.28) z(k) = H x,(fc) + v(k) + L,Srvl (5.29) where, Hi corresponds to the presence of the z'th fault, for i = 1, 2, ... , M. The matrices F, G and H are system matrices, which have been defined in Chapter 4. The L;, Si and t>(. parameters are chosen to represent the corresponding hypothesis. Consequently, the hypotheses are created using a set of EKFs operating in the presence of failure scenarios. After defining the hypotheses based on the fault scenarios, the next step is to perform the isolation testing. For this purpose, the observations are checked with each hypothesis and the most likely hypothesis is chosen. Here, the assumption is that either a failure exists in the interval of interest or does not; hence, the time at which the failure occurs is not important in this test. To test between hypotheses, the GLR technique is employed [18]. For computation of the likelihood function, the magnitude of the fault should be known, which is not usually the case. Therefore, the magnitude is estimated using the maximum likelihood principle of parameter estimation [41 ]: 74 v = arg max Lx , v \ Hj) (5.30) where £ is the value of the random variable representing the observation sequence and v is the estimate of the failure magnitude. The GLR technique is applied and suitably modified with the residual mean mr as the parameter of interest. Consider the density function where r(t) is the residual sequence from the EKFs. In many cases, it is more convenient to work with the natural logarithm of the likelihood function, logi^., known as the log-likelihood function. The log-likelihood function is defined as follows: Here, the constant value of the function is omitted because it cancels out in the likelihood ratios. While the GLR technique is designed based on the mean of the residual, the mean is an unknown parameter. Therefore, the maximum likelihood principle of parameter estimation should be utilized. Consequently, the GLR procedure consists of two steps: 1. The maximum likelihood estimates of the residual mean are computed, from the observations, under the various hypotheses: / (r(0, m, (0 ) = K exp {-1/2 [r(f) - mr (03'V"1 [r(0 - mr (f)]} (5.31) logZ(r(0,mr(0)=-l/2[r(0-mr(0]'V-,[r(0-mr(0] (5.32) ih,(f) = arg max logZ,(r(0,mr(f) | H,) (5.33) 75 Note that the hypotheses Hi impose geometric constraints on the estimates. 2. Conditional Likelihood functions are computed, with the observations and the various conditional estimates: The overall procedure described above is known as the Generalized Likelihood Ratio (GLR) approach. According to the basic idea of likelihood ratio testing, the most likely fault is selected as the one which yields the highest log-likelihood value. The solution of the log-likelihood function (5.34) is dependant on the nature of the geometric constraint. Considering for each hypothesis that the residual vector takes a th specific direction in the residual space, the residual generator response to the i fault is specified as where pi (t, x) is the / function of the response dynamics and time. It can be interpreted as a failure signature and will be discussed in the next section. Therefore, the response stays on or moves along the straight line defined by ki. Accordingly, the mean of the residual is confined to this line as well: logZ,=logZ(r(0,mri(0) (5.34) rF(t\H,) = XlPl(t,z) (5.35) m,.(/|//,.) = V/(0 (5.36) 76 where ct(t) can be any undefined time function. Equation (5.36) is the geometrical constraint for the maximum likelihood estimation. From the foregoing discussion, it can be understood that the alternative hypotheses can be considered as H,: mr(0 = V,(0 (5.37) The geometric constraint (5.36) is used to compute the maximum likelihood estimation (5.34). For this purpose the constraint (5.36) may be substituted directly into (5.34), so that log L(r(0, mr (t) | H,) = ~[r(t) - X, c, (0]'V"' [r(0 - k, c, (0] (5.38) An estimate of ci (t) can be obtained from aiogL(r(0,mr(Q|^f)=0. dc,(t) as /*T-1 (5.39) ^(0=^,^ r(f) (5.40) Substituting this into (5.36) yields the conditional estimate of the mean as m,.(t\Hi) = Ill,r(t) (5.41) where 77 y;v' (5.42) Finally substituting this back into (5.34) yields the conditional Log-likelihood function as shown below. Note that each hypothesis test in (5.43) produces a likelihood function l(t,i) for the interval of interest. The most likely component to have failed, i*, is the one that produces the largest value of the likelihood function, so that Hence, the most likely hypothesis is activated and thereby the faulty components are isolated. 5.7. Geometrical Interpretation More insight can be gained into the failure isolation procedure presented earlier in the chapter by considering a geometrical interpretation. For the fault isolation phase, a new space called the residual space is defined. The dimension of the residual space is equal to the number of residuals. Each hypothesis that is defined based on a fault scenario, then generates a specific subspace in the residual space. These directions represent the hypothesized fault scenarios, and the number of these subspaces depends on the number of fault hypotheses. Now, by defining such a space with known fault subspaces, the (5.43) z* = arg max/ (t,i) for i= 1,2, ..., M (5.44) 78 residuals are interpreted as an arbitrary subspace (vector) in this space at any time. In other words, for each failure mode, the residual vector takes a unique and fixed direction in the residual space. For example, suppose that we have three residuals that have been affected by a fault as shown in Figure 5.2. A sample of the residual for a selected interval after a failure occurs form a vector in a three dimensional space. The direction of this vector is an indicator of the failed component. Samples from the same failure are collected together and averaged to define a one-dimensional subspace (direction) that is identified with the failure. Different failures are thereby identified with different subspaces or directions. Each subspace is a line passing through the origin. Generally if the failure modes are arbitrary or the filter tries to compensate for the failure hence resulting in a change in the residual behavior, then these subspaces become larger and more complex and it is necessary to find a best curve fit to the data rather than averaging. Given a set of samples of an output residual, consider the orthogonal projection of these samples, or their average, onto all the subspaces representing the failures under consideration. The projected vector with the largest magnitude indicates which of the fault scenarios (hypotheses) is the most probable and thereby indicates the failed component. 79 R1 Figure 5.2 Residual vector samples from different failures in the AD subsystem with 3 sensors. The question now arises as to how distinguishable are any two failures. To answer this, it should be determined how distinguishable the fault subspaces are in the residual space. For this purpose, the angles between the fault subspaces are defined as a distance measure, and therefore the distinguishability of any two failures can be determined by the angle between the failure subspaces. The larger the angle, ranging from 0 to 90 degrees, the more distinguishable are the failures. In this way, the distinguishability of any two failures is thus determined by the angle between the failure subspaces. 5.8. Concluding Remarks In this chapter, the overall structure of the proposed FDD scheme has been described. The scheme consists of three main phases. The first phase is the Fault Detection phase where the presence of any fault is detected by statistical threshold testing. The two tests employed here are the Mest and the chi-square test. In fact the /-test is a simple test which can be applied to any observed data with a prior knowledge of their mean. However, the chi-test is based on the knowledge of the system and on a prior knowledge of the 80 covariance of the residual by pre-processing the data (using EKF). The second phase is the Primary Isolation phase where the decision is made to identify if the failure is from the rate gyros or from the vector sensors or from both. This is performed by applying the chi-square test on the residuals of two EKFs (FDD-KF-2 and FDD-KF-3). After the failure is primarily isolated, the third phase, the Fault Diagnosis/Isolation, is activated where the failure is completely identified. The Multiple Hypotheses technique is employed and the GLR test is applied for fault isolation. In summary, the implementation of the MH algorithm consists of using the sampled residual vector in the interval of interest and computing the log-likelihood values. A bank of 14 extended Kalman filters is used in this process,, where each filter operates based on the assumed failure scenarios. Since the objective of the isolation phase is to decide among the alternative failure hypotheses, only one hypothesis will correctly describe the present state of the system at any time, and this filter will have the maximum likelihood function value. For implementation of the hypotheses test the quantity nr/has to be computed for all the directions of the residuals representing the hypothesized failures, in the interval of interest. This leads to the computation of the log-likelihood function. The log-likelihood function can be compared to a selected threshold for failure detection and it performs identical to the fault detection test. However, it requires the computation of all log£,. whereas the threshold tests only need a single computation of the t or j3k statistics using (5.9) or (5.19), respectively. Statistical threshold testing is therefore used for detection, which reduces the computation complexity and computation time. 81 One important issue in the implementation of the MH algorithm is how the algorithm handles the case when the real system under consideration is nonlinear. In this study, the problem is remedied by using the extended Kalman filter in place of the KF for each hypothesized failure. This requires linearization of the model about different points from the previous estimates. Another consideration is that the quantity V , which is the covariance of the filter residual, indicates how well the filter is tracking. A large value of V indicates that the quantity V"1 is small and in effect flattens the log-likelihood function, which makes it harder to distinguish among the hypotheses. 82 CHAPTER 6 Results and Discussions 6.1. Introduction This chapter presents sample numerical simulations to illustrate the performance of the developed algorithm. After giving values of the system parameters and the initial conditions in Section 6.2, the performance of the attitude estimation in AD is given in Section 6.3. Section 6.4 includes the results to show the performance of the developed FDD algorithm. Three failure scenarios are defined and respective faults are injected into the algorithm. The results are presented in the fault detection, primary isolation and the diagnosis phases under each scenario. Finally, in Section 6.6 some important features of the developed scheme are discussed. 6.2. System Characteristics In this section the parameters that were used in the development of the proposed algorithm are presented. These may be grouped into four types of parameters: 83 Spacecraft Characteristics The spacecraft moment of inertia matrix is given by I =Diag{10,12,2} kg.m2. This specification closely corresponds to the one used in [33]. Simulation Parameters The spacecraft states are propagated using the second-order Runge-Kutta integration procedure. The specifications are: Simulation Time 60 [sec] Integration Step Size 0.001 [sec] Kalman Filter Sampling Time 0.1 [sec] Sensor Model Parameters The sensor outputs are modeled to include bias and white noise of Gaussian type with zero-mean, and the standard deviations given as below [47]: Bias Time Constant T = 300 [sec] Gyros Noise Standard Deviation <JW =0.05 [deg/sec] Vector Sensors Standard Deviation <Je =0.5 [deg] Bias Standard Deviation ob = 0.3 [deg/sec] Initial Conditions The initial conditions of the spacecraft angular positions and angular rates, which are used in simulations are: 84 Angular Positions ^ = 10° , 0 = 10°, 0 = 10' Angular Velocities p =0.005, q =0:005 , r =0.005 [rad/sec] Moments [27] Disturbance Torques (oM = 0.0001) N.m As described in Chapter 4, the states and the covariance matrix of the Kalman filters should be initialized. The error in the initial states is set to be equal to the standard deviations of the measurements. In view of that, the initial states are assumed to be equal to one standard deviation of the measurement from the actual initial conditions. For example, the initial condition for the pitch angle 6 is set to 6 = 10° ±0.5°. The initial covariance matrix for each KF is a diagonal matrix with the squares of the error corresponding to each initial state along the diagonal. For example the covariance matrix is initialized for FDD-KF-1 as given below: As mentioned in Section 4.1.5, one percent of each standard deviation is added to each non-zero element of the covariance matrix to ensure that it remains positive definite. As discussed in Section 4.1.4,Osis a tuning parameter that reflects the uncertainty in the model implemented by the filter. It is tuned when divergence is encountered in the error of the estimated values. Here, is tuned to one. 6.3. Attitude Determination Results To illustrate the performance of the AD-KF filter, the error in the state estimates of the system is presented. Figures 6.1, 6.3 and 6.5 demonstrate the error in the angular positions and Figures 6.2, 6.4 and 6.6 show the error in the estimates of the gyro biases. P0 =Diag{o-/,2, a 2, a 2, o 2, at 9 ' 85 First Gyro Bias Estimate Error 1-abound Figure 6.1 Roll angle error from AD-KF. 0 5 10 15 20 25 30 35 40 45 50 Time (Sec) Figure 6.2 Roll gyro bias estimation error. — Second Gyro Bias Estimate Emi — 1-a bound Figure 6.3 Pitch angle error from AD-KF. 0 5 10 15 20 25 X 35 40 45 50 Time (Sec) Figure 6.4 Pitch bias estimation error. G.15 0.1 d> 0.05 9) X3 " 0 g w -0.05 s CO >- -0.1 r 1 1 1 1 : \ u Yaw Error 8y — 1-abound 0 5 10 15 20253035404550 Time (Sec) Figure 6.5 Yaw angle error from AD-KF. 0.3 _ 0.2 O to « 0.1 D) <D B 0 1 -0.1 -0.2 •0.3 Trird Gyro Bias Estimate Error 1-c bound 0 5 10 15 20 25 X 35 40 45 50 Time (Sec) Figure 6.6 Yaw bias estimation error. 6.4. Fault Detection and Diagnosis Results and Discussion To illustrate the performance of the designed FDD scheme, the program is run for several different scenarios of failure and the results arc presented. As described previously, the objective of the isolation test in this application is to localize the faulty components immediately after a failure occurs; therefore, the interval of interest is considered to be 1 second after a failure occurs. Consequently, samples of the 86 residual from the current state of the system are collected and accumulated for 1 second and are averaged to define a one-dimensional subspace (direction). Next, the obtained direction is compared to the hypothesized failure subspaces. The failures are assumed to be jumps in the output of the sensors. Therefore, they are modeled as a step function. The scenarios [47] that are considered here are as follows: • Scenario 1: Pitch rate gyro fault (q ) A jump of 0.3 deg/sec occurs in the pitch rate gyro output at £=40 sec. • Scenario 2: Roll angle fault ((/>) A jump of 5 deg occurs in the output of the roll angle sensor at t = 40 sec. • Scenario 3: Fault in both yaw rate from rate gyro and pitch angle from vector sensors (r & 9 ) Jumps of 0.3 deg/sec and 3 deg occur in the measurements of the yaw rate and pitch angle, respectively, at t = 40 s. Note that the time of the failure is selected arbitrarily, but such that the system has been stabilized, which is usually less than 10 seconds (Figures 6.7 and 6.8). These failures are summarized in Table 6.1. 87 Table 6.1 Specifications of failure scenarios. Fault to the system Faulty Component Magnitude Time Scenario 1 Pitch rate gyro ( q ) 0.3 deg/sec 40 sec Scenario 2 Roll sensor ((j)) 5 deg 40 sec Scenario 3 Yaw rate gyro (r) 0.3 deg/sec 40 sec Pitch sensor (9 ) 3 deg 40 sec The program is run according to the assumed failure scenarios and results for each phase of the FDD scheme are shown. The thresholds for /-test and chi-square test are set as given in Table 6.2. Table 6.2 Threshold values used in statistical tests. Residuals Threshold /-test Angular position 3.0 Angular rate 3.0 Chi-Square Test Angular position 1.06 Angular rate 0.12 It is important to mention that the thresholds are obtained empirically by considering the accuracy of the sensors and statistical tables. The observation window for both /-test and chi-square test is 30 observations. As described in Section 5.5.1, in order to avoid high false alarm signals in the developed algorithm, several numbers of crossing times from 5 to 15 samples were tried as a fine tuning process, and 10 was found to be reasonable. Therefore, the residue that remains above the threshold is verified for 10 samples before declaring the presence of a fault. This process delays the detection phase by about one second. Prior to application of the failure scenarios, the filter response when the system operates in a healthy mode is presented for reference. For brevity, only the simulation results from FDD-KF-1 are presented here. 88 Figures 6.7, 6.8, 6.9 and 6.10 demonstrate the behavior of the system in the healthy mode. Figures 6.7 and 6.8 show the tracking performance of the filter (FDD-KF-1). Time[sec] Time[sec] Time[sec] Figure 6.7 Angular rate errors of FDD-KF-1 in healthy mode. Time[sec] Time[sec] Figure 6.9 Angular rate errors of FDD-KF-1 in healthy mode. 89 Time[sec] Time[sec] Time[sec] Figure 6.10 Angular position residuals of FDD-KF-1 in healthy mode. It is observed that the filter performs properly, since the errors are within the standard deviation bounds that have been estimated by KF. Note that the rate gyro standard deviations of 0.05 deg /sec have decreased to the steady state values of 0.003 deg/sec, 0.0025 deg/sec, and 0.007 deg/sec for the roll, pitch and yaw rates, respectively. This is also true for the angle measurement standard deviations. They decrease from 0.5 deg to approximately 0.09 deg. Note that all the residuals are of zero-mean and white when a fault is not present. 6.4.1. Fault detection The algorithm was run for the three scenarios presented earlier. The residuals and threshold test results are given under each fault scenario. • Scenario 1 The specification of the first scenario can be found in Table 6.1. Figures 6.11 and 6.12 show the rate and angle residuals from FDD-KF-1, respectively. 90 Roll Rate Residuals Pitch Rate Residuals Yaw Rate Residuals Figure 6.11 Angular Rate Residuals of FDD-KF-1 for failure scenariol. Roll Residuals Pitch Residuals Yaw Residuals Figure 6.12 Angular Position Residuals of FDD-KF-1 for failure scenariol. The mean of pitch rate residual changed significantly whereas the mean of pitch and yaw angle residuals are changed slightly for this scenario. Figure 6.13 shows the t statistic calculation for each residual and its threshold. Mest on Angular Rate Residuals Mest on Angular Position Residuals 30\- 1 — Roll Rate T Test Pitch Rate T Test Yaw Rate T test 0I A^t'vste.Xfn*. 0 10 20 30 40 50 Yaw Angle T Test Pitch Angle T Test [1 . Roll Angle T test Figure 6.13 Mest on FDD-KF-1 residuals in fault detection phase-Scenario 1. At / =41.5 seconds the statistic crosses the threshold for the first time and the algorithm declares a fault. Figure 6.14 shows the results for the chi-square test. 91 Chi-square Test on Angular Rate Residuals Chi-square Test on Angular Position Residuals Time[sec] Time{sec] Figure 6.14 Chi-square test on FDD-KF-1 residuals in fault detection phase-Scenario 1. It shows that the value of the statistic /? jumps and crosses the threshold at t = 40.4. By comparing the graphs in Figures 6.13 and 6.14, it is noted that the chi-square test can detect the presence of a fault faster than using the Mest. • Scenario 2 The specification of the second scenario can be found in Table 6.1. Figures 6.15 and 6.16 show the behavior of the residuals in the case of fault in the roll angle measurements. Roll Rate Residual Pitch Rate Residual Yaw Rate Residual Time[sec] Time[sec| Time[sec] Figure 6.15 Angular Rate Residuals of FDD-KF-1 for failure scenario 2. 92 Roll Residual Pitch Residual Yaw Residual Timefsec] Timefsec] Tlme[sec) Figure 6.16 Angular Position Residuals of FDD-KF-1 for failure scenario 2. When a fault occurs and affects the roll angle measurement, the mean of the roll angle residual changes significantly, while the yaw angle change is less significant. Also, the roll rate and pitch angle residuals show slight changes. As shown in Figures 6.17 and 6.18, statistical tests detect the fault in the system at 41.5 sec and 40.4 sec. Figure 6.17 Mest on FDD-KF-1 residuals in fault detection phase-Scenario 2. Chi-square Test on Angular Rate Residuals Chi-square Test on Angular Position Residuals ' !| 1 1 1 8 ---!_ J-l \ _ AJ 1 1 1 1 I 1 20 30 Timefst 20 30 40 Time[sec] Figure 6.18 Chi-square test on FDD-KF-1 residuals in fault detection phase-Scenario 2. 93 • Scenario 3 In the third scenario (Table 6.1), two simultaneous faults occur in the system. Both yaw rate and pitch angle measurements become faulty. Figures 6.19 and 6.20 demonstrate the residual behavior and Figures 6.21 and 6.22 show that the fault is detected. Roll Rate Residual Pitch Rate Residual Yaw Rate Residual Timefsec] Time{sec] Time(sec] Figure 6.19 Angular Rate Residuals of FDD-KF-1 for failure scenario 3. Roll Residual Pitch Residual Yaw Residual Figure 6.20 Angular Position Residuals of FDD-KF-1 for failure scenario 3. 94 Chi-square Test on Angular Rate Residuals Chi-square Test on Angular Position Residuals Time{sec] Timefsec] Figure 6.22 Chi-square test on FDD-KF-1 residuals in fault detection phase-Scenario 3. At this point, the fault signal generated in the fault detection phase is passed on to the primary isolation module. 6.4.2. Primary isolation As described in Section 5.4, in primary isolation, it is decided whether the failure is from the vector sensors, the rate gyros or from both. Figures 6.23, 6.24 and 6.25 present the results of the chi-square tests for making this decision. • Scenario 1 Test on Angular Rate Residuals From FDD-KF-2 Test on Angular Position Residuals From FDD-KF-3 0.5. I o 10 — CH Square Test I Rate Tfresruld | i —V^cr 7 i i i ii 20 30 40 Timefsec] 20 30 40 Timefsec] so 50 (ii) HO 1 5, I 0.5 0.5 P oi 10 10 t r— - Ori Square Test Angle Trreshotd i i i i i i i i i i ---+-• i — i 1 , 20 30 40 Timefsec] 20 30 40 Timefsec] 50 50 HO 60 Figure 6.23 Primary isolation in failure scenario 1. 95 • Scenario 2 0.2 | °'15 "35 I °-1 55 a 0.05 0, 0 1 0.5 Test on Angular Rate Residuals From FDD-KF-2 Chi Square Test i Rate Threshold ; l 1 i I I i i i •"| 10 10 20 30 Time[sec] 40 50 60 20 30 40 Time[sec] 50 60 Test on Angular Position Residuals From FDD-KF-3 20 | 15 | 10 d 5 i 1 •> ILL o 0.5 - - Chi Square Test i Angle Threshold • - i— 1- A L. I l i i i I I I IJ I I I il iiii/ , , , ,1 V 10 10 20 30 40 Time[sec] 50 20 30 Time[sec] 40 50 60 60 Figure 6.24 Primary isolation in failure scenario 2. • Scenario 3 Test on Angular Rate Residuals From FDD-KF-2 Test on Angular Position Residuals From FDD-KF-3 To Ch Square Test Ffete Thresrrtd I. A • _ _ _ __—1_ I 1 1 1 ll J J ) 1 0.5 ! 0 2fJ 30 40 Time[sec] 20 30 40 Time[sec] 50 50 60 60 Ch Sqi ere Test I \ Aicje Trresrctd j |_ tL 1 , 1 i -i i i i • - 1 irV""J i 0.5 E o-10 20 30 Time[sec] 30 40 Time[sec] 50 60 ML 60 Figure 6.25 Primary isolation in failure scenario 3. In failure scenario 1, only the /? statistic for the rate residuals reacts to the fault, thus triggering the flag showing that the fault source is from the gyros. Similarly, the triggered flag reveals that the fault is from the angle measurements in the failure scenario 2 or from both in the failure scenario 3. 96 6.4.3. Diagnosis/Isolation Figure 6.26 shows the likelihood functions for all activated hypotheses, computed for each failure scenario. Based on the information from the primary isolation module, the required set of hypotheses is activated. Scenario 1 Scenario 2 Figure 6.26 Likelihood functions for hypotheses testing. The left graph in Figure 6.26 shows that only the rate angle hypotheses have been activated while in the right graph, the hypotheses for the angle faults have been activated. The GLR test was performed on the angular rate residuals from FDD-KF-2 and the angular position residuals from FDD-KF-3 for hypotheses testing. Figure 6.27 shows the likelihood functions when both sets of hypotheses were activated. Scenario 3 0.012, 1 1 1 . 1 1 — , , • . 1 . H1 H2 H3 H4 H5 H6 H7IH8 H9 H10H11H12H13H14 Figure 6.27 Likelihood functions for all hypotheses in failure scenario 3. 97 The most likely hypotheses in each set were activated. Hypothesis Hi states that the yaw rate gyro measurements are faulty and Hl0 represents a fault in the roll sensor measurements. 6.4.4. Timing of FDD steps To illustrate the time duration of each phase for fault detection and isolation scheme, the time in which a fault is detected, primarily isolated and completely diagnosed is presented in Figure 6.28. These results are for scenario 1 and they are representative of the other scenarios. "T r 1 Diagnosis Duration 0.05 s Primary Isolation i r Data Monitoring ii Fault Occurs at 40 s Fault Detected at 40.4 s i Primarily Isolated at 41.4 s 39 39.5 40 40.5 41 41.5 42 Figure 6.28 Timing of FDD phases. 6.5. Distinguishability in Fault Isolation As described in Section 5.7, the correct isolation depends on the distinguishability of fault signatures. The distinguishability can be determined by the angle between the failure subspaces. In the residual space, two hypotheses vectors are more distinguishable when the angle between them is closer to 90 degrees. So the larger the angle, the more 98 distinguishable is the failure scenario. The angle representing the degree of distinguishability can be calculated as where Vx and V2 are the failure signature vectors and 0 is the angle between these vectors. Table 6.3 Distinguishability of failure signatures for rate gyros. Hi Roll rate gyrop Pitch rate gyro q Yaw rate gyro r p&q p&r q & r p & q& r H, Roll rate gyro p 0 85 88 48 88 44 56 H2 Pitch rate gyro q 85 0 88 48 46 88 56 H3 Yaw rate gyro r 88 88 0 88 47 45 57 H4 p&q 48 48 88 0 62 61 36 H5 p&r 44 88 45 61 61 0 36 H6 q & r 88 46 47 62 0 61 36 H7 p & q & r 56 56 57 36 36 36 0 Table 6.4 Distinguishability of failure signatures for vector sensors. //, Yaw Sensor y/ Pitch Sensor 6 Roll Sensor (j> y/&0 y/&<f> y/&0&<p //, Yaw Sensor y/ 0 74 85 38 88 47 54 H, Pitch Sensor 6 74 0 86 38 47 88 54 H10 Roll Sensor (j) 85 86 0 87 48 48 53 H„ y/&0 38 38 87 0 56 57 35 Hn If/&<p 47 88 48 57 64 0 35 Hu e&<f> 88 47 48 56 0 64 35 H14 54 54 53 35 35 35 0 Table 6.3 shows the degrees of distinguishability between the sampled residual vector of the failure in component (rate gyro) i and the other seven failure signatures in the rate 99 gyros, where each signature corresponds to particular single or simultaneous failures in the rate gyros. For instance, if the faulty component is the roll rate gyro, (measuring angular rate about the x axis), then all the rows under the p column are angles between the roll rate gyro failure residual and the other signatures. Similarly, Table 6.4 shows the degrees of distinguishability between the failure signatures of the vector sensors. The angles shown in these tables imply that failures in the six components are distinguishable, which is consistent with the results obtained by using the isolation procedure. The primary isolation phase leads us to better and faster isolation, even in conditions where both gyros and vector sensors are faulty. Tables 6.3 and 6.4 reveal that the minimum distinguishability for the gyro failures is 36 degree and the minimum distinguishability in the vector sensor failures is 35 degrees. However, as shown in Table 6.5, if the failures are not primarily isolated, the degree of distinguishability drops to 12 and 13 degrees (approximately one third of the former) for the minimum distinguishable hypotheses. Table 6.5 demonstrates that the failure signatures of the rate gyros and the vector sensors become less distinguishable. For instance, the distinguishability of 12 degrees, where both roll sensor and yaw rate gyro fail, may lead to an incorrect decision. Besides, it is necessary to emphasize that without having the primary isolation phase in the FDD scheme, it would be more difficult to isolate the faulty components. For 6 f6\ example, for up to 6 simultaneous faults, ]T vector combinations should be compared with each other and consequently, 63 likelihood functions should be computed. Aside from the extensive computation needed in this method, which results in a delay in complete isolation, it would also lead to many indistinguishable situations. 100 Table 6.5 Distinguishability of failure signature for all failure hypotheses in the absence of the Primary Isolation phase. Roll rate gyro p Pitch rate gyro q Yaw rate gyro r p&q p&r q & r p&q &r Yaw Sensor w Pitch Sensor 0 Roll Sensor $ y/&6 y/&<}> 6>&<z> y/&6 8i(p 0 85 88 48 44 88 56 20 89 80 51 32 88 53 85 0 88 48 88 46 56 85 18 78 47 84 30 49 88 88 0 88 45 47 57 74 71 17 76 59 63 70 48 48 88 0 61 62 36 40 44 75 12 46 49 22 44 88 45 61 0 61 36 62 80 37 72 16 67 46 88 46 47 62 61 0 36 83 63 33 71 63 17 43 56 56 57 36 36 36 0 62 65 39 48 30 34 13 20 85 74 40 62 83 62 0 74 85 38 47 88 54 89 18 71 44 80 63 65 74 0 86 38 88 47 54 80 78 17 75 37 33 39 85 86 0 87 48 48 53 51 47 76 12 72 71 48 38 38 87 0 57 56 35 32 84 59 46 16 63 30 47 88 48 57 0 64 35 88 30 63 49 67 17 34 88 47 48 56 64 0 35 53 49 70 22 46 43 13 54 54 53 35 35 35 0 Hi Roll rate gyro p Pitch rate gyro q Yaw rate gyro r p&q p&r q & r p &q & r Yaw Sensor y/ Pitch Sensor 6* Roll Sensor <p y/&0 yy&<p y/&0&<p 6.6. Important Features As mentioned in Section 2.4, recovery is possible when at least one set of sensors (either rate gyros or vector sensors) is in healthy operation. Since the states in the dynamic equations are coupled, the whole residuals of the Kalman filter in the detection module (FDD-KF-1) are affected by any single fault in the system, thereby leading to incorrect estimation of the system states. The Kalman filters in the primary isolation module decouple the residuals of the rates and the angles and provide the correct estimation of the attitude in the presence of a fault. Figure 6.29 illustrates the error of the pitch rate gyro while a fault occurred at r=40 sec. The filter (FDD-KF-3) that is not affected by fault provides an accurate estimation to track the actual values as shown in Figure 6.30. 0.05 ,x 10" CD -0.05 -0.1 -0.15, I I I I I II I f I I From FDD-KF2 \ From FDD-KF3 i \ 1-CT bound \ 10 20 30 40 Time[sec] 50 60 Figure 6.29 Pitch rate error in the presence of fault and the accurate estimation of it for recovery. CD 2 cn B) CD a o LU -2 -6 — Pitch Rate Errors q i i ^--t i i i1-abound ——L _ ) 10 20 30 40 50 Time[sec] Figure 6.30 Pitch rate estimation error. 60 Adjusting the thresholds for statistical tests affects the sensitivity of the fault detection and primary isolation phases. The threshold values arc summarized in Table 6.2 to achieve maximum sensitivity with minimum false alarm signal. It is shown that when the failure is so small that it is dominated by the sensor noise, it cannot be detected. Hence, 102 as long as the failure magnitude is within one standard deviation of measurement data, it is undetectable. Figure 6.31 compares the pitch rate gyro residual in three different fault magnitudes. It shows that the statistical tests can detect the faults which have a minimum magnitude of twice the size of the noise standard deviation. Figure 6.32 shows the chi-square test results on the pitch rate residuals for those three cases. No Fault Detected Minimum Fault Detected Ordinary Fault Detected 30 40 Time[sec] 10 20 30 Tlme[sec] 20 30 Time[sec] Pitch Rate Sensor-0.05 [deg/sec] Step Fault Pitch Rate Sensor-0.1 [deg/sec] Step Fault Pitch Rate Sensor-0.3[deg/sec] Step Fault Figure 6.31 Pitch Rate residuals of FDD-KF-1 in Different Fault Magnitude. Time[sec] Time[sec] Time[sec] Figure 6.32 Fault Detection Chi-Square test results. As described in Section 5.6, each fault is a unique direction in the residual space, and the likelihood parameter estimation technique is utilized to estimate the unknown magnitude of the fault in the system. To show the results, two fault signals with small and large magnitudes are inserted into the system. Figure 6.33 shows the chi-square and GLR test 103 results for these different fault magnitudes. The left graphs in Figures 6.33 show the results when the roll rate gyro and the yaw rate gyros have failed simultaneously with a fault magnitude of 0.2 and 0.5 deg/sec, respectively. The graphs on the right hand side of Figure 6.33 show the results when these faults magnitudes increase to 4 (20 times the former magnitude) and 2 (4 times the former magnitude) deg/sec for the roll and yaw rate gyros, respectively. The GLR test diagnosed that the closest hypotheses to the occurred fault is Hs, meaning the faulty components are the roll and yaw rate gyros. Roll Rate step Fault = 0.2 [Deg/sec] & Roll Rate step Fault = 4 [Deg/sec] & Yaw Rate step Fault = 0.5 [Deg/sec] Yaw Rate step Fault = 2 [Deg/sec] Figure 6.33 Chi-square and GLR test results for different fault magnitudes. 104 CHAPTER 7 Conclusion 7.1. Conclusion Spacecraft systems need more autonomy on board to detect and isolate the occurrence of failures and effectively handle their operation in the presence of faults and failures in sensors, actuators, and other components. The objective of this research was to design a health monitoring scheme to detect and isolate failures in the Attitude Determination (AD) system sensors. The AD system is a key component of the spacecraft attitude control system, and improvements to its accuracy and reliability contribute directly to the success of the spacecraft mission. An integrated AD system was developed for data collection. It consisted of rate gyros and vector sensors (Sun sensor and magnetometer). Data fusion for attitude determination was performed by designing a linearized Kalman filter that estimated the biases of the rate gyros as well as the states. By this means the biases were removed from the 105 measurements and the bias-free measurements were then used in the FDD scheme. The FDD algorithm is a model-based state estimation approach, combining information from the rotational dynamics and kinematics of a spacecraft with sensor measurements to predict future sensor outputs. The residual, or the difference between the predicted and actual measurements, was monitored by means of several statistical tests (e.g., /-test and chi-square test) to detect the presence of a failure and to localize failures in all sensors present in AD. The isolation procedure was developed in two phases. First, the source of fault was verified. Two extended Kalman filters were designed in this phase to use subsets of measurements and to provide estimates of the states. Thus, it was determined if the fault was from the rate sensor, the angle sensor or both. The next phase of isolation was performed based on multiple hypotheses testing. Multiple extended Kalman filters were run in parallel to form fault signatures, which were used to develop different hypotheses. Generalized likelihood ratio test was utilized to identify the faulty components. The developed FDD scheme was simulated and different fault scenarios were introduced to the scheme. The measurement data were generated by adding noise and biases to the outputs of a mathematical model of the motion of the spacecraft. Based on the results of three sample scenarios presented in this thesis, the proposed scheme could perfectly detect and isolate the faulty components. The advantage of having primary isolation in the proposed scheme was the reduction in the number of hypotheses to a quarter of what would have been normally needed. This contributes directly to fast isolation of the faulty components. In addition, by primarily isolating the faults, the hypotheses are approximately three times more distinguishable. Another important feature of this 106 scheme is that recovery is possible even if only one set of sensors (either rate gyros or vector sensors) is in healthy operation. The extended Kalman filters in the primary isolation phase decouple the residuals of the rates and the angles and provide the correct estimate of the attitude in the presence of faults. Furthermore, the results showed that the statistical tests could detect those faults which had a minimum magnitude of twice the size of the sensor noise standard deviation. Furthermore, the FDD algorithm is readily expandable to include monitoring of more number of sensors in the system. 7.2. Main Contributions The main contributions of this thesis are summarized below: • An attitude estimation algorithm was developed, which accurately estimates the sensor biases as well as the attitudes. It prevents the accumulation of the errors over time which otherwise would lead to the declaration of fault when no failure actually occurred. • A new FDD scheme for on-line detection and diagnosis of faults in the AD system was developed. The scheme accepts raw sensor data as inputs and automatically generates fault signatures in the form of residual vectors. The faults are isolated in two phases. It was shown by using several examples that the method was able to detect faults, was generally robust to false alarms, and requires few hypotheses to diagnose a fault. Fast isolation of faulty components and more distinguishable failure signatures were achieved by designing the primary isolation phase. In addition to fault detection and diagnosis, the developed scheme was able to provide attitude estimation when one set of sensors 107 was operating properly. The developed scheme is expandable to include fault detection and diagnosis of additional sensors in the system. • The system model and the scheme developed in the thesis lay the ground for development of plans for reconfiguration and recovery from failure of spacecraft. 7.3. Recommendations for Future Research One immediate step that should be considered is testing of the AD and FDD schemes with real data from sensors. This can be carried out for AD by fine tuning the nonlinear model with real data to ensure that the mathematical model is a reliable representation of the actual system. For instance, a neural network can be implemented to identify the discrepancies (in terms of modeling errors and unmodeled dynamics, etc.) between the actual model and the mathematical model. Another step is to test the health monitoring scheme with data containing the actual failures, and reconfigure/adjust the designed algorithms accordingly. This research can be extended in different ways. One important addition to the scheme can be a fault accommodation and resolution phase that will lead to reconfiguring the system to compensate for the identified failure and thereby tolerating faults in the system. Furthermore, an expert supervisory control algorithm can be developed to integrate the FFD scheme into the closed-loop control system of the spacecraft, and the resulting performance should be studied. For this purpose, different features of the FDD algorithms that affect the control laws and vice versa should be taken into account. 108 Bibliography 1. Axerrad, P. and Behre, CP., "Satellite attitude determination based on GPS signal-to-noise ratio," Proceedings of the IEEE, Vol. 87, No. 1, pp.133-144, January, 1999. 2. Bar-Shalom, Y., Li, X. R. and Kirubarajan, T., Estimation with Applications to Tracking and Navigation, Wiley-Interscience, New York, NY, 2001. 3. Betta, G.; Pietrosanto, A., "Instrument fault detection and isolation: state of the art and new research trends," IEEE transactions on Instrumentation and Measurement, Vol. 49, No. 1, pp. 100-107, February, 2000. 4. Brumback, B. D. and Srinath, M. D., "A chi-square test for fault detection in Kalman filters," IEEE Transactions on Automatic Control, Vol. AC-32, No. 6, pp. 552-554, June, 1987. 5. Carroll, K.A., Zee, R.E. and Matthews, J., "The MOST microsatellite mission: Canada's first space telescope," Proceeding of 12th AIAA/USU Conference on Small Satellites, Logan, Utah, pp.1-19, 1998. 6. Cikanek, H. A., "Space shuttle main engine failure detection," IEEE Control Systems Magazine, Vol. 6, No. 3, pp.13-18, June, 1986. 7. Da, R., "Failure detection of dynamical systems with state chi-square test," AIAA Journal of Guidance, Control, and Dynamics, Vol. 17, No. 2, pp.271-277, 1994. 109 8. Da, R. and Lin, C. F., "Failure diagnosis using the state chi-square tests and the ARTMAP neural networks," Proceedings of the American Control Conference, Seattle, Washington, Vol. 5, pp.3279-3283, June, 1995. 9. Da, R. and Lin, C. F., "Sensor failure detection with a bank of Kalman filters," Proceedings of the American Control Conference, Seattle, Washington, Vol. 2, pp.1122-1126, June, 1995. 10. Elmadbouly, E. and P. M. Frank, "Robust instrument failure detection via luenberger observers," CIGRE Symposium on Control applications for Power System Sensitivity, Florence, Italy, pp. 1-6, 1983. 11. Farrenkopf R.L., "Analytic steady-state accuracy solutions for two common spacecraft attitude estimators," Journal of Guidance and Control, Vol. 1, July-August, pp. 282-284, 1978. 12. Fortescue, P.W. and Stark, J. and Swinerd, G., Spacecraft Systems Engineering, J. Wiley, New York, 2003. 13. Frank, P.M., "Fault diagnosis in dynamic systems using analytical and knowledge-based redundancy," Automatica, Vol. 26, No. 3, pp.459-474, 1990. 14. Franklin, G.F., Powell, J.D. and Workman, M., Digital Control of Dynamic Systems, Addison Wesley Longman, CA, 1998. 15. Gebre-Egziabher, D., Elkaim, G.H., Powell, J.D., and Parkinson, B.W., "A gyro-free quaternion based attitude determination system suitable for implementation using low cost sensors," Proceedings of the 2000 IEEE Position Location and Navigation Symposium, Gaithersburg, Maryland, pp.185-192, March 12-16, 2000. 110 16. Gebre-Egziabher, D., Hayward, R. C. and Powell, J. D., "Design of multi-sensor attitude determination systems", IEEE Transactions on Aerospace and Electronic Systems, Vol.40, No.2, pp.627-649, April, 2004. 17. Gertler, J.J., "Survey of model-based failure detection and isolation in complex plants," IEEE Control Systems Magazine, Vol. 8, No. 6, pp.3-11, 1988. 18. Gertler, J.J., Fault Detection and Diagnosis in Engineering Systems, Marcel Dekker, Virginia, 1998. 19. Grewal, S.M. and Andrews, A.P., Kalman Filtering: Theory and Practice Using MA TLAB, Wiley Interscience, New York, 2001. 20. Hajiyev, Ch. and Caliskan, F., "Sensor/actuator fault diagnosis based on statistical analysis of innovation sequence and robust Kalman filtering," Aerospace Science and Technology, Vol. 4, No. 6, pp.415-422, 2000. 21. Iserman, R., "Process fault detection based on modeling and estimation methods-a survey," Automatica, Vol. 20, No. 4, pp. 387-404, 1984. 22. Iserman, R., "Fault diagnosis of machines via parameter estimation and knowledge processing," Automatica, Vol. 29, No. 4, pp.815-835, 1993. 23. Iserman, R., "Model based fault detection and diagnosis methods," Proceedings of the American Control Conference, Seattle, Washington, Vol. 3, pp.1605-1603, June, 1995. 24. Isermann, R., "On fuzzy logic applications for automatic control, supervision, and fault diagnosis," IEEE Transactions on Systems, Man and Cybernetics, Part A, Vol. 28, No. 2, pp.221-235, March, 1998. 25. Iserman, R. and Ulieru, M., "Integrated fault detection and diagnosis," IEEE/SMC Conference "Systems Engineering in the Service of Humans ", Le Touquet, France, Vol. 1, pp.743-748, 17-20 October, 1993. 26. Kaplan, M.H., Modern Spacecraft Dynamics and Control, John Wiley & Sons, New York, 1976. 27. Kim, Y. H., Park, Y., Bang, H. and Tahk, M.J., "Covariance analysis of spacecraft attitude control system." Proceedings of 2003 IEEE Conference on Control Applications, Vol. 1, pp.480-485, June, 2003. 28. Khoshzaban-zavarehi, M., Online condition monitoring and fault diagnosis in hydraulic system components using parameter estimation and pattern classification, Ph.D. Dissertation, University of British Columbia, Vancouver, BC, Canada, October, 1997. 29. Lefferts, E.J., Markley, F.L. and Shuster, M.D., "Kalman filter for spacecraft attitude estimation," Journal of Guidance, Control, and Dynamics, Vol. 5, No. 5, pp.417-429, Sept.-Oct, 1982. 30. Leonard, J. A. and Kramer, M. A., "Diagnosing dynamic faults using modular neural nets," IEEE Expert, Vol. 8, No. 2, pp 44-53, April, 1993. 31. Markley, F. L., "Attitude determination using vector observations and the singular value decomposition," Journal of the Astronautical Sciences, Vol. 36, No. 3, pp. 245-58, July-September, 1988. 32. Mehra, R., Seereeram, S., Bayard, D. and Hadaegh, F., "Adaptive Kalman filtering, failure detection and identification for spacecraft attitude estimation," Proceedings 112 of the 4th IEEE Conference on Control Applications, Albany, NY, pp.176-181, September, 1995. 33. Mehra, R., Rago, C. and Seereeam, S., "Autonomous failure detection, identification and fault-tolerant estimation with aerospace applications," Proceedings of IEEE Aerospace Conference, Snowmass at Aspen, CO, Vol. 2, pp. 133-138, March, 1998. 34. MOST: Canada's First Space Telescope, August 2005, <http://www.astro.ubc.ca/MOST/science.html> 35. Oshman, Y. and Markley, F.L., "Spacecraft attitude/rate estimation using vector-aided GPS observations," IEEE Transactions on Aerospace and Electronic Systems, Vol. 35, No. 3, pp.1019-1032, July, 1999. 36. Palma, L., Coito, F. and Silva, r., "A combined approach to fault diagnosis in dynamic systems, application to the three-tank benchmark," Intelligent Control systems and Optimization, Vol. 1, pp.163-171, August, 2004. 37. Patton, R. J., "Fault detection and diagnosis in aerospace systems using analytical redundancy," Computing and Control Engineering Journal, Vol. 2, No. 3, pp.127-136, May, 1991. 38. Patton, R.J., Lopez-Toribio, C.J. and Uppal, F.J., "Artificial intelligence approaches to fault diagnosis," TEE Colloquium on Condition Monitoring: Machinery, External Structures and Health, Birmingham, pp. 5/1-518, April, 1999. Ribbens, W. B., "A mathematical model based method for diagnosisng failures in automotive electronic systems," SAE Transactions, Vol. 100, 1991. 113 39. Ribbens, W. B., "A mathematical model based method for diagnosisng failures in automotive electronic systems," SAE Transactions, Vol. 100, 1991. 40. Rimrott, F.P.J., Introductory Attitude Dynamics, Springer-Verlag, New York, 1989. 41. Sachs, L., Applied Statistics: a Handbook of Techniques, Springer-Verlag, New York, 1982. 42. Satin, A.L. and Gates, R.L., "Evaluation of parity equations for gyro failure detection and isolation," Journal of Guidance and Control, Vol. 1, pp. 14-20, 1978. 43. Sidi, M.J., Spacecraft Dynamics and Control: A Practical Engineering Approach, Cambridge University Press, Cambridge, 2000. 44. Sobhani Tehrani, E., Khorasani, Kh. and Tafazoli, S., "Dynamic neural network-based estimator for fault diagnosis in reaction wheel actuator of satellite attitude control system," International Joint Conference on Neural Networks, Quebec, Montreal, 2005. 45. Tafreshi, R., Sassani, F., Ahmadi, H. and Dumont, G., "Local discriminant bases in machine fault diagnosis using vibration signals," Journal of Integrated Computer-aided Engineering, Vol. 12, No. 2, 2005. 46. Technical Staff, Analytic Sciences Corporation, Edit by Gelb, A., Applied Optimal Estimation, Cambridge, Mass., M.I.T. Press, 1974. 47. Venkateswaran, N., Siva, M. S. and Goel P. S., "Analytical redundancy based fault detection of gyroscopes in spacecraft applications." Acta Astronautica, Vol. 50, No. 9, pp. 535-545, 2002. 114 48. Wahba, G., "A least-squares estimate of spacecraft attitude," SI AM Review, Vol. 7, No. 3, July, p. 409, 1965. 49. Willsky, A.S., "A Survey of Design Methods for Failure Detection in Dynamic Systems," Automatica, Vol. 12, No. 6, pp. 601-611, 1976. 50. Zarchan, P., Musoff, H., Fundamentals of Kalman Filtering: A Practical Approach, American Institute of Aeronautics and Astronautics, Reston, Virginia, 2000. 115
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Fault detection and diagnosis in a spacecraft Attitude...
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
Fault detection and diagnosis in a spacecraft Attitude Determination system Pirmoradi, Fatemeh 2005
pdf
Page Metadata
Item Metadata
Title | Fault detection and diagnosis in a spacecraft Attitude Determination system |
Creator |
Pirmoradi, Fatemeh |
Date | 2005 |
Date Issued | 2010-01-06T00:32:53Z |
Description | Spacecraft systems need increased on board autonomy to detect the occurred faults (e.g., faults in sensors and actuators), isolate the faulty components, and effectively handle their operation in the presence of such faults. In this research a scheme of fault detection and diagnosis is developed for spacecraft Attitude Determination (AD) sensors along with an algorithm for attitude determination. These together can provide a significant degree of autonomy since faults can be handled without ground interaction and intervention. The attitude determination system is a key component of the attitude control system of a spacecraft. Hence, improvements to its accuracy and reliability contribute directly to its performance and the success of the spacecraft mission. An integrated AD system that includes rate gyros and vector sensors (Sun sensor and magnetometer) is developed. Measurement data from all sensors are fused by utilizing a linearize Kalman filter, which is designed based on system kinematics, to provide attitude estimation and the values of gyro bias. The designed estimator is shown to provide more accurate estimates of the attitude angles than the measurements obtained directly from sensors. This results in the removal of erroneous sensor measurements, and prevents unbounded sensor measurement errors. Bias-free data are then used in the Fault Detection and Diagnosis (FDD) scheme. |
Genre |
Thesis/Dissertation |
Type |
Text |
Language | eng |
Collection |
Retrospective Theses and Dissertations, 1919-2007 |
Series | UBC Retrospective Theses Digitization Project |
Date Available | 2010-01-05 |
Provider | Vancouver : University of British Columbia Library |
Rights | For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use. |
DOI | 10.14288/1.0080708 |
Degree |
Master of Applied Science - MASc |
Program |
Mechanical Engineering |
Affiliation |
Applied Science, Faculty of Mechanical Engineering, Department of |
Degree Grantor | University of British Columbia |
Graduation Date | 2006-05 |
Campus |
UBCV |
Scholarly Level | Graduate |
URI | http://hdl.handle.net/2429/17583 |
Aggregated Source Repository | DSpace |
Download
- Media
- [if-you-see-this-DO-NOT-CLICK]
- ubc_2006-0096.pdf [ 10.89MB ]
- Metadata
- JSON: 1.0080708.json
- JSON-LD: 1.0080708+ld.json
- RDF/XML (Pretty): 1.0080708.xml
- RDF/JSON: 1.0080708+rdf.json
- Turtle: 1.0080708+rdf-turtle.txt
- N-Triples: 1.0080708+rdf-ntriples.txt
- Original Record: 1.0080708 +original-record.json
- Full Text
- 1.0080708.txt
- Citation
- 1.0080708.ris
Full Text
Cite
Citation Scheme:
Usage Statistics
Country | Views | Downloads |
---|---|---|
China | 32 | 5 |
India | 15 | 0 |
United States | 11 | 1 |
Canada | 9 | 0 |
Egypt | 7 | 1 |
Iran | 4 | 0 |
Italy | 3 | 3 |
Algeria | 3 | 0 |
France | 3 | 0 |
Turkey | 2 | 0 |
Russia | 2 | 0 |
Netherlands | 1 | 0 |
Slovenia | 1 | 0 |
City | Views | Downloads |
---|---|---|
Unknown | 35 | 5 |
Beijing | 22 | 0 |
Nanjing | 7 | 0 |
Ashburn | 4 | 0 |
Starkville | 4 | 0 |
Vancouver | 3 | 0 |
Bangalore | 2 | 0 |
Chennai | 2 | 0 |
Shenzhen | 2 | 5 |
Halifax | 2 | 0 |
Surrey | 1 | 0 |
Daytona Beach | 1 | 0 |
Vipolže | 1 | 0 |
{[{ mDataHeader[type] }]} | {[{ month[type] }]} | {[{ tData[type] }]} |
Share
Embed
Customize your widget with the following options, then copy and paste the code below into the HTML
of your page to embed this item in your website.
<div id="ubcOpenCollectionsWidgetDisplay">
<script id="ubcOpenCollectionsWidget"
src="{[{embed.src}]}"
data-item="{[{embed.item}]}"
data-collection="{[{embed.collection}]}"
data-metadata="{[{embed.showMetadata}]}"
data-width="{[{embed.width}]}"
async >
</script>
</div>
Our image viewer uses the IIIF 2.0 standard.
To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0080708/manifest