Thesis for Master s Degree Fault detection, isolation and accommodation of sensors using neural network estimator and fuzzy logic voter Seong-Ho Kwon School of Mechanical Engineering Gwangju Institute of Science and Technology 2017
석 사 학 위 논 문 신경망 예측기와 퍼지논리 투표기법을 이용한 센서의 고장 진단, 고립 및 적응 권 성 호 기 계 공 학 부 광 주 과 학 기 술 원 2017
Fault detection, isolation and accornrnodation of scnsors using nεural network estirnator and fuzzy logic voter Advisor: Hyo-Sung Ahn by Seong-Ho K won School of Mechanical Engineering Gwangju Institute of Science and Technology A thesis submitted to the faculty of the Gwangju InstÏtute of Science and Technology in partial fulfillment of the requirements for the degree of Master of Science in the School of Mechanical Engineering Gwan 밍 u, Republic of Korea June 28, 2017 Approv~d by Thesis Advisor
Fault detection, isolation and accornrnodation of sensors using neural network estirnator and fuzzy logic voter Seong-Ho Kwon Accepted in partial fulfillment of the requirements for the degree of Master of Science June 28, 2017 Thesis Advisor Committee Member 빠 μι ~t (Jtν Pr6f Hyun-&ok Oh Committee Member Prof. Solkeun J ee
Dedicated to my Family
MS/ME 20151237 Seong-Ho Kwon. Fault detection, isolation and accommodation of sensors using neural network estimator and fuzzy logic voter. School of Mechanical Engineering. 2017. 46p. Advisor: Prof. Hyo-Sung Ahn. Abstract In recent years, Sensors are vital components of any control systems and safety critical systems. The systems are also increasingly sophisticated and heavily reliant on many sensors. Failure detection, isolation and accommodation (FDIA) of sensors is especially an important and challenging problem on safety critical applications such as unmanned aerial vehicles (UAVs). In this thesis, we propose a new FDIA scheme and focus on UAVs and gyro sensor. The new scheme is the scheme using the advantage of hardware redundancy and analytical redundancy. The advantage of hardware redundancy is reliability using duplicative signals generated by additional hardware, and the advantage of analytical redundancy is that the FDIA system has low cost, power and weight using a mathematical model or estimate. The new scheme uses a sensor estimate based on fully connected cascade neural network (FCC NN) and a voting scheme based on a fuzzy logic. The new scheme is more powerful than the analytical redundancy based on FCC NN. We show that it is more reliable than the analytical redundancy. The new FDIA scheme is validated by the experiment using a quadrotor with two gyro sensor modules. We show that the new scheme can detect any failure of the gyro sensor, pinpoint what gyro sensor fails and replace the gyro sensor with the other normal gyro sensor. c 2017 Seong-Ho Kwon ALL RIGHTS RESERVED i
MS/ME 20151237 권성호. 신경망 예측기와 퍼지논리 투표기법을 이용한 센서의 고장 진단, 고립 및 적응. 기계공학부. 2017. 46p. 지도교수: 안효성. 국문요약 최근 제어 분야 그리고 필수 안전 분야, 예를 들면 무인비행체 분야, 에서 센서의 고장 진단 및 조치 방법은 중요한 그리고 도전적인 화두가 되고 있다. 이에 본 논문에 서는 센서, 특히 자이로 센서, 의 고장 진단 및 조치 방법에 대한 새로운 방법을 제시한 다. 이 새로운 방법은 기존의 하드웨어 중복 (hardware redundancy) 방법과 분석적 중 복 (analytical redundancy) 방법의 장점을 조합하여 만든 방법이다. 하드웨어 중복 방 법은 추가적인 하드웨어를 장착하여 나온 신호를 이용하는 방법인데, 이 방법은 실제 센서를 이용한다는 점에서 시스템의 신뢰성이 보장된다. 반면에, 분석적 중복 방법은 수학적인 모델 또는 추정 모델을 실제 추가적인 센서를 대신해서 사용하는 방법인데, 이 방법은 추가적인 하드웨어가 필요 없어 전체 시스템의 비용, 효율 그리고 무게를 줄일 수 있다는 장점이 있다. 본 논문에서 새로 제시한 방법은 이러한 장점을 활용하 기 위해 fully connected cascade 기반의 인공신경망과 퍼지 논리 기반의 투표 기법을 사 용한다. 이 방법은 기존의 FCC 인공신경망 기반의 분석적 중복 방법에 비해 시스템의 신뢰성이 높은데, 그 결과를 본 논문에서 실험적으로 보여줄 것이다. 제시한 방법을 증명하기 위해 실제 2개의 자이로 센서가 장착된 쿼드로터를 가지고 실험을 한다. 그 실험을 통해 제시한 방법이 센서의 고장 진단 및 조치하는 임무를 대체적으로 잘 수행 한다는 것을 보여줄 것이다. c 2017 권 성 호 ALL RIGHTS RESERVED ii
Contents Abstract (English) Abstract (Korean) List of Contents List of Tables List of Figures i ii iii v vi 1 Introduction 1 1.1 Motivation................................... 1 1.2 Literature Review and Contribution..................... 2 2 Preliminaries: Brief Review of FDIA Methods & New FDIA Method 4 3 Neural Network 7 3.1 Fully Connected Cascade Neural Network.................. 7 3.2 Learning Algorithm.............................. 9 3.2.1 Neuron by Neuron (NBN) Algorithm................ 9 3.3 Activation Function.............................. 11 3.4 Estimator using Neural Networks....................... 12 3.4.1 Input/Output for Neural Networks Estimator............ 12 3.4.2 Numerical Simulation of Sensor Estimaotors............ 15 4 Fuzzy Voter 17 4.1 Fuzzy Difference Variable of Input Pairs and Fuzzy Agreeability of Each Input 18 4.2 Fuzzy Rule & Defuzzifying fuzzy areeability................ 20 5 Experimental Results 22 5.1 FDIA Outline................................. 22 5.2 Hardware................................... 23 iii
5.3 Sensor Failure Types............................. 24 5.4 Residual Generation Technique........................ 25 5.5 Experiments.................................. 26 5.5.1 Sensor Estimate using Real Experiment Data............ 26 5.5.2 Fuzzy voter.............................. 30 5.5.3 Fault Detection, Isolation and Accomdation............. 31 6 Conclusion 39 6.1 Summary................................... 39 6.2 Future Work.................................. 40 Bibliography 41 Acknowledgements 47 iv
List of Tables 3.1 INPUTS TO THE ESTIMATOR....................... 14 3.2 AVERAGES OF MEAN SQUARED ERRORS............... 15 4.1 FUZZY RULE................................ 20 5.1 Parameters of membership functions..................... 30 5.2 Average time of fault detection........................ 31 v
List of Figures 2.1 Concepts of hardware redundancy and analytical redundancy for FDIA... 6 2.2 New concept combined with hardware and analytical redundancy method. 6 3.1 FCC NN architecture with 3 neurons and 4 inputs.............. 8 3.2 Pitch angle and Estimate of pitch angle. The squared error between the pitch estimate and pitch angle is also presented................... 16 4.1 Structure of three-input fuzzy voter...................... 17 4.2 Membership functions, µ A (d ij ) where A:{small, medium, large}...... 18 4.3 Variable membership functions of fuzzy output............... 19 5.1 Total layout of sensor FDIA scheme..................... 23 5.2 Quadrotor frame and Pixhawk autopilot................... 23 5.3 Sliding average window at time t....................... 26 5.4 Estimator of yaw angle and two real sensors. The squared error between main sensor and the yaw estimate is also presented.............. 27 5.5 Estimator of roll angle and two real sensors. The squared error between main sensor and the roll estimate is also presented................. 28 5.6 Estimator of pitch angle and two real sensors. The squared error between main sensor and the pitch estimate is also presented.............. 29 5.7 Compensation example 01 from the viewpoint of pitch movement..... 30 5.8 Compensation example 02 from the viewpoint of roll movement...... 31 5.9 Roll failure in case of fault case(1)5.3.................... 32 vi
5.10 Roll failure in case of fault case(5)5.3.................... 33 5.11 Pitch failure in case of fault case(1)5.3.................... 34 5.12 Pitch failure in case of fault case(5)5.3.................... 35 5.13 Yaw failure in case of fault case(1)5.3.................... 36 5.14 Yaw failure in case of fault case(5)5.3.................... 37 5.15 Example of secondary sensor fault...................... 38 vii
Chapter 1 Introduction 1.1 Motivation A sensor is a main and important component on any aerospace control system or other safety critical systems. They can inform controllers of its environment and state of the system. control systems have been sophisticated and absolutely dependent on sensors. However sensors are often considered as weak components [1, 2]. According to the Office of the Secretary of Defense, about 80 percent of faults are causes of flight incidents concerning unmanned aerial vehicles (UAVs) [3]. The system s performance can get worse by any sensor failure. The sensor failure could make the system fail totally, and could produce damage to property and environment or even loss of lives. A frequent failure of sensors could also be directly connected to an endurance problem. UAVs are generally used for rough, dangerous and unreachable place. If the UAVs are broken, then it is not only very hard to recover them but also very inefficient in the line of duty. In particular, a fault of gyro sensor places UAVs system in more fatal situation than other sensors. If gyro sensor fails, then UAVs cannot perform it s any duty and also be not controlled by manual. Therefore, it is important to detect any fault and pinpoint its location and accommodate it by replacing faulty sensor with another normal sensor in the reliability and safety area. 1
1.2 Literature Review and Contribution In recent years, concern about potential process problems and component faults have been ever-increasing on various reliability and safety systems. As a result, it is very important to detect potential problems or faults, pinpoint the locations and implement fault-tolerant operation for minimizing performance degradation and avoiding dangerous situations [4]. Especially, Fault detection, isolation and accommodation (FDIA) of sensors is an important and challenging problem on the aerospace engineering [5 7]. Aircraft systems generally adopt high level redundancy design to tolerate hardware or software faults. But, nowadays, trends of UAVs design have been going to be cheap and low weight [8, 9]. Therefore, hardware redundancy design may be inappropriate for UAVs which have demands on low weight, cost and on-board space. There have alternatively been model-based FDIA for the last 40 years [9]. The majority of FDIA schemes depend on linear-time-invariant (LTI) models [9, 10]. However, the FDIA based on LTI models could sometimes fail to succeed in nonlinear and time-varying systems. Therefore, there has been growing of using neural networks (NN) as an alternative FDIA method for nonlinear systems [11 13]. The NN based FDIA scheme has the advantages which are that the scheme does not need detailed mathematical model and can adapt online learning. The general architecture of NN is the multilayer perceptron (MLP) architecture. However, in this thesis, the fully connected cascade (FCC) architecture is used due to its advantages compared to the traditional MLP architecture. The FCC architecture requires small number of neurons and weights to solve a problem [14 16]. 2
In this thesis, We propose the method combined with hardware redundancy and analytical redundancy. Two real sensors and one estimator are used for the FDIA. The estimator is based on FCC NN. The three signals from two real sensors and an estimator are used by the fuzzy voter. That is, we also use the voting scheme like a hardware redundancy design. We expect that the UAVs system has more low weight and cost than a method only using hardware redundancy, and has more high reliability than a method only using analytical redundancy by using our FDIA method. 3
Chapter 2 Preliminaries: Brief Review of FDIA Methods & New FDIA Method FDI methods can generally be divided into two methods. One is a hardware redundancy and the other one is an analytical redundancy. The basic concept of the hardware redundancy is to compare duplicative signals of multi-hardware, such as measurements of same signals generated by multi sensors. Then, a voting scheme is employed to detect any fault and identify locations of faults as illustrated in Fig. 2.1a [6, 17, 18]. The up-to-date method of hardware redundancy is to implement high levels of hardware redundancy [6, 19, 20]. For example, in a system with triple redundant sensors, if one of the sensors fails, then the signal of the faulty sensor is different with another two sensors. Then the sensor failure can be detected and identified by a voting scheme. The sensor failure is also accommodated by replacing the faulty sensor with another normal sensor. On the other hand, the basic concept of the analytical redundancy is to use a mathematical model or model estimate and use diagnostic logic to detect any fault. For example, in case of sensor fault detection, the mathematical model is used to generate residual between a signal of real sensor and a signal of the mathematical model. The residual is used to detect and identify any fault of the sensor by a diagnostic logic as illustrated in Fig. 2.1b. The analytical redundancy also does not require additional hardware. Therefore The analyt- 4
ical redundancy is better than the hardware redundancy in terms of weight, cost and power. However the analytical redundancy also has challenging problems such as weaknesses about noise, uncertainties of model and unknown disturbances. It needs to ensure its robustness against noise, uncertainties of model and unknown disturbances of a system. In this thesis, the method combined with the advantage of hardware redundancy and the advantage of analytical redundancy is presented. We use the advantage of analytical redundancy using an estimate technique which is the FCC NN based estimate technique [21], and we use an additional hardware and a voting scheme which is a fuzzy voter. Therefore, the system is similar with the triple redundant system as illustrated in 2.2. The detailed layout of proposed method is presented in Section 5.1. We will show that the proposed mehotd can compensate noises, uncertainties of model and unknown disturbances of analytical redundancy for the FDIA. The detailed description is presented in section.5.1. The reason why we add the voting scheme and additional hardware is that we cannot believe the analytical redundancy fully. Even though the numerical simulation of FCC NN based FDIA is validated by Hussain et al. [21], unexpected results could occur on real experiments. In this situation, the voting scheme and additional hardware can give us a solution. The voting scheme based on fuzzy logic [17] has a feature which downgrades the importance of the unexpected result. If one of the sensors sends a different signal with other two sensors in a triple modular redundancy (TMR) system,, then the voting scheme lowers important of the sensor with different signal. The feature helps us to determine whether result of estimate is abnormal or not when any sensor does not fail, and also to detect sensor failure. The description is presented in section 5.5.2. 5
(a) Hardware redundancy (b) Analytical redundancy Figure 2.1. Concepts of hardware redundancy and analytical redundancy for FDIA Figure 2.2. New concept combined with hardware and analytical redundancy method 6
Chapter 3 Neural Network In general, multilayer perceptron neural network (MLP NN) is a popular architecture for neural network based applications [14, 22]. However in this thesis, fully connected cascade neural network (FCC NN) is used instead of MLP NN. Because FCC NN has more powerful advantage than traditional MLP NN. The advantage is the ability to solve a problem with small number of neurons and weights [15, 23]. 3.1 Fully Connected Cascade Neural Network In the FCC NN, all routines which are connected in a neural network architecture are weighted and each neuron has effect on a layer as presented in Fig. 3.1. According to [15,24], MLP NN architecture with single hidden layer needs N-1 neurons to solve parity-n problem whereas FCC NN architecture needs log 2 (N + 1) to solve parity-n problem. For example, MLP NN architecture with single hidden layer needs 8 neurons for parity-7problem but FCC NN architecture needs only 3 neurons, and MLP NN architecture with single hidden layer needs 64 neurons for parity-63problem whereas FCC NN architecture needs only 6 neurons. Also the authors of [15, 24] state that,in terms of number of neurons and weights, FCC NN architecture is more efficient than other various neural network architectures such as MLP, Bridged MLP with multi hidden layer. This shows that FCC NN architecture is more advantageous and efficient than MLP NN architecture. 7
Neural networks architecture should be composed of smallest number of neurons for optimum performance. [16]. Therefore, we chose the FCC NN architecture for generating estimator of sensors to detect any failure. Figure 3.1. FCC NN architecture with 3 neurons and 4 inputs 8
3.2 Learning Algorithm The general algorithm for MLP is error back-propagation (EBP) algorithm because of its simplicity [25, 26]. However, EBP algorithm is slow and inefficient, and it cannot also be applied to complex problems whereas other advanced algorithm, such as neuron by neuron (NBN) algorithm or Levenberg-Marquardt(LM) algorithm, can be applied to complex problems [27, 28]. The NBN algorithm is the improved version of LM algorithm and especially faster 1000 times than EBP algorithm in terms of neural network training. The NBN algorithm can also train feed-forward neural networks with arbitrarily connected neurons whereas LM algorithm cannot train it [14,16]. The NBN algorithm also does not require to store and compute large Jacobian matrix. Therefore, it can reduce computation time whereas the LM algorithm needs to store and compute the Jacobian matrix [29]. FCC NN architecture is a form of feedforward neural networks. Therefore, it needs NBN algorithm to be trained. Due to these reasons, NBN algorithm was chosen in this thesis. 3.2.1 Neuron by Neuron (NBN) Algorithm The update rule of NBN algorithm is [29] ω n+1 = ω n (Q + µi) 1 g. (3.1) where ω is the weights vector; Q is the N N quasi-hessian matrix; µ is the combination coefficient; I is the identity matrix; and g is the gradient vector. 9
The quasi-hessian matrix Q can be calculated as the sum of submatrices q pm (size:n N) Q = P M q pm. (3.2) p=1 m=1 where q pm = ( epm ω 1 ) 2 e pm ω 2 e pm ω N e pm ω 1 e pm ω 1 e pm ω 1 e pm ω 2 ( epm ω 2 ) 2 e pm ω N e pm ω 1 e pm ω 2 e pm ω N e pm ω N e pm ω 2 ( epm ω N ) 2. (3.3) e pm = d pm o pm,and e pm is the error vector, d pm is the desired output and o pm is the actual output at network ouput m for training pattern p. By using 1 N vector j pm [ j pm = e pm ω 1 e pm ω 2 ] e pm. (3.4) ω N Submatrices q pm in 3.3 can be also written using 3.4 q pm = j T pmj pm. (3.5) The gradient vector,g, can be calculated by the gradient subvector η pm (size:n 1) and error vector e pm η pm = e pm ω 1 e pm e pm ω 2 e pm e pm ω N e pm e pm ω 1 e pm ω = 2 e pm = jpme T pm. (3.6) e pm ω N 10
P M g = η pm. (3.7) p=1 m=1 Here is the notice that only N elements of vector j pm need to be stored and calculated when the submatrices q pm, and the scalar e pm needs to be stored when the gradient subvector η pm are calculated. Since j pm is already calculated and stored when qausi-hessian matrix is computed above. 3.3 Activation Function In general, there are three types of neurons. One is a bipolar type, another one is a unipolar type and the other is a linear type. The bipolar type has positive or negative outputs and the unipolar type has only positive outputs. The bipolar type is no more than 1 and no less than -1, and the unipolar type is no more than 1 whereas the linear type can be greater than 1 and less than -1. The linear type is generally considered as an output neuron. The follow activation functions are usually used Activation function for bipolar neurons: f bip (net) = tanh(0.5λnet) = Activation function for unipolar neurons: f uni (net) = Activation function for linear neurons: 2 1. (3.8) 1 + exp( λnet) 1 1 + exp( λnet). (3.9) f lin (net) = λnet. (3.10) Where net is the weighted sum of all signals and λ is the activation function gain. 11
The neurons with bipolar and the neurons with unipolar are easily changed to each other. Also, both work the same way [30]. That is, it does not matter which one of both is selected. We use the neurons with bipolar and linear types in this thesis. 3.4 Estimator using Neural Networks 3.4.1 Input/Output for Neural Networks Estimator A quadrotor and two gyro sensors is used for the sensor FDIA, and the inputs to the estimator are measurements of accelerometer and desired control values to an attitude controller as presented in Table.3.1. The reason why they are selected as inputs is that they are based on a quadrotor dynamics and they have effect on the roll, pitch and yaw movement of the quadrotor. The general nonlinear dynamics of quadrotor is summarized as follows [31 33] X T = (ẋ, ẏ, ż, φ, θ, ψ, φ, θ, ψ). (3.11) where X R 9 is the vector of state variables, (x,y,z) are the position vector, φ is the roll angle, θ is the pitch angle and ψ is the yaw angle. ẋ 7 ẋ 8 ẋ 9 x 8 x 9 I 1 I R Ix x 8 g(u) + L I x u 2 = x 7 x 9 I 2 + I R Iy x 7 g(u) + L I y u 3. (3.12) x 7 x 8 I 3 + 1 I z u 4 12
ẋ 1 ẋ 2 ẋ 3 cos x 4 sin x 5 cos x 6 sin x 4 sin x 6 = cos x 4 sin x 5 sin x 6 + sin x 4 cos x u 1 6 m. (3.13) g (cos x 4 cos x 5 ) where u 1 = b(w1 2 + w1 2 + w1 2 + w1) 2 u 2 = b(w2 2 w4) 2 u 3 = b(w1 2 w3) 2 u 4 = b(w1 2 + w3 2 w2 2 w4) 2 g(u) = w1 2 w2 2 + w3 2 w4 2 (3.14) g is the acceleration of gravity, w i is the speed of rotor i and b is the thrust factor. u 1,u 2,u 3 and u 4 are defined as artificial input variables. u 2 is the input for the roll and horizontal movement, u 3 is the input for the pitch and vertical movement and u 4 is the input for yaw movement. 13
Table 3.1. INPUTS TO THE ESTIMATOR Sensor Estimator Inputs to the estimator ẋ 2 : acceleration on y-axis Roll(φ) ẋ 3 : acceleration on z-axis u 2 Roll target value to attitude controller ẋ 1 : acceleration on x-axis Pitch(θ) ẋ 3 : acceleration on z-axis u 3 Pitch target value to attitude controller ẋ 1 : acceleration on x-axis Yaw(ψ) ẋ 2 : acceleration on y-axis u 4 Yaw target value to attitude controller 14
3.4.2 Numerical Simulation of Sensor Estimaotors The estimators are trained by the NBN algorithm trainer with offline learning [34]. The training data set is store in state of steady and transient states of quadrotor when the quadrotor hovers. 3 neurons and 4 inputs as Table 3.1 are used for training and simulation. We simulate the neural network estimators using the quadrotor attitude and position controller [35, 36]. Also, parameters on [37] which includes the same quadrotor dynamics and hardware to experiment in this thesis are used in the simulation. The averages of mean squared errors are presented in Table 3.2 by implementing 6 times simulations for each the roll, pitch and yaw angles. Table 3.2. AVERAGES OF MEAN SQUARED ERRORS Average of Mean Squared Error Roll(φ) Pitch(θ) Yaw(ψ) 2.195E-08 1.124E-09 6.396E-09 The errors are very low as presented above Table 3.2. Because We did not put any noises or disturbances in the simulation. Fig. 3.2 is one example of simulation results. However, there exist noises or disturbances in a sensor signal when real experiments are implemented as depicted in Fig. 5.4-5.6. 15
Figure 3.2. Pitch angle and Estimate of pitch angle. The squared error between the pitch estimate and pitch angle is also presented. 16
Chapter 4 Fuzzy Voter Two types of voters are usually used in the Triple-Modular Redundancy (TMR) system. That is, the inexact majority voter and the amalgamating voter. However, in case of using the dynamic responses of control system such as responses of sensors or controllers, fuzzy voter can be outstanding compared to the inexact majority and the amalgamating voter [17]. The fuzzy voter in focusing on a TMR system can be divided into two types which are the type-1 and the interval type-2. The interval type-2 fuzzy voter has good robustness against noises. But the speed is not enough in a TMR system [38]. Therefore we use type-1 fuzzy voter introduced in [17]. Fig 4.1 shows the structure with three inputs. The d ij is numerical difference of x i and x j and the w i is the weight value used in the weighted average voter summation for the voter output. Figure 4.1. Structure of three-input fuzzy voter 17
4.1 Fuzzy Difference Variable of Input Pairs and Fuzzy Agreeability of Each Input In this chapter, the fuzzy difference variable is defined using membership grades µ A (d ij ) where A:{small, medium, large}. Symmetry sets are used when the fuzzy difference variable is defined. Triangular and trapezoid-shape fuzzy membership function are used in the fuzzy voter as illustrated in Fig.4.2. Figure 4.2. Membership functions, µ A (d ij ) where A:{small, medium, large} The fuzzy variables and membership functions are defined as follows Difference of two voter inputs: d ij = (x i x j ), i j. (4.1) Symmetry: r q = q p where p,q and r are real number (p < q < r) 1 if d ij p, µ small (d ij ) = q d ij q p if p < d ij q, (4.2) 0 if q < d ij. 18
0 if d ij p, d ij p if p < d q p ij q, µ midium (d ij ) = r d ij r q if q < d ij r, (4.3) 0 if r < d ij. 0 if d ij q, µ large (d ij ) = q d ij q p if q < d ij r, (4.4) 1 if r < d ij. The fuzzy agreeability variable, µ B (ω i ), is defined with respect to each input as presented in Fig 4.3. Also, five overlapping fuzzy set B is defined as B : (vlow, low, med, high, vhigh). The fuzzy agreeability variable is a measure or criterion how close one input agrees with the other two inputs. Figure 4.3. Variable membership functions of fuzzy output 19
4.2 Fuzzy Rule & Defuzzifying fuzzy areeability The set of fuzzy rules is presented in the table 4.1 from [17]. The table 4.1 shows how agreeability sets are selected by the fuzzy rules in a TMR system. If the difference d 12 and d 13 are small between inputs, then the value of agreeability is high. Some examples are described below. 1) IF d 12 is small AND d 13 is small THEN x 1 agreeability is very high. 2) IF d 12 is small AND d 13 is medium THEN x 1 agreeability is high. 3) IF d 12 is medium AND d 13 is small THEN x 1 agreeability is high. 4) IF d 12 is large AND d 13 is small THEN x 1 agreeability is medium. 5) IF d 12 is small AND d 13 is large THEN x 1 agreeability is medium. 6) IF d 12 is medium AND d 13 is medium THEN x 1 agreeability is low. 7) IF d 12 is large AND d 13 is medium THEN x 1 agreeability is very low. 8) IF d 12 is medium AND d 13 is large THEN x 1 agreeability is very low. 9) IF d 12 is large AND d 13 is large THEN x 1 agreeability is very low. This linguistic set of fuzzy rules can provide a good explanation of fuzzy voting scheme. Table 4.1. FUZZY RULE d ij & small medium large small Very High High Medium d ik medium High Low Very Low large Medium Very Low Very Low 20
The outputs of the fuzzy rules are also aggregated using the t-norm operator and s-norm operator [17]. (t is represented by the min operator, and s is represented by the max operator.) 1) µ vhigh (w i ) = min{µ small (d ij ), i j} 2) µ high (w i ) = max{min[µ small (d ij ), µ medium (d ik ), k : k i, j], j : j i} 3) µ medium (w i ) = max{min[µ small (d ij ), µ large (d ik ), k : k i, j], j : j i} 4) µ low (w i ) = min{µ medium (d ij ), i j} 5) µ vlow (w i ) = min{µ large (d ij ), i j} The weighted average calculation is used for the fuzzy voting scheme. The weights are determined by the defuzzification step [17]. The defuzzification step requires output fuzzy sets B j, as presented in Fig. 4.3, and centroids C j of output fuzzy sets B j. The weighted average calculation is computed as follows: ω i = M j=1 µ B j C j M j=1 µ B j (4.5) Where J {very low, low, medium, high, very high}, M is the number of ouput fuzzy sets. C V low = 0, C low = 0.25, C medium = 0.5, C high = 0.75 and C V high = 1. The final output value y is calculated by weighted each input x i and the weight ω i as follows: y = m i=1 x iω i m i=1 ω i (4.6) 21
Chapter 5 Experimental Results In this chapter, we are going to show that the suggested FDIA method can compensate disadvantages of analytical redundancy method, such as unreliability by noises, uncertainties of model and unknown disturbances when any fault has not occurred as mentioned in subsection 3.4.2, and show that how well the FDIA method is implemented. 5.1 FDIA Outline We use two real sensors and one NN based estimator for the FDIA. The signal from three modules (two real sensor and one estimator) also become one signal by the fuzzy voter. The fuzzy voter uses difference between each module. Next, residuals between the signals of main sensor and fuzzy output, and between the signals of redundant sensor and fuzzy voter output are generated by the sliding window technique and the residuals are used to distinguish whether there exists any fault or not and what sensor fails. If a fault of main sensor occurs, then the fault signal goes to 1 from 0. If a fault of redundant sensor occurs, then the fault signal goes to 2 from 0. The overall layout is depicted in Fig 5.1 22
Figure 5.1. Total layout of sensor FDIA scheme 5.2 Hardware we use a Arduino quadrotor frame which have + shape and a Pixhawk autopilot depicted in Fig.5.2. The pixhawk autopilot includes two gyro sensors. The two gyro sensors can be used to compare a faulty sensor and a normal sensor using the proposed FDIA scheme. Also, the pixhawk provides open source code and allows us to modify the code. Figure 5.2. Quadrotor frame and Pixhawk autopilot 23
5.3 Sensor Failure Types The faulty signal of sensor can be described as follows [21]: x t = s t + n t + f t. (5.1) where at time t, x t is the signal from the sensor, s t is the useful signal, n t is the noise and f t is the sensor failure. In real experiments, we assume that the noise signal n t is included in s t. The following failure types are tested [1, 21, 39]. 1) Constant bias failure: x t = b. (5.2) 2) Additive(drift) failure: 0 if t < t f, f t = A(t t f ) T R if t f t < t f + T R,. (5.3) A if t t f + T R. where t f is the time before the failure happens, T R is the ramp time while the failure happens and A is the magnitude of failure. In this papaer, the following cases of additive failure are considered. 24
1) T R = 1s, A = 0.05 rad/s, 2) T R = 1s, A = 0.025 rad/s, 3) T R = 4s, A = 0.05 rad/s, 4) T R = 4s, A = 0.025 rad/s, 5) T R = 0s, A = 0.05 rad/s, 6) T R = 0s, A = 0.025 rad/s. 5.4 Residual Generation Technique In practical experiments, it is hard to know when noises or unknown disturbances are included. Therefore, it is not good to use only one point of measurements for the FDIA. The sliding window mechanism [9] can give us good solution. The sliding window mechanism is the method to use a moving average within special time. A window of size n data points is transferred with the special time as illustrated in 5.3. The following equation is the residual generation using the sliding window mechanism [9, 21]. D t = ω r n t i=t n 1 (x i x i ) 2. (5.4) where D t is the residual at time t, ω r is the weight, x i is the real sensor measurement and x i is the artifical measurement. The artifical measurement is the output from the fuzzy voter in this thesis. we set n = 8 and ω r = 500. 25
Figure 5.3. Sliding average window at time t 5.5 Experiments 5.5.1 Sensor Estimate using Real Experiment Data We use real sensor measurements to estimate euler angles by the method mentioned in Chapter 3. The estimators are trained by offline learning and the NBN algorithm trainer [34]. The training data set is stored when the quadrotor hovers in state of steady and transient states. 3 neurons and 4 inputs as Table 3.1 are used for training and simulation. The following results (Fig 5.4-5.6) are the estimators of each euler angle. The results are the main sensor, the redundant sensor, euler angle estimate and the squared error. The squared error is a difference between the main sensor and estimator. On the whole, the results show that estimators are similar with two sensors (main sensor and secondary sensor). But though any fault does not happen, there exist some parts which are unreliable for the FDIA because of noises or unknown disturbances. About this problems, we are going to show that the proposed method can solve the problems on the next section5.5.2. 26
Figure 5.4. Estimator of yaw angle and two real sensors. The squared error between main sensor and the yaw estimate is also presented. 27
Figure 5.5. Estimator of roll angle and two real sensors. The squared error between main sensor and the roll estimate is also presented. 28
Figure 5.6. Estimator of pitch angle and two real sensors. The squared error between main sensor and the pitch estimate is also presented. 29
5.5.2 Fuzzy voter The parameters of membership functions 4.2-4.4 are set as follwing Table 5.1. Table 5.1. Parameters of membership functions p q r d 12 d 13 0.01 0.02 0.03 d 23 0.005 0.01 0.025 The fuzzy voter compensates the unexpected results of sensor estimate or unreliable results when any fault does not occur. The Fig. 5.7 and 5.8 show the result. Figure 5.7. Compensation example 01 from the viewpoint of pitch movement 30
Figure 5.8. Compensation example 02 from the viewpoint of roll movement 5.5.3 Fault Detection, Isolation and Accomdation We give the fault signal 5.3 to the Pixhawk controller. The failure of constant bias signal is similar with the failure of step signal. Therefore, the failure type is skipped. We experimented 3 times and the detection time of sensor failure is as follows. The results show the average time of fault detection for the roll, pitch and yaw motion. Table 5.2. Average time of fault detection failure(1) failure(2) failure(3) failure(4) failure(5) failure(6) Roll(φ) 1.1 s 1.5 s 1.7 s 2.8 s 0.8 s 1.0 s Pitch(θ) 1.3 s 2.0 s 2.1 s 3.0 s 0.9 s 1.2 s Yaw(ψ) 0.8 s 1.0 s 1.3 s 2.0 s 0.5 s 0.8 s The fault detection time is decided by the residual from the fuzzy voter and main sensor. If the residual is greater than specific threshold, then the signal of fault alarm becomes 1 31
from 0. The thresholds are set to 0.55, 0.55 and 0.2 for the roll, pitch and yaw respectively. Some results of experiments are presented in Fig 5.9-5.14. Totally, the fault signals with large magnitudes are detected faster than the fault signals with small magnitudes. Similarly, the fault signals with small duration time (T R ) are detected faster than the fault signals with large duration time. Roll(φ) Figure 5.9. Roll failure in case of fault case(1)5.3 32
Figure 5.10. Roll failure in case of fault case(5)5.3 33
Pitch(θ) Figure 5.11. Pitch failure in case of fault case(1)5.3 34
Figure 5.12. Pitch failure in case of fault case(5)5.3 35
Yaw(ψ) Figure 5.13. Yaw failure in case of fault case(1)5.3 36
Figure 5.14. Yaw failure in case of fault case(5)5.3 37
The example of secondary sensor failure is presented in Fig 5.15. If secondary sensor fails while main sensor work normally, then secondary sensor signal goes to be unstable whereas main sensor signal and estimate provide similar and normal values. After that, the signal of fault alarm becomes 2 from 0. The residual between secondary sensor and fuzzy voter output is used for 2nd sensor FDIA. If the residual is greater than specific threshold, then the FDIA scheme can decide that the 2nd sensor fails. The thresholds are set to 0.55, 0.55 and 0.2 for the roll, pitch and yaw respectively. Figure 5.15. Example of secondary sensor fault 38
Chapter 6 Conclusion 6.1 Summary In this thesis, the new FDIA scheme is proposed to improve the existing scheme which is analytical redundancy based on FCC NN. The existing scheme was not proper to be used on real experiment. Because the existing scheme sometimes provide the faulty results due to noises or unknown disturbance. Therefore, we propose new scheme which includes an additional hardware and a voting scheme. The new scheme is based on the FCC NN sensor estimate and type1 fuzzy voter. The new scheme uses the advantages of hardware redundancy and analytical redundancy. The scheme also uses two real sensors as main sensor and redundant sensor, and the quadrotor with the Pixhawk autopilot for experiments. We experimented using the proposed scheme to detect a fault, pinpoint what sensor fails and replace the faulty sensor with another normal sensor. The experimental results show that the new scheme is more reliable than the analytical redundancy based on FCC NN. Because the new scheme does not use only model estimate and adds an additional hardware. As a result, the new scheme is more robust than analytical redundancy and can be used as the FDIA scheme when the estimate provides faulty results. The experimental results also showed the proposed scheme works in general when quadrotor hovers in state of steady and 39
transient state. 6.2 Future Work The extension of this thesis will be the development of experimenting in various environment and implementing online learning of neural network. We did not experiment in case of bad weather, such as a windy day, and in case that the quadrotor move dynamically. Therefore, We need to validate that the FDIA scheme can be implemented in various environment. The experiments in this thesis were implemented by offline learning (batch learning). Therefore, Future work is to implement the experiments with online learning and compare the performance from offline learning and the performance from online learning. 40
Bibliography 1. E. Balaban, A. Saxena, P. Bansal, K. F. Goebel, and S. Curran, Modeling, detection, and disambiguation of sensor faults for aerospace applications, IEEE Sensors Journal, Vol. 9, No. 12, pp. 1907 1917, 2009. 2. J. C. da Silva, A. Saxena, E. Balaban, and K. Goebel, A knowledge-based system approach for sensor fault modeling, detection and mitigation, Expert Systems with Applications, Vol. 39, No. 12, pp. 10 977 10 989, 2012. 3. J. Marzat, H. Piet-Lahanier, F. Damongeot, and E. Walter, Model-based fault diagnosis for aerospace systems: a survey, Proceedings of the Institution of Mechanical Engineers, Part G: Journal of aerospace engineering, Vol. 226, No. 10, pp. 1329 1360, 2012. 4. Z. Gao, C. Cecati, and S. X. Ding, A survey of fault diagnosis and fault-tolerant techniques?part i: Fault diagnosis with model-based and signal-based approaches, IEEE Transactions on Industrial Electronics, Vol. 62, No. 6, pp. 3757 3767, 2015. 5. M. R. Napolitano, Y. An, and B. A. Seanor, A fault tolerant flight control system for sensor and actuator failures using neural networks, Aircraft Design, Vol. 3, No. 2, pp. 103 128, 2000. 6. P. Goupil, Airbus state of the art and practices on fdi and ftc in flight control system, Control Engineering Practice, Vol. 19, No. 6, pp. 524 539, 2011. 7. T. S. Bruggemann, D. G. Greer, and R. A. Walker, Gps fault detection with imu and 41
aircraft dynamics, IEEE Transactions on Aerospace and Electronic Systems, Vol. 47, No. 1, pp. 305 316, 2011. 8. P. La Franchi, Grand designs: An ec-funded research project has unveiled its proposals for a new generation of aircraft that are intended to give europe the edge in the civil uav sector, Flight International, pp. 109 114, 2005. 9. I. Samy, I. Postlethwaite, and D.-W. Gu, Survey and application of sensor fault detection and isolation schemes, Control Engineering Practice, Vol. 19, No. 7, pp. 658 674, 2011. 10. R. Isermann and P. Balle, Trends in the application of model-based fault detection and diagnosis of technical processes, Control engineering practice, Vol. 5, No. 5, pp. 709 719, 1997. 11. I. Samy, I. Postlethwaite, and D.-W. Gu, A comparative study of nn-and ekf-based sfda schemes with application to a nonlinear uav model, International Journal of Control, Vol. 83, No. 5, pp. 1025 1043, 2010. 12., Sfdia of consecutive sensor faults using neural networks demonstrated on a uav, International Journal of Control, Vol. 83, No. 11, pp. 2308 2327, 2010. 13. S. Wan, G. Campa, M. Napolitano, and M. L. Fravolini, On-line learning rbf neural networks for sensor validation, AIAA Guidance, Navigation, and Control Conference and Exhibit, p. 4996, 2002. 42
14. B. M. Wilamowski, How to not get frustrated with neural networks, Industrial Technology (ICIT), 2011 IEEE International Conference on, pp. 5 11, 2011. 15. D. Hunter, H. Yu, M. S. Pukish III, J. Kolbusz, and B. M. Wilamowski, Selection of proper neural network sizes and architectures?a comparative study, IEEE Transactions on Industrial Informatics, Vol. 8, No. 2, pp. 228 240, 2012. 16. B. M. Wilamowski, Neural network architectures and learning algorithms, IEEE Industrial Electronics Magazine, Vol. 3, No. 4, 2009. 17. G. Latif-Shabgahi and A. J. Hirst, A fuzzy voting scheme for hardware and software fault tolerant systems, Fuzzy Sets and Systems, Vol. 150, No. 3, pp. 579 598, 2005. 18. G. Campa, M. L. Fravolini, M. Napolitano, and B. Seanor, Neural networks-based sensor validation for the flight control system of a b777 research model, American Control Conference, 2002. Proceedings of the 2002, Vol. 1, pp. 412 417, 2002. 19. I. Samy, I. Postlethwaite, and D. Gu, Neural network based sensor validation scheme demonstrated on an unmanned air vehicle (uav) model, Decision and Control, 2008. CDC 2008. 47th IEEE Conference on, pp. 1237 1242, 2008. 20. Y. Zhang and J. Jiang, Bibliographical review on reconfigurable fault-tolerant control systems, Annual reviews in control, Vol. 32, No. 2, pp. 229 252, 2008. 21. S. Hussain, M. Mokhtar, and J. M. Howe, Sensor failure detection, identification, and accommodation using fully connected cascade neural network, IEEE Transactions on Industrial Electronics, Vol. 62, No. 3, pp. 1683 1692, 2015. 43
22. M. R. Meireles, P. E. Almeida, and M. G. Simões, A comprehensive review for industrial applicability of artificial neural networks, IEEE transactions on industrial electronics, Vol. 50, No. 3, pp. 585 601, 2003. 23. S. Hussain, M. Mokhtar, and J. M. Howe, Aircraft sensor estimation for fault tolerant flight control system using fully connected cascade neural network, Neural Networks (IJCNN), The 2013 International Joint Conference on, pp. 1 8, 2013. 24. B. Wilamowski, H. Yu, and K. T. Chung, Parity-n problems as a vehicle to compare efficiency of neural network architectures, Industrial Electronics Handbook, Vol. 5, pp. 10 1, 2011. 25. D. E. Rumelhart, G. E. Hinton, and R. J. Williams, Learning representations by backpropagating errors, Cognitive modeling, Vol. 5, No. 3, p. 1, 1988. 26. S. E. Fahlman, Faster-learning variations on back-propagation: An empirical study, 1988. 27. M. T. Hagan and M. B. Menhaj, Training feedforward networks with the marquardt algorithm, IEEE transactions on Neural Networks, Vol. 5, No. 6, pp. 989 993, 1994. 28. B. M. Wilamowski, N. J. Cotton, O. Kaynak, and G. Dundar, Computing gradient vector and jacobian matrix in arbitrarily connected neural networks, IEEE Transactions on Industrial Electronics, Vol. 55, No. 10, pp. 3784 3790, 2008. 29. B. M. Wilamowski and H. Yu, Improved computation for levenberg marquardt training, IEEE transactions on neural networks, Vol. 21, No. 6, pp. 930 937, 2010. 44
30. B. M. Wilamowski, Understanding neural networks, Intelligent Systems. CRC Press, 2011, pp. 1 11. 31. S. Bouabdallah and R. Siegwart, Backstepping and sliding-mode techniques applied to an indoor micro quadrotor, Robotics and Automation, 2005. ICRA 2005. Proceedings of the 2005 IEEE International Conference on, pp. 2247 2252, 2005. 32. P. Castillo, A. Dzul, and R. Lozano, Real-time stabilization and tracking of a four rotor mini-rotorcraft, European Control Conference (ECC), 2003, pp. 3123 3128, 2003. 33. H. Voos, Nonlinear state-dependent riccati equation control of a quadrotor uav, Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control, 2006 IEEE, pp. 2547 2552, 2006. 34. H. Yu and B. M. Wilamowski, Efficient and reliable training of neural networks, Human System Interactions, 2009. HSI 09. 2nd Conference on, pp. 109 115, 2009. 35. H. Voos, Nonlinear control of a quadrotor micro-uav using feedback-linearization, Mechatronics, 2009. ICM 2009. IEEE International Conference on, pp. 1 6, 2009. 36. H. Voos and H. Bou-Ammar, Nonlinear tracking and landing controller for quadrotor aerial robots, Control Applications (CCA), 2010 IEEE International Conference on, pp. 2136 2141, 2010. 37. Y.-C. Choi and H.-S. Ahn, Nonlinear control of quadrotor for point tracking: Actual 45
implementation and experimental tests, IEEE/ASME transactions on mechatronics, Vol. 20, No. 3, pp. 1179 1192, 2015. 38. O. Linda and M. Manic, Interval type-2 fuzzy voter design for fault tolerant systems, Information Sciences, Vol. 181, No. 14, pp. 2933 2950, 2011. 39. G. Heredia, A. Ollero, M. Bejar, and R. Mahtani, Sensor and actuator fault detection in small autonomous helicopters, Mechatronics, Vol. 18, No. 2, pp. 90 99, 2008. 46
Acknowledgements 저에겐 굉장히 짧은 시간이었던 석사과정이 마무리 되었습니다. 석사과정 동안에 연 구하면서 힘들었던 순간, 아쉬웠던 순간 그리고 즐거웠던 순간들이 있었는데, 이 모 든 과정들이 저에겐 소중한 경험들 이었습니다. 그리고 이 모든 과정들은 주변 분들 의 응원과 도움 덕분에 더욱 빛나고 가치가 있던 순간들 이었습니다. 광주과학기술원 분산제어 및 자동화 연구실에서 석사과정을 무사히 마칠 수 있게 많은 응원과 격려 그리고 도움을 주신 분들에게 심심한 감사의 말을 전하고 싶습니다. 우선, 부족한 저를 항상 격려해 주시고 조언을 해주신 안효성 교수님께 가장 먼저 감 사의 말을 전하고 싶습니다. 항상 존경하고 감사합니다. 그리고 저의 부족한 논문을 읽고 깊은 조언과 심사를 해주신 오현석 교수님과 지솔근 교수님께도 감사의 말을 전 합니다. 또한, 제가 연구하는데 도움을 주고 응원해준 연구실 선배, 후배님들에게도 감사드립니다. 마지막으로 저에게 계속 공부할 수 있도록 항상 뒤에서 응원해 주고 지 원해 주는 부모님 및 가족에게 감사의 말을 전합니다. 사랑합니다. 47