Driven Fault Detection and Isolation applied to the Wind Turbine Benchmark Prof. Michel Verhaegen Delft Center for Systems and Control Delft University of Technology the Netherlands November 28, 2011 Prof. Michel Verhaegen 2011-11 1 / 36
Table of contents 1 windturbines 2 From Subspace to Fault Detection Need for a Cautious design in an IDE context Basics of closed-loop Subspace Identification 3 Prof. Michel Verhaegen 2011-11 2 / 36
Outline 1 windturbines 2 From Subspace to Fault Detection Need for a Cautious design in an IDE context Basics of closed-loop Subspace Identification 3 Prof. Michel Verhaegen 2011-11 3 / 36
Standard WT Approach Geometrical, Material cst, Atmospheric Data,... Windturbine Package "Dynamic" Mathematical Model Prof. Michel Verhaegen 2011-11 4 / 36
Standard WT Approach Geometrical, Material cst, Atmospheric Data,... Windturbine Package "Dynamic" Mathematical Model Features Multi-physics modeling environments (Aero-, Mech-, Ele-, Pneu-, Hydro, Marit-, Embed-, etc.) Prof. Michel Verhaegen 2011-11 4 / 36
Standard WT Approach Geometrical, Material cst, Atmospheric Data,... Windturbine Package "Dynamic" Mathematical Model Features Multi-physics modeling environments (Aero-, Mech-, Ele-, Pneu-, Hydro, Marit-, Embed-, etc.) Complexity Major (proprietary) data bases of validated subcomponents... And control design features. Prof. Michel Verhaegen 2011-11 4 / 36
Getting real-life... Alternative Feedback Control Design Methods Glueing together single loop feedback controllers designed for linearized FP a models Prof. Michel Verhaegen 2011-11 5 / 36
Getting real-life... Alternative Feedback Control Design Methods Glueing together single loop feedback controllers designed for linearized FP a models time consuming Robust Multivariable control based on linearized FP models (making use of Coleman transform ) a First Principles Prof. Michel Verhaegen 2011-11 5 / 36
Getting real-life... Alternative Feedback Control Design Methods Glueing together single loop feedback controllers designed for linearized FP a models time consuming Robust Multivariable control based on linearized FP models (making use of Coleman transform ) a First Principles Standing questions Commissioning still needs to be done! How to get the model uncertainty? How to get realistic disturbance models? How to (re-)configure the controller? Prof. Michel Verhaegen 2011-11 5 / 36
Getting real-life... Alternative Feedback Control Design Methods Glueing together single loop feedback controllers designed for linearized FP a models time consuming Robust Multivariable control based on linearized FP models (making use of Coleman transform ) a First Principles Standing questions Commissioning still needs to be done! How to get the model uncertainty? How to get realistic disturbance models? How to (re-)configure the controller? as a starting point! Prof. Michel Verhaegen 2011-11 5 / 36
The Classical Data Driven design cycle measure past I/Os scheme identify x(k +1) = Ax(k)+Bu(k)+Ke(k) y(k) = Cx(k) + Du(k) + e(k) fault alarm Prof. Michel Verhaegen 2011-11 6 / 36
with the Classical Data Driven Design Cycle 10 3 10 2 P ss threshold test statistics 0 100 200 300 400 500 600 samples Prof. Michel Verhaegen 2011-11 7 / 36
with the Classical Data Driven Design Cycle 10 3 10 2 P ss threshold test statistics due to fault? or model uncertainty? 0 100 200 300 400 500 600 samples Prof. Michel Verhaegen 2011-11 7 / 36
Streamlining Data Driven Synthesis measure past I/Os scheme SS (?) models with uncertainty identify x(k +1) = Ax(k)+Bu(k)+Ke(k) y(k) = Cx(k) + Du(k) + e(k) fault alarm Prof. Michel Verhaegen 2011-11 8 / 36
Outline 1 windturbines 2 From Subspace to Fault Detection Need for a Cautious design in an IDE context Basics of closed-loop Subspace Identification 3 Prof. Michel Verhaegen 2011-11 9 / 36
Fault Detection using Identified model? e(k) u(k) d + ˆr(k) = y(k) y(k) ˆd u(k) ˆd = Y t,1,n U t,1,n Prof. Michel Verhaegen 2011-11 10 / 36
Fault Detection using Identified model? u(k) d Distribution of ˆd e(k) ˆd = d ˆd + ˆr(k) = y(k) y(k) ˆd u(k) ˆd = Y t,1,n U t,1,n 0.012 0.01 0.008 var( ˆd) = = E t,1,n U t,1,n σ 2 e U t,1,n U T t,1,n /N 0.006 0.004 0.002 0 2500 2000 1500 1000 500 0 500 1000 1500 2000 2500 (a) Prof. Michel Verhaegen 2011-11 10 / 36
Why & What is Cautious Fault Detection? var(ˆr(k)) = var( ˆd u(k))+var(e(k)) = u 2 (k) var( ˆd)+σ 2 e = { u 2 (k) σ 2 e U t,1,n U T t,1,n /N }+σ 2 e Prof. Michel Verhaegen 2011-11 11 / 36
Why & What is Cautious Fault Detection? var(ˆr(k)) = var( ˆd u(k))+var(e(k)) = u 2 (k) var( ˆd)+σ 2 e = { 0.18 0.16 0.14 0.12 0.1 0.08 0.18 0.16 0.14 0.12 0.1 0.08 u 2 (k) σ 2 e U t,1,n U T t,1,n /N }+σ 2 e 0.06 0.06 0.04 0.04 0.02 0.02 0 0 2 4 6 8 10 12 (b) dist. of ˆr 2 (k)/var(ˆr(k)) 0 0 2 4 6 8 10 12 (c) dist. of ˆr 2 (k)/σ 2 e Prof. Michel Verhaegen 2011-11 11 / 36
Data Driven Fault Detection for LTI SSM e(k) Σ : { x(k +1) = Ax(k)+Bu(k)+Ke(k) y(k) = Cx(k)+Du(k)+e(k) u(k) Σ y(k) Prof. Michel Verhaegen 2011-11 12 / 36
Data Driven Fault Detection for LTI SSM u(k) e(k) Σ Σ : { x(k +1) = Ax(k)+Bu(k)+Ke(k) y(k) = Cx(k)+Du(k)+e(k) y(k) Data Driven Fault Detection Identification Problem Given i/o data sequences{u(k),y(k)} N k=1 from the nominal (fault-free) system, determine a fault detection filter: ( ) r(k) = F u(k),y(k) and its test statistic. Prof. Michel Verhaegen 2011-11 12 / 36
Data equation for SI Consider Σ represented in innovation form: ˆx(k+1) = (A KC) ˆx(k)+(B KD) y(k) Φ = Cˆx(k)+Du(k)+e(k) B u(k)+ky(k) with the innovation signal e(k) zero-mean white noise with covariance matrix R e. Further, let z(t) T = [ u(t) T y(t) T], then we can write the state ˆx(t) as: ˆx(t) = Φ pˆx(t p)+ [ Φ p 1 [ B,K] Φ p 2 [ B,K] [ B,K] ] L p z(t) z(t+1). z(t+l 1) } {{ } Z t,l,1 Prof. Michel Verhaegen 2011-11 13 / 36
Data equation for SI Consider Σ represented in innovation form: ˆx(k+1) = (A KC) ˆx(k)+(B KD) y(k) Φ = Cˆx(k)+Du(k)+e(k) B u(k)+ky(k) with the innovation signal e(k) zero-mean white noise with covariance matrix R e. Further, let z(t) T = [ u(t) T y(t) T], then we can write the state ˆx(t) as: z(t p) ˆx(t) = Φ pˆx(t p)+ [ Φ p 1 [ B,K] Φ p 2 [ B,K] [ B,K] ] z(t p+1). L p } z(t 1) {{ } Z t p,p,1 Prof. Michel Verhaegen 2011-11 13 / 36
Data equation for PBSID (Chiuso 2007) Assuming Φ p = 0: Y t,l,1 = [I L (CΦ p )] ˆx(t p)+ CΦ p 1 [ B,K] CΦ p 2 [ B,K] C[ B,K] 0 CΦ p 1 [ B,K] CΦ[ B,K] Z t p,p,1 +... 0 0 CΦ L 1 [ B,K] [D,0] C[ B,K] H L,p z [D,0] Z t,l,1 +E t,l,1.. CΦ L 2 [ B,K] CΦ L 3 [ B,K] [D,0] Tz L Prof. Michel Verhaegen 2011-11 14 / 36
Data equation for PBSID (Chiuso 2007) Assuming Φ p 0: Y t,l,n [I L (CΦ p )] X t p,l,n + CΦ p 1 [ B,K] CΦ p 2 [ B,K] C[ B,K] CΦ p [ B,K] CΦ p 1 [ B,K] CΦ[ B,K]... CΦ p 1+L [ B,K] CΦ L 1 [ B,K] [D,0] C[ B,K] =O L L p H L,p z Z t p,p,n [D,0] Z t,l,n +E t,l,n.. CΦ L 2 [ B,K] CΦ L 3 [ B,K] [D,0] Tz L Prof. Michel Verhaegen 2011-11 14 / 36
Parameter identification errors in closed-loop identification Biased LS estimates Denote Ξ = [ CΦ p 1 [ B K ] C[ B K ] D ]. ] Zt p,p,n ˆΞ = Y t,1,n [ U t,1,n Z i ˆΣ e = Cov (Y t,1,n ˆΞ Z ) i Prof. Michel Verhaegen 2011-11 15 / 36
Parameter identification errors in closed-loop identification Biased LS estimates Denote Ξ = [ CΦ p 1 [ B K ] C[ B K ] D ]. ] Zt p,p,n ˆΞ = Y t,1,n [ U t,1,n Z i ˆΣ e = Cov (Y t,1,n ˆΞ Z ) i vec(ˆξ) ˆΘ contains the following errors. ˆΘ Θ = δθ+σ 1/2 ˆΘ ΣˆΘ = (Z i Z T i ) 1 ˆΣ e ǫ ǫ (0,I) Prof. Michel Verhaegen 2011-11 15 / 36
Identifying a parity relation from data (DD-PSA) Recall the data equation: Y t,l,n = [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n +Tz L Z t,l,n +E t,l,n LS estimates past I/Os Work with an (accurate) approximation: O L X t,1,n [I L (CΦ p )] X t p,l,n + Z t p,p,n = r psa k,l = (U HZ) T [ ] UHZ UHZ (P ) T (I T L y LS estimates HL,p z LS estimates Z t p,p,n, past I/Os [ ] ] SHZ 0 V T [ HZ 0 SHZ (VHZ. )T )y k,l T L u LS estimates u k,l. Prof. Michel Verhaegen 2011-11 16 / 36
Identifying a parity relation from data (DD-PSA) Recall the data equation: Y t,l,n = [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n +Tz L Z t,l,n +E t,l,n LS estimates past I/Os Get an estimate of the left null space of O L : O L X t,1,n [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n = r psa k,l = (U HZ )T [ UHZ U HZ (P ) T (I ] T L y LS estimates HL,p z LS estimates Z t p,p,n, past I/Os [ ] SHZ 0 V T [ HZ 0 SHZ )y k,l T L u LS estimates (V HZ )T u k,l. ]. Prof. Michel Verhaegen 2011-11 16 / 36
Identifying a parity relation from data (DD-PSA) Recall the data equation: Y t,l,n = [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n +Tz L Z t,l,n +E t,l,n LS estimates past I/Os Define the residual and its statistic? O L X t,1,n [I L (CΦ p )] X t p,l,n + H L,p z LS estimates H L,p z Z t p,p,n = r psa k,l = (U HZ )T [ UHZ U HZ (P ) T (I ] T L y LS estimates Z t p,p,n, past I/Os [ ] SHZ 0 V T [ HZ 0 SHZ )y k,l T L u LS estimates (V HZ )T u k,l. ]. Prof. Michel Verhaegen 2011-11 16 / 36
Disadvantages DD-PSA Approximation in the SVD AND annihilate what is known! Hz L,p Z t p,p,n = [ S HZ 0 U HZ UHZ] 0 S [ HZ V T HZ 0 (UHZ )T O L 0. (V HZ )T ]. Prof. Michel Verhaegen 2011-11 17 / 36
Disadvantages DD-PSA Approximation in the SVD AND annihilate what is known! Hz L,p Z t p,p,n = [ S HZ 0 U HZ UHZ] 0 S [ HZ V T HZ 0 (UHZ )T O L 0. Uncertainty in the residual generator (V HZ )T r psa k,l = (U HZ }{{ )T (I Ty L )y } k,l T L u u k,l. stochastic LS estimate LS estimate Nonlinear dependence of the stochastic uncertainties in r psa on the parametric errors in H L,p z, T L y, T L u. ]. k,l Prof. Michel Verhaegen 2011-11 17 / 36
Identifying a parity relation from data (FICSI) - nominal Recall the data equation: Y t,l,n = [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n +Tz L Z t,l,n +E t,l,n LS estimates past I/Os Work directly! with an (accurate) approximation: Y t,l,n Hz L,p Z t p,p,n + Tz L Z t,l,n +E t,l,n LS estimates past I/Os LS estimates r ficsi k,l = (I T L y LS estimates r ficsi k,l { )y k,l T L u LS estimates N(0,Σ L e ), fault free, N ( ϕ f,σ L e), faulty. u k,l H L,P z LS estimates z k L,p Σ L e = I L Σ e is the innovation covariance. ϕ f depends on additive faults. Prof. Michel Verhaegen 2011-11 18 / 36
Identifying a parity relation from data (FICSI) - nominal Recall the data equation: Y t,l,n = [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n +Tz L Z t,l,n +E t,l,n LS estimates past I/Os Work directly! with an (accurate) approximation: Y t,l,n Hz L,p Z t p,p,n + Tz L Z t,l,n +E t,l,n LS estimates past I/Os LS estimates r ficsi k,l = (I T L y LS estimates r ficsi k,l { )y k,l T L u LS estimates N(0,Σ L e ), fault free, N ( ϕ f,σ L e), faulty. u k,l H L,P z LS estimates z k L,p Σ L e = I L Σ e is the innovation covariance. ϕ f depends on additive faults. Prof. Michel Verhaegen 2011-11 18 / 36
Identifying a parity relation from data (FICSI) - nominal Recall the data equation: Y t,l,n = [I L (CΦ p )] X t p,l,n + H L,p z Z t p,p,n +Tz L Z t,l,n +E t,l,n LS estimates past I/Os Define the residual and its statistic Y t,l,n Hz L,p Z t p,p,n + Tz L Z t,l,n +E t,l,n LS estimates past I/Os LS estimates r ficsi k,l = (I T L y LS estimates { r k,l )y k,l T L u LS estimates N(0,Σ L e ), fault free, N ( ϕ f,σ L e), faulty. u k,l H L,P z LS estimates z k L,p Σ L e = I L Σ e is the innovation covariance. ϕ f depends on additive faults. Prof. Michel Verhaegen 2011-11 18 / 36
Cautious FICSI FICSI Scalar Example ˆr k,l = y k,l ˆT L y y k,l ˆT L u u k,l ĤL,P z z k L,p ˆr(k) = y(k) ˆdu(k) ˆΞ = Y t,1,nz i ˆd = Yt,1,NU t,1,n [ ] T Cov(ˆr k,l ) Z p (Z iz i/n T ) 1 Z p ˆΣ e Cov(ˆr(k)) = { u 2 (k)ˆσ e }+ 2 ˆσ 2 U t,1,n U t,1,n T /N e Remark: The residualˆr k,l has a bias! Prof. Michel Verhaegen 2011-11 19 / 36
of VTOL inputs: collective pitch, longitudinal cyclic pitch; outputs: horizontal velocity, vertical velocity, pitch rate, and sum of vertical velocity, pitch rate, and pitch angle. discretized for T s = 0.5 seconds, process and measurement noise, w(k), v(k): zero mean white noise, with Q w = 0.25 I 4 and Q v = 2 I 2. Prof. Michel Verhaegen 2011-11 20 / 36
Design of experiments Identification experiment closed-loop [ experiment with] N = 2000,p = 20, and 0 0 0.5 0 u(k) = y(k)+η(k), with η(k) 0 0 0.1 0.1 [ ] 1 0 zero-mean white and Q η =. 0 1 Prof. Michel Verhaegen 2011-11 21 / 36
Design of experiments Identification experiment closed-loop [ experiment with] N = 2000,p = 20, and 0 0 0.5 0 u(k) = y(k)+η(k), with η(k) 0 0 0.1 0.1 [ ] 1 0 zero-mean white and Q η =. 0 1 design and experiment p = 15,L = 10,FAR = 0.003, LQG tracking control to follow a vertical velocity of 50, biased collective pitch control: 6 4 2 0 0 100 200 300 400 500 600 Prof. Michel Verhaegen 2011-11 21 / 36
Comparison of four methods P ss. the classic model-based PSA, with (A,B,C,D,K) identified by the PBSID-OPT method of Chiuso, 2007, P mp. the DD-PSA F no. the nominal data-driven FICSI method, F rb. the cautious data-driven FICSI method. Prof. Michel Verhaegen 2011-11 22 / 36
P ss the classic model-based PSA 10 3 10 2 P ss threshold test statistics 0 100 200 300 400 500 600 samples Prof. Michel Verhaegen 2011-11 23 / 36
P mp the data-driven PSA 10 4 P mp threshold test statistics 10 3 10 2 10 1 0 100 200 300 400 500 600 samples Prof. Michel Verhaegen 2011-11 24 / 36
F rb v.s. F no FICSI 10 4 threshold F rb F no test statistics 10 3 10 2 10 1 0 100 200 300 400 500 600 samples Prof. Michel Verhaegen 2011-11 25 / 36
Related Publication 1 J. Dong, M. Verhaegen and F. Gustafsson: Data Driven Fault Detection with Robustness to Uncertain Parameters Identified in Closed Loop, CDC 2010. Prof. Michel Verhaegen 2011-11 26 / 36
Outline 1 windturbines 2 From Subspace to Fault Detection Need for a Cautious design in an IDE context Basics of closed-loop Subspace Identification 3 Prof. Michel Verhaegen 2011-11 27 / 36
The setting Sensor/Actuator Fault Isolation with dual sensor/actuator configuration No voting is possible. We want to make use of/demonstrate the possibilities of FICSI. Single transducer failure at a particular time instant. Prof. Michel Verhaegen 2011-11 28 / 36
The wind turbine model Three-bladed, horizontal-axal, and variable-speed wind turbine with a full converter, running in closed loop. 1 1 [Odgaard et al., 2009]. Prof. Michel Verhaegen 2011-11 29 / 36
Fault Scenarios and requirements # fault duration 1 β 1,m1 fixed to 5 o 2000 2100 sec 3 β 3,m1 fixed to 10 o 2600 2700 sec 4 ω r,m1 fixed to 1.4rad/s 1500 1600 sec Requirements time of detection no longer than 10 sampling instants no missed detections mean time between false detection no larger than 10 5 sampling instants Prof. Michel Verhaegen 2011-11 30 / 36
The Isolation 2 dual sensor case Consider an LTI system with 2 pairs of (identical) sensors for measuring the outputs of the system. Isolation Strategy Let the read-out of the first pair of sensors be denoted by S 1 1,S 2 1, and for the second pair by S 1 2,S 2 2, then we determine the fault detection filter: r ij(k) = F ij(u(k), [ S i 1(k) S j 2 (k)] ) Failing Sensor S1 1 S1 2 S2 1 S2 2 F 11 F 12 F 21 F 22 Prof. Michel Verhaegen 2011-11 31 / 36
Disturbances and measurement noise The turbine is disturbed by unknown wind speed V w. wind speed [m/s] 30 25 20 15 10 5 0 0 0.5 1 1.5 2 2.5 Time [sec] x 10 5 The variance of the measurement noise in the sensors, denoted as σ 2, is respectively defined as: σ 2 β 1,m1 = σ 2 β 1,m2 = σ 2 β 2,m1 = σ 2 β 2,m2 = σ 2 β 3,m1 = σ 2 β 3,m2 = 0.2, σ 2 ω g,m1 = σ 2 ω g,m2 = 0.05, σ 2 ω r,m1 = σ 2 ω r,m2 = 0.0251. Prof. Michel Verhaegen 2011-11 32 / 36
Design of the identification experiments Experimental Conditions Wind speed profile set to the mean of the real measured wind data, i.e. D v wind 12.3 in the SimuLink model, BenchMark.mdl. No extra excitation signals were added to this model. We only used the data from the first 200 seconds, i.e. N = 2 10 4. The horizons of the Fault Detection filters were chosen as p = 60,L = 50 and the FAR was set to 0.001. We only selected three output channels for the identification, i.e. β 1,m1,ω r,m1,ω g,m1. The two input channels are β r,τ g. Prof. Michel Verhaegen 2011-11 33 / 36
Example: test statistics of filter F 3 Prof. Michel Verhaegen 2011-11 34 / 36
Related Publication 1 J. Dong, M. Verhaegen: Data Driven Fault Detection and Isolation of a Wind Turbine Benchmark, IFAC 2011. Prof. Michel Verhaegen 2011-11 35 / 36
TAK FOR OPMRKSOMHEDEN Prof. Michel Verhaegen 2011-11 36 / 36