Nuevos algoritmos de control PID basado en eventos y su posible

Anuncio
Nuevos algoritmos de control PID basado en eventos
y su posible extensión al control en red
José Sánchez, Sebastián Dormido
Departamento de Informática y Automática
UNED
Antonio Visioli
Departamento de Electrónica para la Automatización
Università degli Studi di Brescia
Valencia - Abril - 2009
Contenido
1.
Introducción
2.
Algoritmo A: basado en un modelo FOTD
3.
Algoritmo B: basado en interpolaciones
4.
Extensiones para el control en red
5.
Líneas de trabajo futuras
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
1. Introducción
•
Los agentes intervinientes en el lazo de control se activan por eventos:
– Asíncronos: Cambio de nivel de una variable:
• Externos: entradas externas (p.e., referencia).
• Internos: variables de estado (p.e, nivel, integrador).
– Síncronos: timers (condición de seguridad).
Controlador
Proceso
∆u
r (t )
∆ event
e-based condition
u-based condition
C
u (t )
ZOH
G
y (t )
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
1. Introducción
•
Condiciones de muestreo basadas en el error:
– Send-on-delta (clásico):
– Integrated send-on-delta:
– Linear predictor:
– Integrated linear-predictor:
– Energy:
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
1. Introducción
•
Ventajas:
– Cercano a la forma en que la naturaleza opera:
• Regulación de la ducha, equilibro del ciclista, distancia seguridad al conducir, …
– Reduce el número de transmisiones sensor-controlador-actuador.
– Reduce la potencia de cálculo necesaria.
– Interesante para su aplicación en el control en red.
•
Desventajas:
– Existencia de ciclos límites, oscilaciones, error en régimen permanente.
– Ausencia de desarrollos teóricos.
•
Posibles abordajes como:
• Sistemas de control no lineal.
• Sistemas lineales “piecewise”.
• Sistemas multifrecuencia.
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
1. Introducción
• Comparativa experimental en un tanque simple:
- “Event-Based Control and Wireless Sensor Network for Greenhouse Diurnal Temperature Control: A
Simulated Case Study”, IEEE EFTA’08.
- “Comparative study of event-based control strategies: An experimental approach on a simple tank”,
ECC'09.
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Considera la existencia de una banda libre de error: αy1 ≤ y1 ≤ β y1
•
Arquitectura basada en dos tareas desacopladas:
– Tarea 1: Seguimiento del punto de consigna (acción proporcional).
– Tarea 2: Rechazo a perturbaciones (acción integral).
•
Tarea 1 (acción proporcional):
– Se plantea una acción de control en lazo abierto.
– Se calcula un control proporcional equivalente basandonos en un FOTD.
– Se obtiene Kp y se cierra el lazo en dos puntos.
•
Tarea 2 (acción integral):
– Se activa cuando se abandona la banda libre de error.
– Se calcula cuando la integral del error supera un cierto delta.
•
Acoplamiento de las dos tareas + acción derivativa.
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Tarea 1: Seguimiento de referencia (proporcional):
y and u
u ff
K − Ls
P( s) =
e
Ts + 1
y1
y1 / K
C (s) = K p
y(τ )
Lτ
time
L +τ
 u ff
u ff (t ) = 
 y1 / K
J. Sánchez, S. Dormido, A. Visioli
if
if
t <τ
t ≥τ
Control PI basado en eventos
2. Algoritmo A
•
Tarea 1: Seguimiento de referencia (proporcional):
y and u
K − Ls
P(s) =
e
Ts + 1
u ff
y1
y1 / K
C (s) = K p
y(τ )
Lτ
L +τ
time
u p = K p ( y1 − y (τ ) )
u p = K p y1
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Algoritmo para tarea 1:
1. Determinar los parámetros K, T y L del proceso.
2. Determinar la ganancia proporcional mediante:
(
)
(
 KK p 2 − KK p + 1 


1

 = L − T log
− T log1 −
2
 KK p 


KK
p




3. Determinar el valor de ∆1 := y (τ )
)
y enviarlo al sensor.
4. Aplicar la referencia en t=0 y aplicar el primer valor de la acción proporcional:
u p = K p y1
5. Cuando
y (t ) = ∆1 aplicar el segundo valor de la acción proporcional:
u p = K p ( y1 − ∆1 )
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Ejemplo tarea 1:
P( s ) = (s 2 + 2s + 1) −1
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Ejemplo tarea 1:
P ( s ) = (s + 1) −4
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Tarea 2: Rechazo a perturbaciones (integrador):
u p = K p ( y1 − ∆1 )
–
La acción proporcional se mantiene constante en
–
El integrador se habilita al entrar en la banda
–
y se activa siempre que IE > δIE.
–
Es equivalente a : NL1(α, β) + Integrador + NL2 (δIE, Kp, Ti)
e
e′
NL1 (y1, α, β)
J. Sánchez, S. Dormido, A. Visioli
1/s
αy1 ≤ y1 ≤ βy1
IE
ui
NL2 (δIE, Kp, Ti)
Control PI basado en eventos
2. Algoritmo A
•
Ejemplo tarea 2:
P( s ) = (s 2 + 2s + 1) −1
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Ejemplo tarea 2: P ( s ) = (s + 1) −4
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Acoplamiento de tareas (seguimiento referencia y rechazo perturbaciones)
–
–
El problema es habilitar el integrador durante la tarea 1.
Las perturbaciones positivas no son problema.
IAE> Â0
t
−L 

