You are on page 1of 35

Fault Detection and Diagnosis in Engineering Systems

Basic concepts with simple examples

Janos Gertler
George Mason University Fairfax, Virginia

Outline
What is a fault What is diagnosis Diagnostic approaches
Model - free methods Principal component approach Model - based methods Systems identification

Application example: car engine diagnosis

What is a fault
Fault: malfunction of a system component
- sensor fault - actuator fault - plant fault - bias - parameter change - leak, etc.

Symptom: an observable effect of a fault Noise and disturbance: nuissances that may affect the symptoms

What is a fault
actuator command

actuator fault

leak

sensor faults

sensor readings

Sensor fault: reading is different from true value Actuator fault: valve position is different from command Plant fault: leak

What is fault diagnosis


Fault detection: indicating if there is a fault Fault isolation: determining where the fault is Detection + Isolation = Diagnosis Fault identification:
Determining the size of the fault Determining the time of onset of the fault

Model-free methods
Fault-tree analysis
- cause-effect trees analysed backwards

Spectrum analysis
- fault-specific frequencies in sound, vibration, etc

Limit checking
- checking measurements against preset limits

Limit checking
flow l1 s1 y1 l2 s2 y2 l3 s3 y3

y1 S1 fault Leak3 Leak2 Leak1 High/low flow off normal normal off off

y2 normal normal off off off

y3 normal off off off off

Limit checking Easy to implement Requires no design BUT To accommodate normal variations, must have limited fault sensitivity Has limited fault specificity (symptom explosion)

Principal Component Approach


Modeling phase: based on normal data
- determine the subspace where normal data exists (representation space, RepS) - determine the spread (variances) of data in the RepS

Monotoring phase: compare observations to representation space


- if outside RepS, there are faults - if inside RepS but outside thresholds, abnormal operating conditions

Principal Component Approach


u
flow

y1 = u y2 = u y1 y2

y2 Representation space Fault Normal spread y1 u

Principal component modeling


Centered normalised measurements x(t) = [x1(t) xn(t)] Data matrix: Covariance matrix: X = [ x(1) R = XX/N
x(2) x(N)]

Compute eigenvalues 1 n and eigenvectors q1 qn q1 qk , kn, belonging to nonzero 1 k ,, span RepS 1 k are the variances in the respective directions

Principal Components Residual Space


Residual Space (ResS): complement of Representation Space, spanned by the e-vectors qk+1 qn , belonging to (near) - zero e-values Residual = (Observation) (Its projection on RepS) Residuals exist in ResS ResS provides isolation information - directional property (fault-specific response directions) - structural property (fault-specific Boolean structures)

Residual Space Directional Property


u u y1
y2 observation Repres. Space q1 y1
flow

y1
residual

y2

y2 on u q3 q2 on y2

on y1

Residual Space

Residual Space Structural Property


u r1 y 1 y 2 y 1 u u

r2 y2

r3 y1

y2

r1, r2, r3 : residuals obtained by projection u r1 r2 r3 0 1 1 y 1 1 1 0 y 2 1 0 1 Structure matrix Fault codes

Model-Based Methods
faults f(t) disturbances d(t) noise n(t)

outputs y(t) inputs u(t) parameters

Complete model: Nominal model: Models are:

y(t) = f[u(), f(), d(), n(), ] y^(t) = f[u(), ]

static/dynamic linear/nonlinear

Obtaining Models
First principle models Empirical models - classical systems identification - principal component approach - neuronets

Analytical Redundancy
d(t) u(t) PLANT + e(t) MODEL y^(t)
RESIDUAL
PROCESSING

f(t)

n(t) y(t) r(t)

Primary residuals: Processed residuals:

e(t) = y(t) y^(t) r(t)

Analytical redundancy
f(t) d(t) u(t) PLANT n(t) y(t)

RESIDUAL GENERATOR r(t)

Residual Properties
Detection properties - sensitive to faults - insensitive to disturbances (disturbance decoupling) - insensitive to model errors (model-error robustness) perfect decoupling under limited circumstances optimal decoupling - insensitive to noise noise filtering statistical testing

