Você está na página 1de 20

Applied Nonlinear Control Parameter Estimation

Paice, Gallestey via EKF


(Extended Kalman Filter)
© ABB Corporate Research Ltd - 1
Outline of Presentation

n Motivation
n Nonlinear State Estimation
n Parameter Estimation as augmented state estimation
n Example: Backlash
n ABB Implementation: PEPP Toolbox
n Summary and Conclusions
© ABB Corporate Research Ltd - 2
Motivation

n Diagnostics: Better utilisation of assets


n Examples are: Gas path diagnosis for power plants
n Wear of motors and gear-boxes in robots
n Allows for better planning of maintenance operations

n Many industries are gradually changing to model-based controllers


n Examples are: Waste To Energy and Cement Kilns
n Previous control approaches: Heuristics / Fuzzy-Logic
n Model-based controllers depend on accurate model parameters
© ABB Corporate Research Ltd - 3
Nonlinear observers based on Extended Kalman Filter
n Estimation of non observable x(t + 1) = f (t , x(t )) + w(t )
system states and parameters: y (t ) = h(t , x(t )) + v(t )
n monitoring,
n tracking,
x (t + 1) = f (t , x (t )) + N (t )[ y (t ) - h(t , x (t )]
) ) )
n model parameter tuning.
n Uses ) )
N (t ) = F (t , x ) P (t ) H T (t , x ) ´
n mathematical model,
n measurements,
[ ) )
H (t , x ) P(t ) H T (t , x ) + Q v (t ) ]
-1

n noise characteristics. ) )
P (t + 1) = F (t , x ) P (t ) F T (t , x ) + Q w (t ) -
n Based on
nExtended Kalman Filter
[ ) )
]
N (t ) H (t , x ) P(t ) H T (t , x ) + Q v (t ) N T (t )
© ABB Corporate Research Ltd - 4

n CPU intensive, but feasible on ¶f ¶h


F (t , x) = |t , x H (t , x) = |t , x
modern computers ¶x ¶x
Q (t ) = Ew(t ) w(t ) Q (t ) = Ev(t )v(t )T
w T v
Basic Predictor-Corrector Extended Kalman Filter

At time t k , given xˆ (t k ), y (t k ), P (t k ), Q, R, Data at each time step

for t Î [t k , t k-+1 ] :
xˆ& = f ( xˆ ), Step forward in time for
estimates and covariances
¶f ¶f '
P& = ( xˆ (t k )) P + P ( xˆ (t k )) + Q
¶x ¶x

e(t k +1 ) = y (t k +1 ) - h( xˆ (t k-+1 )) Estimation Error

¶h ¶h'
A(t k +1 ) = R + ( x(t k-+1 )) P (t k-+1 ) ( x(t k-+1 )) Estimation Error Covariance
¶x ¶x

¶h'
K (t k +1 ) = P (t k-+1 ) ( x (t k-+1 )) / A(t k +1 ) Kalman Gain
¶x
© ABB Corporate Research Ltd - 5

xˆ (t k +1 ) = xˆ (t k-+1 ) + K (t k +1 )e(t k +1 )
Final Update
-
P (t k +1 ) = P (t k +1 ) - K (t k +1 ) A(t k +1 ) K ' (t k +1 )
Implementation/Algorithmical issues
When does this algorithm work?
n Very difficult question in general. Almost no comprehensive theory.
n Equivalent to the controllability of a nonlinear system by output feedback
n “Detectability” and “stabilizability” of the linearizations are necessary but not suffcient
conditions

Is the data required always available?


n Main problem is selecting Q and R. They are “tuning” parameters.
n Some adaptive (self-tuning) methods treat the system as a nonlinear plant to be
“stabilized” via Q and R. Model based methods no adequate.
n Higher order filters are used when strong nonlinearities render EKF useless.

Implementation issues
© ABB Corporate Research Ltd - 6

n Checks for “detectability/stabilizability” implemented


n Numerous “numerical safety” checks needed.
n Speed via “C/Fortran” coding in critical sectors.
Parameter estimation via EKF

u plant, y continous-time model with


system parameters as augmented
states:
x& = f ( x, u , p )
Q,R Kalman filter
p& = 0
+
discrete-time updates e y e = h ( x, u , p )
- discrete-time updates of
plant model states and parameters
ye
•states x
Kalman filter theory:
•parameters p
recursive estimation of
states and parameters
© ABB Corporate Research Ltd - 7

given process and