− lower
Aˆ 0 = t lower ⋅ ylower − KK p [ y1 − y (τ )] t lower − L − T + Te T 




J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
2
−1
Ejemplo: P( s) = (s + 2s + 1)
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Ejemplo:
P ( s) = (s + 1) −4
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
•
Otra propuesta para el acoplamiento:
–
Redefinición de la banda basada en la respuesta escalón del modelo.
Basada en la redefinición de
la banda de error mediante
el FOTD
P( s ) = (s 2 + 2s + 1) −1
Basada en el cálculo del
área de error del FOTD
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
Lógica de detección eventos tarea A
- Nuevo y1
- y(t) >= y(τ)
up
P
+
e
I
u
ui
Lógica de detección eventos tarea B
|IE(tcurrent) – IE(tlast)| >= δIE
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
Ejemplo: P( s ) = (s 2 + 2s + 1) −1
•
0
2
-0.05
1.5
-0.1
ui
2.5
1
-0.15
0.5
-0.2
0
0
5
10
15
20
25
30
35
40
45
50
-0.25
-0.7
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
IE
w = 0.2
Ti=max{8L,T}=4.23
J. Sánchez, S. Dormido, A. Visioli
δIE =0.02
deadband = 1±0.01
Control PI basado en eventos
0
2. Algoritmo A
Ejemplo : P( s ) = (s 2 + 2s + 1) −1
•
0.05
2.5
0
2
-0.05
-0.1
1.5
ui
-0.15
-0.2
1
-0.25
-0.3
0.5
-0.35
0
0
5
10
15
20
25
30
35
40
45
50
-0.4
-0.25
-0.2
-0.15
-0.1
-0.05
0
0.05
IE
w = 0.2
Ti=0.3*max{8L,T}=1.27
J. Sánchez, S. Dormido, A. Visioli
δIE =0.02
deadband = 1±0.01
Control PI basado en eventos
0.1
2. Algoritmo A
Ejemplo: P( s ) = (s 2 + 2s + 1) −1
•
20
20
15
15
10
10
5
ui
5
0
0
-5
-5
-10
-10
-15
-15
0
5
10
15
w = 0.2
20
25
30
35
40
45
50
Ti=0.1*max{8L,T}=0.423
J. Sánchez, S. Dormido, A. Visioli
-20
-4
-3
δIE =0.02
-2
-1
0
IE
1
2
3
deadband = 1±0.01
Control PI basado en eventos
4
2. Algoritmo A
• Equivalencia para desarrollo de herramienta de análisis y diseño:
e′
y1
-
e
1/s
ui
IE
NLi2 (δIE, Kp, Ti)
NLi1 (y1, α, β)
e′
Kp
y
+
G
up
NLp (y1, yτ)
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
2. Algoritmo A
Ejemplo: P( s ) = (s 2 + 2s + 1) −1
•
2.5
2.5
2
2
1.5
1.5
1
1
0.5
0.5
0
0
0
5
10
15
20
25
30
35
40
45
50
0
δIE =0.02
10
15
20
25
30
35
40
45
50
Con acción derivativa
Sin acción derivativa
w = 0.2 Ti=max{8L,T}=4.23
5
Td=2Ti
J. Sánchez, S. Dormido, A. Visioli
δder =0.01
deadband = 1±0.01
Proporcional = 2
Integral= 39
Derivativa = 671
Control PI basado en eventos
2. Algoritmo A
•
Ejemplo: P( s ) = (s 2 + 2s + 1) −1
w = 0.2 Ti=max{8L,T}=4.23
δIE =0.02
Td=2Ti
J. Sánchez, S. Dormido, A. Visioli
δder =0.01
deadband = 1±0.01
Proporcional = 2
Integral= 39
Derivativa = 671
Control PI basado en eventos
2. Algoritmo A
ud
eɺ
s
NLd (δe, Kp, Td)
y1
-
e
e′
1/s
NLi1 (y1, α, β)
ui
IE
y
+
G
NLi2 (δIE, Kp, Ti)
e′
Kp
up
NLp (y1, yτ)
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
3. Algoritmo A (red)
•
Enfoque basado en eventos lleva intrínseco el concepto de retardo:
i +δ t
∫
e(t )dt =δ IE
e(t + δ t ) − e(t )
i
•
δt
≈ δ eɺ
Algunas consideraciones:
– Retardos variables en ambos sentidos.
– Posible pérdida de información.
– ¿Cuánta “inteligencia” o “lógica de control” otorgamos al sensor y al actuador?
– Control en red basado en paquetes:
• Envío de más información por paquete en ambos sentidos:
– Sensor-controlador: trayectoria desde último envío.
– Controlador-actuador: secuencia de acciones de control posibles y futuras.
• Mantenemos un enfoque basado en deltas (integral del error y de la derivada)
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
3. Algoritmo A (red)
•
Intercambio de información entre agentes de control:
–
–
–
–
Sensor envía cuando actuador recibe.
Paquete sensor: petición de acciones de control.
Paquete controlador: <acción integrales> (horizonte móvil)
Actuador:
• Podría aplicar uis mientras no llegue nueva información de control.
• Lleva estado interno del integrador.
ui4
ui4
4δ IE
4δ IE
ui7
7δ IE
J. Sánchez, S. Dormido, A. Visioli
U =< ui1 , ui 2 ,..., ui k >
ui k =
Kp
δ IE ⋅ k
Ti
Control PI basado en eventos
3. Algoritmo A (red)
•
Algunas mejoras:
– Sensor: envía paquete con trayectoria desde último envío.
– Controlador:
• Estima trayectoria futura (lineal, splines, modelo)
• Envía pares acciones integrales + derivativas alrededor trayectoria estimada.
• Límite de información dependiente del tamaño del paquete.
– Actuador:
• Necesita conocer valor del proceso y tiempo transcurrido.
• Calcula deltas transcurridos desde último envío y accede al paquete de control.
• Realiza lo mismo cada delta hasta que recibe nuevo paquete de control.
U = [< ui1 , ud1 >< ui1 , ud 2 >< ui2 , ud1 > ... < uin , ud m >]
< uii , ud j >≡<
J. Sánchez, S. Dormido, A. Visioli
Kp
Ti
δ IE ⋅ i, K pTd δ eɺ ⋅ j >
Control PI basado en eventos
3. Algoritmo A (en red)
•
Hay una equivalencia entre las no linearidades y los retardos expresadas en
deltas:
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
4. Algoritmo B
•
Basado en la interpolación mediante splines de la salida del proceso.
•
Sensor (basado en eventos):
– Envía información según política de muestreo.
•
Controlador (basado en tiempo):
– Si no recibe información del sensor, se interpola por splines cúbicos.
– Si recibe, se utiliza para actualizar la información de la planta.
– Los valores pasados se utilizan para la derivativa.
y
∆
∆
∆
∆
t
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
4. Algoritmo B
•
Ejemplo: P ( s ) = (s + 1)
−2
4
2
0
-2
-4
-6
-8
-10
0
1
2
3
4
J. Sánchez, S. Dormido, A. Visioli
5
t
6
7
8
9
10
Control PI basado en eventos
4. Algoritmo B
•
Ejemplo: P ( s ) = ( s + 1)
−4
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
5
10
15
J. Sánchez, S. Dormido, A. Visioli
20
t
25
30
35
40
Control PI basado en eventos
5. Líneas de trabajo
•
Experimental:
– Depurar y completar PIs con elementos propios de un PI industrial.
– Aplicación de algoritmos PI a sistemas reales:
• Invernadero (red wireless, Mica motes, TinyOS).
• Sistema tanque sencillo (local + red TCP).
– Sistema de control jerárquico basado en eventos de dos niveles para ahorro de
energía en viviendas:
• Control PID.
• Control predictivo.
•
Teórica:
– Algoritmo A: Desarrollo en SysQuake de herramienta análisis y diseño:
• PID eventos ≡ PID * NLs
– Algoritmo B: Seguir trabajando.
– Extensión de A y B al control en red.
– Formalización como sistemas lineales “piecewise”.
J. Sánchez, S. Dormido, A. Visioli
Control PI basado en eventos
Descargar