Post on 03-Jun-2018
8/12/2019 Gertler Talk
1/35
Fault Detection and Diagnosis
in Engineering SystemsBasic concepts with simple examples
Janos Gertler
George Mason University
Fairfax, Virginia
8/12/2019 Gertler Talk
2/35
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
8/12/2019 Gertler Talk
3/35
What is a fault
Fault: malfunction of a system component
- sensor fault - bias
- actuator fault - parameter change
- plant fault - leak, etc.
Symptom: an observable effect of a fault
Noise and disturbance: nuissances that mayaffect the symptoms
8/12/2019 Gertler Talk
4/35
What is a fault
actuator command
actuator leak sensor faults
fault
sensor readings
Sensor fault: reading is different from true value
Actuator fault: valve position is different from command
Plant fault: leak
8/12/2019 Gertler Talk
5/35
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
8/12/2019 Gertler Talk
6/35
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
8/12/2019 Gertler Talk
7/35
flow
l1 l2 l3
s1 s2 s3
y1 y2 y3
Limit checking
y1 y2 y3
S1 fault off normal normal
Leak3 normal normal off
Leak2 normal off off
Leak1 off off off
High/low flow off off off
8/12/2019 Gertler Talk
8/35
Limit checking
Easy to implement
Requires no design
BUT
To accommodate normal variations, must have
limited fault sensitivity
Has limited fault specificity (symptom explosion)
8/12/2019 Gertler Talk
9/35
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 torepresentation space
- if outside RepS, there are faults
- if inside RepS but outside thresholds, abnormaloperating conditions
8/12/2019 Gertler Talk
10/35
Principal Component Approach
u flow y1 = u
y2 = u
y1 y2
y2
Representation space
Fault
Normal spread
y1
u
8/12/2019 Gertler Talk
11/35
Principal component modeling
Centered normalised measurementsx(t) = [x1(t) xn(t)]
Data matrix: X = [ x(1) x(2) x(N)]
Covariance matrix: R = XX/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
8/12/2019 Gertler Talk
12/35
Principal Components Residual Space
Residual Space (ResS):
complement of Representation Space, spanned by thee-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)
8/12/2019 Gertler Talk
13/35
Residual Space Directional Property
u flow
uy1 y2
y1 y2
y2
residualobservation
Repres. Space
q1y1
u
on u
q3q2
on y1 on y2
Residual Space
8/12/2019 Gertler Talk
14/35
Residual Space Structural Property
u u u
r2 r3r1
y1 y2 y1 y2 y1 y2
r1, r2, r3 : residuals obtained by projection
u y1 y2 Structure matrix
r1 0 1 1r2 1 1 0 Fault codes
r3 1 0 1
8/12/2019 Gertler Talk
15/35
Model-Based Methodsfaults f(t)
disturbances d(t) noise n(t)
outputs y(t)
inputs u(t) parameters
Complete model: y(t) = f[u(), f(), d(), n(), ]
Nominal model: y^(t) = f[u(), ]Models are: static/dynamic
linear/nonlinear
8/12/2019 Gertler Talk
16/35
Obtaining Models
First principle models
Empirical models
- classical systems identification
- principal component approach
- neuronets
8/12/2019 Gertler Talk
17/35
Analytical Redundancyd(t) f(t) n(t)
u(t) y(t)
PLANT
+
e(t) RESIDUAL r(t)
PROCESSING
-MODEL y^(t)
Primary residuals: e(t) = y(t) y^(t)
Processed residuals: r(t)
8/12/2019 Gertler Talk
18/35
Analytical redundancyf(t)
d(t) n(t)
u(t) y(t)PLANT
RESIDUAL
GENERATOR
r(t)
8/12/2019 Gertler Talk
19/35
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
8/12/2019 Gertler Talk
20/35
Residual Properties
Isolation properties
- selectively sensitive to faults
structured residuals perfect
directional residuals decoupling optimal residuals
8/12/2019 Gertler Talk
21/35
Residual Generation
u flow Model:
u y1 = u + u + y1y1 y2
y1 y2 y2 = u + u + y2
Primary residuals:e1 = y1 u = u + y1 u y1 y2
e2 = y2 u = u + y2 r1 1 1 0
Processed residuals: r2 1 0 1
r1 = e1 = u + y1 r3 0 1 1
r2 = e2 = u + y2
r3 = e2 e1 = y2 y1 Structured residuals
8/12/2019 Gertler Talk
22/35
Residual Generation
u flow Model:
u y1 = u + u + y1y1 y2
y1 y2 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
r3on y1
r2
on ur1
on y2
Directional residuals
8/12/2019 Gertler Talk
23/35
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
8/12/2019 Gertler Talk
24/35
Linear Residual Generation Methods
Under identical conditions
(same plant, same response specification)
the various methods lead to
identical residual generators
8/12/2019 Gertler Talk
25/35
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)]
8/12/2019 Gertler Talk
26/35
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) d(q)] Solution for square system:
W(q) = [f(q) d(q)] [Sf(q) Sd(q)] -1
8/12/2019 Gertler Talk
27/35
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
8/12/2019 Gertler Talk
28/35
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)
8/12/2019 Gertler Talk
29/35
Applications
Very large systems
- Principal Components are widely used inchemical plants
- reliable numerical package is available
An intermediate-size system: rain-gauge
network in Barcelona, Spain (structured parity
relations)
Aerospace: traditionally Kalman filtering
8/12/2019 Gertler Talk
30/35
Applications
Mass-produced small systems:
on-board car-engine diagnosiscar-to-car variation (model variation robustness)
- GM: parity relations
- Ford: neuronets
- Daimler: parity relations + identification
Many published papers with application toare just simulation studies
8/12/2019 Gertler Talk
31/35
GM GMU On-Board Diagnosis Project
OBD-II: any component fault causing emissions
(CH, CO, NOX) go 50% over limit must bedetected 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 beinggradually introduced on GM cars
8/12/2019 Gertler Talk
32/35
Filtered and integrated residual with fault
8/12/2019 Gertler Talk
33/35
On-board report MAP fault
8/12/2019 Gertler Talk
34/35
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 vehiclesResidual means and variances vary
increase thresholds (sacrifice sensitivity)
Only a 50% increase is necessary
8/12/2019 Gertler Talk
35/35
Fault sensitivities GM fleet experiment
Critical fault sizes for detection and diagnosis
(fleet experiment)
Thr Iac Egr Map Maf
detection 2% 10% 12% 5% 2%
diagnosis 6% 20% 17% 7% 8%