Residual Properties
Isolation properties - selectively sensitive to faults structured residuals directional residuals optimal residuals perfect decoupling

Residual Generation
u u
flow

Model:
y 2

y1 y1

y1 = u + u + y1
y2 u r1 r2 r3 1 1 0

y2 = u + u + y2
y 1 1 0 1 y 2 0 1 1

Primary residuals: e1 = y1 u = u + y1 e2 = y2 u = u + y2 Processed residuals: r1 = e1 = u + y1 r2 = e2 = u + y2 r3 = e2 e1 = y2 y1

Structured residuals

Residual Generation
u u
flow

Model:
y 2

y1 y1

y1 = u + u + y1
y2 on y1 r3 r2

y2 = u + u + y2

Primary residuals: e1 = y1 u = u + y1 e2 = y2 u = u + y2 Processed residuals: r1 = e1 = u + y1 r2 = e2 = u + y2 r3 = e1 e2 = y1 y2

r1

on u

on y2 Directional residuals

Linear Residual Generation Methods


Perfect decoupling - direct consistency relations - parity relations from state-space model - Luenberger observer - unknown input observer Approximate decoupling - the above with singular value decomposition - constrained least-squares - H-infinity optimization

Linear Residual Generation Methods

Under identical conditions (same plant, same response specification) the various methods lead to identical residual generators

Dynamic Consistency Relations


System description: y(t) = M(q)u(t) + Sf(q)f(t) + Sd(q)d(t) q : shift operator Primary residuals: e(t) = y(t) M(q)u(t) = Sf(q)f(t) + Sd(q)d(t) Residual transformation: r(t) = W(q)e(t) = W(q)[Sf(q)f(t) + Sd(q)d(t)]

Dynamic Consistency Relations


Response specification: r(t) = f(q)f(t) + d(q)d(t) f(q) : specified fault response (structured or directional) d(q) : specified disturbance response (decoupling) W(q)[Sf(q) Sd(q)] = [f(q) Solution for square system: W(q) = [f(q) d(q)] [Sf(q) Sd(q)] -1 d(q)]

Dynamic Consistency Realtions


Realization: The residual generator W(q) must be causal and stable; [Sf(q) Sd(q)] -1 is usually not so Modified specification: W(q) = [f(q) d(q)] (q) [Sf(q) Sd(q)] -1 (q) : response modifier, to provide causality and
stability without interfering with specification

Implementation: inverse is computed via the fault system matrix

Diagnosis via Systems Identification


Approach: - create reference model by identification - re-identify system on-line discrepancy indicates parametric fault Difficulty: discrete-time model parameters are nonlinear functions of plant parameters for small faults, fault-effect linearization continuous-time model identification (noise sensitive or requires initialization)

Applications
Very large systems - Principal Components are widely used in chemical plants - reliable numerical package is available An intermediate-size system: rain-gauge network in Barcelona, Spain (structured parity relations) Aerospace: traditionally Kalman filtering

Applications
Mass-produced small systems: on-board car-engine diagnosis car-to-car variation (model variation robustness) - GM: parity relations - Ford: neuronets - Daimler: parity relations + identification Many published papers with application to are just simulation studies

GM GMU On-Board Diagnosis Project


OBD-II: any component fault causing emissions (CH, CO, NOX) go 50% over limit must be detected on-line Pilot project: intake manifold subsystem (THR, MAP, MAF, EGR) Structured parity relations based on direct identification After more in-house development, this is being gradually introduced on GM cars

Filtered and integrated residual with fault

On-board report MAP fault

GM fleet experiment
Fleet of identical vehicles (Chevy Blazer) available at GM Collect data from 25 vehicles Identify models from combined data from 5 vehicles Test on data from 25 vehicles Residual means and variances vary increase thresholds (sacrifice sensitivity) Only a 50% increase is necessary

Fault sensitivities GM fleet experiment


Critical fault sizes for detection and diagnosis (fleet experiment) Thr detection diagnosis 2% 6% Iac Egr Map Maf 2% 8%

10% 12% 5% 20% 17% 7%

You might also like