x,p measurement covariances
(used for control, monitoring, diagnosis,…)
© ABB Corporate Research Ltd - 8 State-Augmented Extended Kalman Filter
Example: estimating heat transfer coefficients
n Simple heat exchanger model
( ) (
T&g = a g Tm - Tg + m g Tgi (t ) - Tg )
T&m = a g (Tg - Tm ) + a s (Ts - Tm )
T&g = a s (Tm - Ts ) + m s (Tsi (t ) - Ts )

T gi , Tsi : given
y = [Tg ; Tm ; Ts ] + v (t ) : observed
a g , a s : to be estimated
© ABB Corporate Research Ltd - 9

n Generalized states are Tm , T g , Ts , a g , a s


n EKF appropriate, robust!

n Noise covariances key for success


ABB Implementation: PEPP Toolbox

n contains estimation filters based on Kalman filter theory which are


appropriate for time-varying nonlinear models
n EKF (Extended Kalman filter)
n model approximated by linearization
(first-order accuracy)
n UKF (Unscented Kalman filter)
n distribution of estimated states approximated by sample points propagated
through the model
(higher-order accuracy)
n AEKF (Adaptive Extended Kalman filter)
n noise covariance parameters adaptively tuned
© ABB Corporate Research Ltd - 10

n Filter chosen depending on model and data


n Mature toolbox, available internally (User Guide and executables)
n Plug-and-play for new models (DLLs)
Example: Identification of Backlash

n Backlash limits control


performance.
n Can lead to limit cycles
n A diagnostics tool for estimating
the size of the backlash can save
manual inspection work

Normal step response


The system does
not settle - in best
case steady-state
© ABB Corporate Research Ltd - 11

error

drifting through
backlash region
Identification of Backlash
tm Transmission
Torque
KR
f2(.)
Jm Ja
Friction D
Torque
f1(.) Motor Position,Speed Arm Position,Speed
x1, x2 x3, x4

n Extended Kalman Filter


n State Augmentation
n Nonlinear parameter estimation
© ABB Corporate Research Ltd - 12

n Handles varying parameters


PEPP Step 1: Model
Mass-Spring-Damper model Estimated states:
• Position and speed of both motor
and arm

Augmented states (parameters):


Spring+Backlash force (tk)

Measurements:
• positions of motor (x1) and arm (x2)
• motor position (x1) and speed (x3)

Input:
force (u)
x&1 = x3
t& K = 0
x&2 = x4
© ABB Corporate Research Ltd - 13

x&3 =
1
Jm
( ( )
u - D x3 - x4 -t K -t f - K r x1 )
y1 = x1
&x 4 =
1
Ja
(( )
D x3 - x4 +t K ) y2 = x2
PEPP Step 2: Simulink Model
Implementation of differential equation, e.g. as simulink model
© ABB Corporate Research Ltd - 14
PEPP Step 3: Real-Time Workshop
Mapping from Simulink to c-file to generate .dll
© ABB Corporate Research Ltd - 15
PEPP Step 4: Collect Measurements
Measurements: motor position (x1) and arm position (x2)
Here: simulated and disturbed by sensor noise
© ABB Corporate Research Ltd - 16
PEPP Step 5: Run Estimation Filters

estimated parameter estimated map


(spring+backlash force) vs. time motor/arm position difference vs.
spring+backlash torque
© ABB Corporate Research Ltd - 17
Parameter Estimation Toolbox – Soft Sensor

Process
Measurements

Parameter
Dynamic Real-Time
Estimation
Model Workshop
Toolbox
(Simulink) (DLL)
(EXE)

Soft Sensor
© ABB Corporate Research Ltd - 18

Off-Line Real-Time
Optimiser Controller
Summary Toolbox

n PEPP toolbox handles nonlinear dynamic/static models.


Estimation algorithms are based on Kalman filter theory.
n PEPP toolbox tracks changing parameters.
Makes parameter vs. time and state vs. time available
Characteristic maps can be generated with this data
n PEPP has modular structure
Algorithms in .exe and model description as .dll
.dll can be created from e.g. MATLAB, Simulink, or C++ code
n Minimal effort to apply toolbox to new domains
© ABB Corporate Research Ltd - 19
Summary and Conclusions

n Accurate parameter estimates are essential for any model-based


simulation, control and optimisation, diagnostics

n Extended Kalman filter provides nonlinear state estimation


n By augmenting the states, parameter estimation is feasible.

n Demonstrated applications in several areas: support for other


projects (GPD, comp wash, cement, waste-to-energy, power
systems)
© ABB Corporate Research Ltd - 20

n Open Problem and Key limitation: How to prove validity of the


estimate.

Você também pode gostar