narma-l2 controller - engenharia elétrica · laboratório de automação e robótica - a....
TRANSCRIPT
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic
NARMA-L2 Controller
y(k + d) = N[y(k), y(k – 1), ..., y(k – n + 1), u(k), u(k – 1), ..., u(k – n + 1)]
Non Linear Auto-Regressive Moving Average
NARMA discrete-time model:
Narendra e Mukhopahyay, 1997: NARMA L2 Norm Model
y (k + d) = f[y(k), y(k – 1),..., y(k – n + 1), u(k – 1),..., u(k – m + 1)]
+ g[y(k), y(k – 1),..., y(k – n + 1), u(k – 1), ..., u(k – m + 1)] . u(k)
u(k) = yr (k + d) – f[y(k), y(k – 1),..., y(k – n + 1), u(k – 1),..., u(k – n + 1)]
g[y(k), y(k – 1),..., y(k – n + 1), u(k – 1),..., u(k – n + 1)]
Control Law:
Appliyng the Control Law to the NARMA-LW model results: yr (k + d) ≡ y(k + d)
y follows yr exactly!!
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic
NARMA-L2 Controller
u(k) = yr (k + d) – f[y(k), y(k – 1),..., y(k – n + 1), u(k – 1),..., u(k – n + 1)]
g[y(k), y(k – 1),..., y(k – n + 1), u(k – 1),..., u(k – n + 1)]
ANN can be used to learn f(.): the additive non-linear term
and g(.) the multiplicative non-linear term
y(k + d) = N[y(k), y(k – 1), ..., y(k – n + 1), u(k), u(k – 1), ..., u(k – n + 1)]
y(k+d)
u(k-1)
u(k-1)
u(k-np)
y(k)
y(k-1)
y(k-nq)
Delayed
Inputs
Delayed
Outputs
Time Delay
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic
NARMA-L2 controller
3
f(.)
g(.)
Switch
normalisation
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 4
Ex: Liquid Level Control
1
H2
sqrt
sqrt
1
s
h2
1
s
h1Saturação
do atuador
1/Ar
k2
k12
1/Ar
|u|
1
uh1
h1
h2
h2
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 5
Integrated Interface to Process
State Space Controller – Designed for a specififc Operating Point
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 6
State-Space Results
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 7
NARMA-L2Liquid Level Control
Purpose: compare PI and NARMA-L2 control.
Because of the square root
in the model a different
behaviour is expect for
different reference levels!
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 8
Generated Training Sets
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000
20
40
60
80
actu
ator
u(f
low
)/[c
m3 /s
ec]
Training set: Pattern=u; Target=y
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 100000
5
10
15
time/[sec]
leve
l y/[
cm]
Cover the time domain range (dynamics) and amplitude range (operating points).
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 9
NARMA-L2 tool
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 10
NARMA-L2 Liquid Level Control
0 100 200 300 400 500 600-2
0
2
4
6
8
10
12
14
ref
y-NARMAL2
y-PID
-PI gives no error in steady state, but with very different dynamics.
-NARMA-L2 has almost the same behaviour in all operating points.
Laboratório de Automação e Robótica - A. Bauchspiess – Soft Computing - Neural Networks and Fuzzy Logic 11
PI vs NARMA-L2 Control Signal
- NARMA-L2 uses often the maximum
available u.
- PI calculate signals that are clamped
by the saturation.
- NARMA-L2 tends to “chattering”
-NARMA-L2 design parameters:
sampling rate
input/output delays
training sets
training algorithms
0 100 200 300 400 500 600-2
0
2
4
6
8
10
12
14
level y/[
cm
]
NARMA-L2 vs PI control Liquid Level
0 100 200 300 400 500 600-100
-50
0
50
100
150
time/[sec]
u/[
cm
3/c
m]
ref
y-NARMAL2
y-PID
NARMA-L2 can be trained
with real data!!
Real processes are quite
more complex than models!