CLASEPC3
CLASEPC3
CLASEPC3
1 Modelado de Procesos
Identificación Paramétrica
2
Introducción Modelado de Procesos
3
Secuencia de Lecturas
Modelado de Procesos
Motivación
Identificación Mínimos Cuadrados No
Recursivo
o Ejemplo # 1
Identificación Mínimos Cuadrados Recursivo
o Consideraciones y Algoritmo Descriptivo
o Ejemplo # 2
Suponga que en un
experimento de un sistema
de control SISO se
tomaron la medidas de la
entrada y la salida, a su
vez, los registros de los
datos han sido
almacenados en un
archivo de datos que
contienen un numero de
20000 muestras.
5 Sistema de Identificación
Modelado de Procesos
7 Parámetros Identificados
Modelado de Procesos
9 Esquema de Identificación
Modelado de Procesos
10
Secuencia de Lecturas
Modelado de Procesos
Motivación
Identificación Mínimos Cuadrados No
Recursivo
o Ejemplo
Identificación Mínimos Cuadrados Recursivo
o Consideraciones y Algoritmo Descriptivo
o Ejemplo
10
11
12
13
14
En donde:
15
16
17
18
Secuencia de Lecturas
Modelado de Procesos
Motivación
Identificación Mínimos Cuadrados No
Recursivo
o Ejemplo # 1
Identificación Mínimos Cuadrados Recursivo
o Consideraciones y Algoritmo Descriptivo
o Ejemplo # 2
18
19
Ejemplo # 1 (1/5) Modelado de Procesos
Los datos que se dan a continuación corresponden a la
respuesta de un sistema de control ante una entrada en
escalón unitario. Obtener, a partir de ellos, un modelo de
segundo orden que describa la dinámica del sistema.
19
20
Ejemplo # 1 (2/5) Modelado de Procesos
20
21
Ejemplo # 1 (3/5) Modelado de Procesos
21
22
Ejemplo # 1 (4/5) Modelado de Procesos
Con los resultados anteriores se obtiene:
22
23
Ejemplo # 1 (5/5) Modelado de Procesos
En la tabla adjunta se comparan los valores de la salida
real del sistema y los correspondientes a la salida
estimada para diferentes instantes de muestreo.
23
24
Secuencia de Lecturas
Modelado de Procesos
Motivación
Identificación Mínimos Cuadrados No
Recursivo
o Ejemplo # 1
Identificación Mínimos Cuadrados
Recursivo
o Consideraciones y Algoritmo Descriptivo
o Ejemplo # 2
24
25
26
27
Además:
28
29
30
31
32
33
Secuencia de Lecturas
Modelado de Procesos
Motivación
Identificación Mínimos Cuadrados No
Recursivo
o Ejemplo # 1
Identificación Mínimos Cuadrados Recursivo
o Consideraciones y Algoritmo Descriptivo
o Ejemplo # 2
33
34
35
36
Secuencia de Lecturas
Modelado de Procesos
Motivación
Identificación Mínimos Cuadrados No
Recursivo
o Ejemplo # 1
Identificación Mínimos Cuadrados Recursivo
o Consideraciones y Algoritmo Descriptivo
o Ejemplo # 2
36
37
Ejemplo # 2 (1/6) Modelado de Procesos
Los datos que se dan a continuación corresponden a la
respuesta de un sistema de control a un escalón unitario.
Obtener a partir de ellos, un modelo de segundo orden
que describa la dinámica del sistema. Asumir y utilizar
mínimos cuadrados recursivos.
37
38
Ejemplo # 2 (2/6) Modelado de Procesos
38
39
Ejemplo # 2 (3/6) Modelado de Procesos
39
40
Ejemplo # 2 (4/6) Modelado de Procesos
40
41
Ejemplo # 2 (5/6) Modelado de Procesos
Así sucesivamente hasta encontrar el vector de
parámetros:
41
42
Ejemplo # 2 (6/6) Modelado de Procesos
Tabla comparativa del sistema identificado versus el real.
42
43
Código Matlab EjemploModelado
# 2 de Procesos
u=[0 1 1 1 1 1 1]; u1=[1 1 1 1 1 1 1];
y=[0 0.73 1.26 1.55 1.73 1.84 n=[th(3) th(4)];
1.91]; d=[1 th(1) th(2)];
t=[0 1 2 3 4 5 6]; printsys(n,d,'z')
r=[t',y']; y1=dlsim(n,d,u1);
n=2; lamda=1; p=1000*eye(2*n); subplot(211)
th=[zeros(1,2*n)]'; plot(t,y1,'LineWidth',2)
phit=[-y(n) -y(n-1) u(n) u(n-1)]; hold
for k=n+1:length(y) plot(t,y,'r*','LineWidth',2)
l=(p*phit')/(lamda+phit*p*phit'); Grid
e=y(k)-phit*th;
th=th+l*e;
p=(1/lamda)*(eye(2*n)-l*phit)*p;
phit=[-y(k) -y(k-1) u(k) u(k-1)];
end
43
44
Propuestos (1/2) Modelado de Procesos
44
45
Propuestos (2/2) Modelado de Procesos
45
Identificación de Sistemas en
Tiempo Discreto
Ricardo Rodríguez Bustinza
robust@uni.edu.pe
2016
Adquisición de Datos
Adquisición de Datos
Señal Digital
Contador
Dispositivos digitales usados para contar eventos,
mediciones de frecuencia o periodo, posición y generación
de pulsos
Amplificación
Filtro
Linealización,...
Termistor NTC
Sensor de Luz
Sensor de Temperatura
Sensor de Presión, etc
Si no se adquiere a suficiente
velocidad, se produce un
fenómeno conocido como
Aliasing, fenómeno no deseable
en la adquisición.
ΔV
Vanalogo = (Dato Digital) * − desfase
2n
Performance de la Adquisición,...
⋯ ⋯
Vector de Datos (Ψ).
… …
Vector de Parámetros (Θ).
… …
Algoritmo unificado.
Ganancia del
Estimador
Predicción de
error
Matriz de
covarianza Factor de
olvido
"
! #
Un modelo ARX,...
Considere una función de transferencia de un sistema de primer orden en donde no
hay retardo. Se desea determinar de forma automática el conjunto de órdenes del
modelo ARX, n- , n. y n+ que minimizan el error cuadrático.
0 2
/ 2/
1 0 2
1/ 2
De lo descrito en la ecuación anterior, la función de transferencia es:
0
= =6 >?
=6 1 1
T KT
a a5 1 b b8 b5 0
τ τ
Para el retardo:
Diagramas de estimación,...
u K y
P5 s
s+p
u y
F5 s + F8
P8 s =
G 8 + H5 s + H8
3.1 Introducción
En este tema nos dedicaremos al estudio de los métodos de estimación de parámetros en el
dominio temporal y frecuencial. Estos se basan en el supuesto de que el sistema pueda
representarse por una parte determinista o causal y una parte estocástica que engloba las
dinámicas no modelizables del sistema. En general se asume que la parte estocástica puede ser
representada por una variable Gausiana.
Los métodos de estimación frecuenciales tienen diferentes ventajas y desventajas con respeto
a los métodos temporales. Los ingenieros muchas veces prefieren la descripción en el dominio
frecuencial por las siguientes razones [Kollár94]:
• Mientras que la solución de una ecuación diferencial necesita la convolución en el
dominio del tiempo, esta convolución se sustituye por una simple multiplicación en el
dominio de la frecuencia.
• A menudo es posible descomponer la señal / ruido en diferentes bandas frecuenciales.
• Con la selección adecuada de los coeficientes de Fourier en una banda de frecuencias
adecuada, es posible reducir el número de datos.
• Es posible obtener un modelo continuo a partir de los datos.
• Pequeñas no linealidades pueden ser fácilmente mensurables y detectables en el dominio
de la frecuencia.
Por otro lado, trabajar en el dominio del tiempo tiene ventajas [Ljung91]:
• Es más natural trabajar con señales en el dominio temporal.
• Son métodos menos sensibles al tipo de señal de excitación, los técnicas frecuenciales
presentan problemas cuando estas no son periódicas.
3-1
• Ciertas no linealidades son más fáciles de detectar, como es el caso de las saturaciones.
• Pueden ser utilizados de forma recursiva.
• Permiten medir directamente los transitorios del sistema.
En general, la base de todos los métodos de estimación consiste en minimizar unos residuos
ε(t), definiendo ε(t) como la diferencia entre el valor deseado de la salida, y(t), y el valor de
predicción, y$ (t ) , que es función del modelo estimado. La minimización se realiza
generalmente utilizando un criterio cuadrático. La metodología de cálculo a utilizar dependerá
de la relación entre ε(t) y los parámetros que se quieren estimar. Cuando la relación sea lineal
se podrá utilizar un método de cálculo analítico, mientras que en el caso de una relación no
lineal, el método de cálculo a utilizar será iterativo.
Se debe decir que los modelos estimados, tanto en el dominio temporal como frecuencial,
serán modelos con dinámicas lineales. En la tabla 3.1 se muestran más claramente estos
conceptos.
ERROR
DINÁMICA PROCESO
lineal… no-lineal …
… respecto al coeficiente a$
ε = y−w
Lineal y '+ ay = u ε = y '+ ay
$ −u
w' +aw
$ =u
ε = y− w
No-lineal y'+ay 3 = u ε = y '+ay
$ 3 −u
w'+aw
$ 3=u
y (t ) = G ( q − 1 )u ( t ) + H ( q −1 ) e( t ) (3.1)
3-2
- Modelos en que H(q-1 )=0
y( t ) = B (q −1 ) u( t − nk ) + e( t ) (3.2)
−1 −1
donde: G ( q ) = B( q ) , nk representa el retardo puro del proceso y B(q ) es un polinomio de
-1
B ( q − 1 ) = b0 + b1 q − 1 + L+ bnb q − nb (3.3)
Se les denomina también modelos de respuesta impulso finito (FIR). Tienen el inconveniente
que, para representar el comportamiento de un proceso, es necesario gran número de
coeficientes.
B (q − 1 )
y( t ) = u( t − nk ) + e( t ) (3.4)
F ( q −1 )
B ( q −1 ) − nk
en este caso: G (q −1 ) = q , y F(q-1 ) es un polinomio autoregresivo de orden nf:
F (q −1 )
F ( q −1 ) = 1 + f 1q −1 +L+ f nf q − nf (3.5)
A( q −1 ) y (t ) = B( q −1 )u (t − nk ) + e ( t ) (3.6)
en este modelo se considera que la parte determinista y la parte estocástica tienen el mismo
denominador:
B( q − 1 ) − nk
G( q − 1 ) = q
A(q −1 )
(3.7)
−1
1
H (q ) =
A( q −1 )
El polinomio A(q-1 ) es el polinomio autoregresivo de orden na:
A ( q −1 ) = 1 + a 1q − 1 +L + a n a q − na (3.8)
A( q −1 ) y (t ) = B( q −1 )u (t − nk ) + C ( q −1 ) e(t ) (3.9)
3-3
B( q −1 ) − nk
−1
G (q ) = q
A(q −1 )
(3.10)
C( q −1 )
−1
H (q ) =
A( q −1 )
1
A( q −1 ) y ( t ) = q − nk B ( q −1 )u (t ) + e (t ) (3.11)
D (q −1 )
C( q −1 )
A( q −1 ) y ( t ) = q − nk B ( q −1 )u (t ) + e (t ) (3.12)
D (q −1 )
B( q −1 ) C (q −1 )
y( t ) = q − nk u ( t ) + e (t ) (3.13)
F (q − 1 ) D( q −1 )
Una propiedad particular de esta estructura es que G(q-1 ) y H(q-1 ) no tienen parámetros
comunes.
Toda esta familia de modelos se puede representar por el modelo general (3.14)
esquematizado en la figura 3.1.
−1 − nk
B( q −1 ) C( q −1 )
A( q ) y ( t ) = q u (t ) + e (t ) (3.14)
F ( q −1 ) D (q −1 )
e(t)
C (q −1 )
D(q− 1 )
u(t) +
B ( q −1 ) 1 y(t)
q − nk
F ( q −1 ) + A(q −1 )
3-4
Esta estructura es muy general, pero es útil para elaborar algoritmos ya que sus resultados
cubren todos los casos especiales. La relación entre modelos y los casos particulares se
exponen en la tabla 3.3.
• Modelización de la parte determinista. Se observa que hay una relación lineal entre el
error de predicción y los coeficientes de los polinomios A y B, mientras que respecto a los
coeficientes del polinomio F la relación es no lineal. Este hecho comporta que, para
estimar los parámetros del polinomio F, se debe utilizar un método de cálculo iterativo,
mientras que si solo es necesario estimar los parámetros de los polinomios A y B, los
métodos de cálculo a utilizar son analíticos y, por tanto, más sencillos.
3-5
y ( t ) = ϕ T ( t )θ + v( t ) (3.16)
(3.17)
θ = [ a1 L a na b1 L bnb ]
El problema a resolver consiste en estimar el vector de parámetros, θ$ , partiendo de las N
observaciones realizadas: y(1), ϕ(1),...,y(N),ϕ(N).
d/N, Φ = [ ϕ (1)ϕ ( 2) L ϕ ( N )] .
T
La estimación por mínimos cuadrados (LS), consiste en minimizar la función residuo, V (θ$ ) ,
definida por la ecuación (3.21).
1 N 2 1 T 1
V (θ ) = ∑ ε (t ) = ε ε = ε
2
ˆ (3.21)
2 t =1 2 2
θˆ
1
2
[
min V (θ ) = V (θˆ ) = Y T Y − Y T Φ θ − θ T Φ T Y + θ T Φ T Φθ ] (3.22)
La derivada de la función (3.22) respecto a los parámetros debe ser nula. Deduciéndose que el
valor de los parámetros que minimiza V (θ$ ) es:
( )
−1
θ$ = Φ T Φ Φ TY (3.23)
3-6
−1
N N
θ$ = ∑ ϕ ( t )ϕ( t )T ∑ ϕ( t ) y( t ) (3.24)
t =1 t =1
de la cual, conocido el orden del modelo: na, nb y nk, es fácilmente calculable el valor de sus
parámetros.
λ$2 =
2V θ$ () (3.27)
N−d
• Resaltar como principal ventaja de este método que la conversión a un mínimo global está
garantizada y no existen mínimos locales.
( )
−1
θ$ = Φ T Φ Φ TY
3-7
• Resaltar como ventaja que la resolución directa de esta ecuación es sencilla y que los
cálculos algebraicos a realizar son sencillos.
Consiste en multiplicar el sistema de ecuaciones original (4.19) por una matriz ortonormal Q:
QΦθ = QY (3.28)
QY − QΦθ = Q (Y − Φθ ) = (Y − Φθ ) Q T Q (Y − Φθ )
2 2 T
(3.29)
= (Y − Φθ ) (Y − Φθ ) = Y − Φθ
T 2
donde R es una matriz cuadrada de dimensión d/d triangular por encima. La ecuación (3.31)
se puede escribir como:
R
Φ = QT (3.32)
0
L
QY = (3.33)
M
3-8
2
2 R L 2
V (θ$) = QΦθ$ − QY = θ$ − = Rθ$ − L + M 2
(3.34)
0 M
Rθ$ = L (3.35)
(θ ) = M = MTM
2
minV
$
(3.36)
θ
1- el sistema lineal (3.35) está mejor condicionado que la ecuación (3.23) y por tanto es
numéricamente superior
• Como inconvenientes destacar que requiere el doble de cálculo que el método directo.
A( q −1 ) y (t ) = B( q − 1 )u (t − nk ) + H ( q −1 )e (t ) (3.37)
Con estas nuevas señales filtradas de la entrada y la salida, el problema podría ser resuelto
aplicando el método clásico de LS. Por lo tanto el método GLS puede interpretarse como un
problema de estimación de LS aplicando como criterio la generalización del error.
3-9
(1) Con el método LS, hacer una primera estimación de los polinomios A(q-1 ) y B(q-1 ):
A( q −1 ) y (t ) = B( q −1 )u (t − nk ) + v (t ) (3.39)
(2) Analizar el residuo, ε(t), y determinar por ejemplo un modelo AR para aproximar H(q-1 ).
En este caso se tiene un modelo denominado ARARX (3.11).
1
G( q −1 ) =
D( q −1 ) (3.40)
D( q −1 )ε ( t ) = e (t )
(3) Filtrar (blanquear) la entrada y la salida usando el modelo obtenido en la etapa (2):
~y (t ) = D (q −1 ) y( t )
(3.41)
u~(t ) = D( q −1 ) u( t )
(4) Hacer una nueva estimación por mínimos cuadrados utilizando los señales filtrados.
Este proceso debe repetirse, a partir de la etapa (2), tantas veces como sea necesario hasta
conseguir la convergencia.
La convergencia del método se evalúa comprobando que los residuos definidos obtenidos
sean blancos. Para ello puede utilizarse el test de auto correlación. Para utilizarse este método
deben definirse tanto el orden de la parte determinista como el orden de la parte estocástica.
Para simplificar el problema, la mayoría de las veces se considera que son del mismo orden.
z ( t ) y (t ) = z ( t )ϕ T ( t )θ + z ( t ) v (t ) (3.42)
que se debe caracterizar por ser independiente del ruido v(t), pero dependiente de la entrada y
la salida del sistema. Esta propiedad permite plantear el siguiente sistema de ecuaciones
lineales:
[
z( t )ε ( t ) = z( t ) y (t ) − ϕ T ( t )θ$ ] (3.43)
3-10
El vector de parámetros que minimiza la función pérdida (3.22) vale, en este caso:
( )
−1
θ$ = Z T Φ ZTY (3.44)
Para que θ$ converja a θ0 es necesario que la variable instrumento tenga como propiedades:
1 N
∑
N t=1
z ( t )ϕ T ( t ) sea singular
(3.45)
1 N
∑ z (t)v(t ) = 0
N t=1
En otras palabras, es necesario que la variable instrumento sea fuertemente dependiente del
vector regresión, ϕ(t), pero sea independiente del ruido.
Este método, al igual que LS, presenta el inconveniente de que la matriz ZTΦ puede estar mal
condicionada cuando su dimensión es grande. Por este motivo puede utilizarse la
triangulación ortonormal para calcular el valor de los parámetros.
Si se considera un modelo con una estructura ARMAX, una forma de garantizar las
condiciones (3.45) es considerando un vector instrumento definido por:
z( t ) = L( q −1 )[ − x ( t − 1) − x (t − 2) L - x( t - na ) u( t − 1) L u( t - nb) ]
T
(3.46)
donde L es un filtro lineal y x(t) se genera a partir del sistema lineal:
N ( q −1 ) x ( t ) = M ( q − 1 ) u( t ) (3.47)
El problema consiste en determinar el filtro, L, y el modelo lineal, N(q-1 ) y M(q-1 ). Una forma
sencilla seria:
(1) Aplicar LS
(2) Utilizar el modelo estimado como polinomios N y M, y determinar x(t) con (3.47)
(3) Considerando L=1, definir z(t) según (3.46) y estimar el vector de parámetros a partir de la
ecuación (3.44).
y$ ( t / θ ) = ϕ T ( t)θ$ (3.48)
3-11
y se utiliza LS para estimar θ. A los parámetros estimados se les denomina θ$ (N1) . A partir
de los parámetros se obtiene la función de transferencia (3.49), donde los subíndices
indican las iteraciones realizadas.
B$ ( 1) ( q)
G$ N(1) ( q ) = $ N( 1) (3.49)
AN ( q )
x (1) ( t ) = G$ N(1) (q −1 ) u( t )
(3.50)
z (1) ( t ) = [ − x (1) ( t − 1) K − x (1) ( t − na ) u (t − 1) K u( t − nb)]
T
La ecuación (3.44) permite estimar un nuevo valor para los parámetros, y obtener la
correspondiente función de transferencia, G$ (N2 ) .
v$ N( 2) (t ) = A$ (N2) y (t ) − B$ N( 2) u( t ) (3.51)
Considerando que el ruido se comporta como un modelo auto regresivo (AR) de orden d,
se estima, con el método LS, el filtro L$ ( q −1 ) :
L$ ( q − 1 ) v$ (N2 ) ( t ) = e (t ) (3.52)
(4) De la misma forma que en (3.50), se calcula de nuevo x (2)(t) pero considerando la función
de transferencia G$ (N2 ) . El vector instrumento óptimo viene dado por (3.53).
z (2 ) (t ) = L$ N ( q −1 )[ − x ( 2) ( t − 1) K − x ( 2) ( t − na ) u( t − 1) K u( t − nb) ]
T
(3.53)
Este nuevo instrumento junto con los filtros sirven para estimar el valor final de los
parámetros:
−1 N
N ( 2)
θ N = ∑ z ( t )ϕ FT
$ ∑z ( 2)
( t ) y F (t )
t= 1 t =1 (3.54)
ϕ F ( t ) = L$ N ( q −1 )ϕ (t ), y F ( t ) = L$ N ( q −1 ) y ( t )
3-12
−1
1 $ N ( 2 ) N ( 2) T
P = λN ∑ z ( t ) ∑ z (t )
N IV t =1 t =1
(3.55)
λ$N = ∑ [ y F ( t ) − ϕ FT ( t )θ$N ]
1 N 2
N t =1
Z T Y = ( QZ ) QΦθ$
T
(3.56)
Al descomponer la matriz Q en:
Q1
Q=
Q2
donde Q1 es una matriz cuadrada N/N. Puede definirse una matriz cuadrada y triangular por
encima Z1 = Q1 Z. Si se define la matriz Φ 1 = Q1 Φ y ya que Q2 Z = 0, la ecuación (3.56) queda
transformada en:
Z T Y = Z1TΦ1θ$ (3.57)
Z T Z = ( QZ ) QZ = Z1T Z1 + [ Q2 Z] Q2 Z = Z1T Z1
T T
(3.58)
El error de modelización vendrá dado en este caso por el producto Q2 Y y la función pérdida
queda definida como:
minV
$ θ
(θ ) = Q2 Y
2
= ( Q2 Y ) T
Q2 Y (3.60)
• Cabe resaltar como ventaja de esta metodología de cálculo dos aspectos: que el sistema
lineal (3.59) está mejor condicionado que la ecuación (3.44) y por tanto es numéricamente
superior y que la función pérdida se calcula sin la necesidad de estimar el valor de sus
parámetros.
• Como inconvenientes debe destacase que requiere el doble de cálculo que el método
directo y complica mucho el método IV óptimo.
3-13
las observaciones. La estimación de la máxima probabilidad significa que se selecciona el
valor de los parámetros que coinciden más probablemente con las observaciones.
Supongamos que las observaciones están representadas por un vector de variables Random
Y=[y1 , y2 , ..., yn ]T y indicamos la función de densidad de probabilidad como:
Si consideramos un modelo genérico dado por la ecuación (3.16) y considerando que v(t) es
una señal Gausiana, con una distribución normal y de N elementos, concretamente de media
E[v]=0 y covariancia E[vv T ]=Cv conocida. La función de probabilidad de esta señal viene dada
por la expresión:
[
f (v ) = (2π ) det (Cv )
N
]
−1 / 2 1 T −1
exp − v Cv v (3.64)
2
[
f (v ) = (2π ) det (C v )
N
]
−1 / 2 1 T −1
exp − [Y − Φθ ] Cv [Y − Φ θ ] (3.65)
2
2
[
N
2
T
]
log L (θ ) = − log (2π ) det (Cv ) − [Y − Φθ ] Cv−1 [Y − Φ θ ]
1 1
(3.66)
Por lo tanto evaluando el máximo de esta función se estimará el valor de los parámetros θ. En
el caso en que el ruido corresponda a un ruido blanco con una matriz de covariancia Cv =σ2 I,
es fácil demostrar que la maximización de la función de máxima probabilidad (3.66) es
equivalente a minimizar la función pérdida:
V (θ ) =
1
[Y − Φθ ]T [Y − Φθ ] = −σ 2 log L(θ ) + constant (3.67)
2
3-14
Consideremos el caso de un sistema ARMAX (3.9) donde el ruido se supone que tiene una
distribución normal y una matriz de covariancia conocida. En este caso la función del
logaritmo de probabilidad será:
2
N
[
log L (θ ) = − log (2π ) det (Cv ) − ε T C v−1ε
1 1
2
] (3.68)
donde:
ε (t ) = y (t ) − ϕ T (t )θˆ ,
[
θ = a1 ,..., an , b1 ,...., bm , c1 ,..., c p ]
ϕ ( t) = [− y (t − 1),...,− y (t − n ), u (t − 1),...., u( t − m), v( t − 1),..., v (t − p) ] .
El problema en este caso es que v(t-1), ..., v(t-p) no son conocidos. Por lo tanto, en estas
circunstancias, la solución solo es posible haciendo soluciones aproximadas (método
iterativo) para conseguir a cada paso una mejor estimación de la matriz de covariancia y de
los parámetros. Para más detalles [Johansson93] y [Åström80].
ε (t ) = y( t ) − yˆ (t t − 1;θ ) (3.70)
Para la formalización del método se introduce la siguiente estructura general del modelo:
y (t ) = G( q −1 ; θ ) u( t ) + H ( q − 1; θ )v (t ) (3.71)
Asumiendo que G(0;θ)=0, equivale a decir que el modelo tiene como mínimo un retardo puro
de una muestra entre entrada y salida. La forma general de expresar un predictor consiste en:
yˆ (t | t − 1;θ ) = L1 ( q − 1; θ ) y (t ) + L2 ( q −1 ;θ )u (t ) (3.72)
3-15
la cual es una función de los datos anteriores, t-1, solo sí los filtros de predicción tienen como
restricción: L1 (0;θ)=0 y L2 (0;θ)=0.
Hay varias formas de escribir el modelo (3.71) y determinar el predictor. Una vez definido el
modelo y el predictor, se calculan los errores de predicción a partir de la ecuación (3.70). La
estimación de los parámetros, θˆ , se calcula de tal forma que los errores de predicción sean
pequeños. El principio básico de este método se ilustra en la figura 3.1.
v(t)
u(t) + y(t)
PROCESO
+
+ ε(t)
Predictor -
(parámetros θ)
Minimización
de ε(t)
Para definir el método de predicción de error el usuario debe realizar las siguientes
elecciones:
(1) Elegir la estructura del modelo. Esto concierne a la parametrización de G(q;θ) y H(q;θ)
en (3.71) como una función de θ. Por razones algoritmicas, la función de transferencia se
factoriza en polinomios en el numerador y en el denominador. En el contexto de la
identificación, tal como se ha descrito en el apartado 3.2.1., hay distintos modelos de
parametrización: OEM, BJM, ...
(2) Elegir el predictor. Esto concierne a los filtros, L1 (q;θ) y L2 (q;θ) en la ecuación (3.72),
una vez el modelo ha sido especificado. Estos filtros pueden ser seleccionados de distintas
formas. La forma más utilizada es ‘optimal mean square predictor’. Esto significa que los
filtros son seleccionados de manera que bajo unas condiciones dadas del modelo los
errores de predicción tienen la menor variancia posible.
En el caso del modelo general considerado en (3.71), el predictor óptimo seria:
[ ]
)y (t θ ) = 1 − H −1 ( q −1 ;θ ) y (t ) + H −1 ( q −1 ;θ )G( q −1; θ )u (t ) (3.73)
El error de predicción se determina de forma similar:
[ ]
ε (t ) = y (t ) − )y (t θ ) = y (t ) − 1 − H −1 ( q −1 ; θ ) y (t ) + H −1 ( q −1 ; θ ) G( q −1 ; θ ) u( t ) (3.74)
(3) Elegir el criterio. Este se refiere a elegir una función que origine un valor escalar de todos
los errores de predicción ε(1,θ), ..., ε(N,θ). Este criterio será minimizado con respecto a θ
3-16
de manera que se realice la mejor predicción. En el caso de una salida el criterio (función
error) puede definirse como una suma de cuadrados del error de predicción, mientras que
en el caso de sistemas multi-variables como una proyección escalar de la matriz de
covariancia
1 N
V (θ ) = h ∑ ε (t ; θ )ε T (t ;θ ) (3.75)
N t=1
donde h() es una función de valor escalar y, generalmente, consiste en la traza de los pesos
de la matriz de covariaza o su determinante.
El análisis del método de predicción de error muestra que la función perdida converge a un
mínimo y la estimación es consistente cuando se satisfacen las siguientes condiciones:
En muchos casos el mínimo de V(θ) no puede ser hallado de forma analítica. En estos casos la
minimización debe realizarse utilizando una rutina de cálculo numérico. El método más
usualmente utilizado es el algoritmo de Newton-Raphson:
[ ( )] V ' (θˆ )
θˆ ( k +1) = θˆ ( k ) − α k V ' ' θˆ (k )
−1 (k) T
(3.76)
• Los modelos estimados con estos métodos se adaptan fácilmente a los sistemas variantes
en el tiempo. Ellos permiten que el modelo siga los cambios de parámetros del sistema o
cambios debidos a condiciones de operación en el caso de sistemas no lineales.
3-17
• Los requerimientos de memoria son reducidos y no aumentan en el tiempo, debido a que
no se almacenan todos los datos.
• Ellos se han derivado de una aproximación de los métodos no recursivos descritos
anteriormente.
Para deducir el método de mínimos cuadrados recursivo (RLS) se parte de la ecuación (3.24)
−1
t t
θˆ( t ) = ∑ ϕ (k )ϕ T ( k ) ∑ ϕ ( k ) y (k ) (3.77)
k =1 k =1
Para calcular esta expresión de forma recursiva se introduce como nueva notación:
−1
t
P(t ) = ∑ ϕ ( k )ϕ T ( k ) (3.78)
k =1
P −1 (t ) = P −1 (t − 1) + ϕ ( k )ϕ T (k ) (3.79)
t−1
θ ( t ) = P( t ) ∑ ϕ (k ) y ( k ) + ϕ (t ) y (t )
ˆ
k =1 (3.80)
[
= P( t ) P −1 (t )θˆ( t − 1) + ϕ (t ) y( t )]
Por lo tanto el método de mínimos cuadrados recursivos adopta la forma:
[
θˆ ( t ) = θˆ ( t − 1 ) + P( t )ϕ( k ) y( t ) − ϕ T ( k )θˆ ( t − 1 )] (3.81)
donde el último valor puede ser interpretado como el error de predicción, mientras que el
factor de corrección (P(t)ϕ(t)) puede ser considerado como un peso o factor de ganancia
determinado como el error de predicción modifica los elementos del vector de parámetros
estimado.
El hecho de calcular P(t) en la ecuación 3.79 requiere invertir una matriz a cada paso de
iteración. Utilizando el lema [A + BCD]−1 = A−1 − A −1 B[DA−1 B + C −1 ]−1 DA−1 y
−1
considerando A = P ( t − 1 ), B = D y C = 1 se obtiene una expresión más eficiente:
T
P( t ) = P( t − 1 ) + Kϕ T ( k ) P( t − 1 ) (3.82)
donde
[
K = P( t − 1 )ϕ( t ) / 1 + ϕ T ( k )P( t − 1 )ϕ ( t ) ] (3.83)
3-18
que da como resultado una ganancia. La expresión de mínimos cuadrados recursivos queda
por tanto:
[ ]
θˆ ( t ) = θˆ ( t − 1 ) + K ( t ) y( t ) − ϕ T ( k )θˆ ( t − 1 ) (3.84)
Los algoritmos recursivos requieren aproximar el valor inicial del vector de parámetros y de
la matriz P(t). Si es posible realizar una primera estimación del vector de los parámetros (por
ejemplo utilizando LS norecursivo) los la matriz P(0) debe reflejar la confianza de los
parámetros estimados. En el caso en que P(0) sea pequeño K(t) será pequeño para los distintos
t y los parámetros estimados no variaran mucho del valor inicial. Mientras que, si P(0) es
grande la estimación de los parámetros variará rápidamente del valor inicial. En ausencia de
información previa para realizar una primera estimación de los parámetros, se acostumbra a
considerar: θˆ ( 0 ) = 0 y P( 0 ) = κI , donde κ es un número grande.
t
V ( θ ) = ∑ λt − k ε 2 ( k ) (3.85)
k =1
Por lo tanto el algoritmo de mínimos cuadrados recursivos con factor de olvido es:
[ ]
θˆ ( t ) = θˆ ( t − 1 ) + K ( t ) y( t ) − ϕ T ( k )θˆ ( t − 1 ) (3.86)
K = P( t − 1 )ϕ( t ) / [λ + ϕ ( k ) P( t − 1 )ϕ( t )]
T
(3.87)
P( t ) = [P( t − 1 ) + Kϕ ( k )P( t − 1 )] / λ
T
(4.88)
Para λ = 1 coincide con el método de mínimos cuadrados común.
3-19
θˆ ( t ) = θˆ ( t − 1 ) + K ( t )ε ( t ) (3.89)
K = µ( t )P( t − 1 )ϕ ( t ) (3.90)
ε ( t ) = y( t ) − ψ T ( t )P( t − 1 )ϕ ( t ) (3.91)
En la siguiente tabla se observan los valores de los parámetros, vector de datos y vector de
corrección para el caso de los métodos: mínimos cuadrados (RLS), método de la variable
instrumento recurdivo (RIV) y el método de la máxima probabilidad recursivo (RML). En el
caso de incluirse el factor de olvido es necesario realizar las siguientes modificaciones:
En Iserman (1991) se realiza una comparación entre estos tres métodos con respecto a las
características del estimador, su convergencia y el esfuerzo computacional. Las propiedades
de estos tres métodos se resumen a continuación:
RIV: Tiene unas buenas prestaciones. Para acelerar la convergencia inicial se recomienda
empezar con RLS. Esfuerzo computacional mayor que RLS.
RML: Altas prestaciones del estimador. Lenta convergencia en la etapa inicial. Se estiman los
parámetros del ruido, pero la convergencia es lenta. El esfuerzo computacional es mayor que
en los otros dos.
]
1 n 1 m 1 n 1 m
T
ĉ1 L ĉ p
ψ(t ) [− y( t − 1 )L − y( t − n ) [− y( t − 1 )L − y( t − n ) [− y( t − 1 )L − y( t − n )
u ( t − 1 ) L u ( t − m )] u ( t − 1 ) L u ( t − m )] u ( t − 1 )L u ( t − m )
T T
ε ( t − 1 )L ε ( t − p )]
T
µ( t ) 1 1 1
1 + ψ ( t )P( t − 1 )ψ ( t ) 1 + ψ ( t ) P( t − 1 )ϕ ( t ) 1 + ψ ( t ) P( t − 1 )ϕ ( t )
T T T
P(t) [ ] [ ] [
I − K ( t )ψ T ( t ) P ( t − 1 ) I − K ( t )ψ T ( t ) P ( t − 1 ) I − K ( t )ψ T ( t ) P ( t − 1 ) ]
ϕ(t) ψ(t ) [
[− η ( t − 1 )L − η ( t − n ) − y' ( t − 1 )L − y' ( t − n )
u ( t − 1 )L u( t − m )] u ' ( t − 1 )L u ' ( t − m )
T
ε ' ( t − 1 )L ε ' ( t − p ) ] T
3-20
3.8 Métodos de estimación paramétricos frecuenciales
El objetivo de los métodos de identificación en el dominio frecuencial es el mismo que en el
dominio temporal: identificar un sistema lineal a partir de los datos. La principal diferencia
entre ambos radica en el dominio de trabajo. De todas formas los dos métodos son
complementarios y, en algunos casos, ambos pueden utilizarse para solucionar el mismo
problema. Analizamos a continuación, en que condiciones ambos métodos identifican el
mismo sistema.
Ny
U H(Ω) +
Y Ym
Nu +
Um
− jω T d
b 0 Ω 0 + b 1 Ω 1 + L + b nn Ω nn
H (Ω) = e (3.92)
a 0 Ω 0 + a 1 Ω 1 + L + a nd Ω nd
Las medidas se realizan a distintas frecuencias ωk , k=1...F, las amplitudes de las entradas y
salidas son Umk y Ymk, respectivamente. Los parámetros no conocidos de la función de
transferencia se indican con el vector P. Con todo ello las ecuaciones básicas son:
3-21
Asumiendo que el ruido en las amplitudes complejas es Gausiana y no correlacionado, y que
el ruido de la entrada y la salida no están tampoco correlacionados, su función de densidad
probabilística puede escribirse como:
1 N Ruk
2
+ N Iuk
2
F 1 N Ryk2
+ N Iyk
2
p (N u , N y ) = Π exp
− Π
exp −
k =1 2πσ uk 2σ uk2
k =1 2πσ yk 2σ yk2
2 2
(3.95)
1 Nuk N uk F 1 N yk N yk
=Π exp − Π exp −
k =1 2πσ uk
2σ uk πσ σ
2 2 2 2
k =1 2 yk 2 yk
donde NRuk , NIuk , NRyk y NIyk se corresponde con las partes real y imaginaria del ruido en las
señales de entrada y salida. N es el conjugado complejo de N, σuk y σyk son las
correspondientes desviaciones estándar, Nu y Ny indican los vectores formados por Nuk y Nyk
en las distintas frecuencias.
Substituyendo en (3.95) la variable ruido por Nuk =Umk-Uk y Nyk =Ymk-Yk , y haciendo el
logaritmo y asumiendo que σu y σy son conocidas, la función de máxima probabilidad es:
F
(U − U k )(U mk − U k ) F (Ymk − Yk )(Ymk − Yk )
ln( L(U , Y , P)) = cont − ∑ mk − ∑ (3.96)
k =1 2σ uk2 k =1 2σ uk2
F
(U mk − U k )(U mk − U k ) F (Ymk − Yk )(Ymk − Yk )
C LS ( L(U , Y , P)) = ∑ + ∑ (3.97)
k =1 2σ uk2 k =1 2σ 2
uk
La restricción (3.93) puede substituirse en (3.97) para eliminar Yk . Como resultado se obtiene
un problema de mínimos cuadrados con pesos no lineales. En general pero no se está
interesado en Uk , por lo tanto la mejor forma de minimizar la ecuación (3.96) con la
restricción (3.93) es utilizar la técnica de multiplicadores de Lagrange para eliminarlos a
ambos (Uk y Yk ). En este caso la expresión a minimizar consiste en:
− jω T 2
1 F e
k d
N (Ω k , P)U mk − D (Ω k , P)Ymk
C (P) = ∑ (3.98)
2 k =1 σ yk2 D (Ω k , P) 2 + σ uk2 N ( Ω k , P) 2
3-22
1 F
∑ − jω T 2
CWLS ( P) = Wtfk e k d U mk N ( Ω k , P) − Ymk D ( Ω k , P) (3.99)
2 k =1
e − jω k Td U mk N ( Ω k , P) − Ymk D ( Ω k , P) = 0 (3.100)
sí Nuk y Nyk son independientes. Haciendo Wk =1/var{ε k }, se obtiene que la función de coste
(3.99) consiste en la estimación de un sistema lineal, denominado ELiS (Estimator for Linear
Systems).
Para minimizar la ecuación (3.98) respecto a los parámetros P, deben utilizarse técnicas no
lineales con restricciones y para ser utilizada, el usuario debe aportar el valor inicial del
retardo puro.
− jω T 2
1 F e k d N ( Ω k , P)U mk − D ( Ω k , P)Ymk
C (P) = ∑ (3.101)
2 k =1 σ 2yk D ( Ω k , P) 2 + σ uk2 N (Ω k , P) 2 − 2real {CNDk }
con:
CNDk = c uyk e − jω k Td N ( Ω k , P) D(Ω k , P)
y
c uyk = 0.5 cov{Nuk , N yk } = 0.5 E{N uk , N yk }
3-23
3.9.1 Selección de la estructura del modelo. Aspectos generales
La selección de la estructura del modelo tiene un considerable efecto sobre la cualidad del
modelo resultante y el coste de computación. La cualidad del modelo puede, por ejemplo
evaluarse por el criterio del error cuadrático. La mejor estructura del modelo es un
compromiso entre flexibilidad y ahorro. Entendiendo por flexibilidad que la estructura del
modelo tiene capacidad para describir diferentes sistemas y una forma de obtenerlo es
utilizando muchos parámetros. Por otro lado, el ahorro requiere la utilización de pocos
parámetros.
La selección del tipo dentro de un conjunto de modelos implica buscar entre diferentes clases
de modelos como entre modelos no lineares o lineares o entre modelos de entrada-salida, caja
negra o parametrizado físicamente, y otros. La búsqueda de que tipo de modelo utilizar es un
poco subjetivo y involucra muchos factores que son independientes del conjunto de datos. La
búsqueda es habitualmente un compromiso entre diferentes factores, como cualidad del
modelo y esfuerzo de modelado. Para obtener unos buenos resultados con pocos parámetros,
suele utilizarse el conocimiento previo del proceso y algo de intuición. La información previa
es muy útil en el caso de modelos en tiempo continuo. La forma de evaluar ε(t,θ) y su
minimización influye mucho en el esfuerzo de programación y el tiempo de cálculo. Modelos
sofisticados suelen utilizarse solo en el caso de que no puedan ser validados los modelos
sencillos. Las regresiones lineales son los modelos más simples y los que la minimización del
criterio es robusta. Cuando se realiza una transformación no lineal de los datos puede ser
también evaluado con el ajuste de un modelo lineal.
La selección del orden del modelo implica la selección del número de parámetros de una
determinada clase de modelos. Este paso requiere usualmente alguna evaluación del conjunto
de datos, de todas formas el conocimiento preliminar que se tiene del proceso muy a menudo
permite deducir un rango de ordenes del modelo a considerar.
3-24
determinación completa del modelo del sistema. En el caso de métodos paramétricos, el
problema se reduce a la selección del orden del modelo.
(1) La evaluación del análisis espectral estimado proporciona información sobre el rango de
frecuencias de interés del proceso y el nivel de ruido, por lo tanto no ayuda a diseñar
correctamente la señal de entrada y los filtros. La estimación no paramétrica de la función
de transferencia Gˆ ( jω ) proporciona información sobre los picos de resonancia y el
retardo de fase. Todo ello da una orientación sobre el orden requerido par una adecuada
descripción de las dinámicas del sistema (o la zona de interés).
(2) Evaluar el rango de la matriz de covarianza es un buen método para estimar el orden del
sistema. Supóngase que el sistema correcto se describe mediante:
y (t ) + a1 y( t − 1) + L + a n y( t − n) = b1u (t − 1) + L + bn u (t − n ) + v (t )
siendo n el verdadero orden del sistema. Si tomamos un modelo de orden s, el vector de
datos es:
ϕ ( t ) = [ y (t ) y( t − 1) L y( t − s )u (t − 1) Lu (t − s ) ]
T
1 N
∑
Rϕϕ ( N ) =
N t =1
ϕ (t )ϕ (t )
T
será no singular para s ≤ n (en el caso que {u(t)} sea persistentemente excitada) y
singular para s≥n+1.
En el caso de ruido la matriz de convarianza puede ser utilizada siempre que la relación
señal-ruido no sea muy grande, sí es el caso puede utilizarse la fórmula:
Rˆ ϕϕ ( N ) = Rϕϕ ( N ) − σ 2 Rv
[
Rˆ ϕζ ( N ) = E ϕ ( t )ζ T (t ) ]
es no singular para s≤n y singular para s≥n+1.
(3) El método de correlación es otro método que permite obtener información acerca de que
variables incluir en la estructura del modelo. Esta variable podría ser y(t-n-1). La cuestión
que permite resolver es si una nueva variable contribuye de alguna forma en explicar la
variable de salida y(t). Ello puede realizarse mediante la correlación entre la nueva
variable y la salida. De todas formas para descartar las posibles relaciones entre ellas, y
para conseguir estructuras de poca complejidad, la correlación debería realizarse entra
3-25
ella y los residuos obtenidos como resultado de considerar un primer modelo
ε (t ,θˆ ) = y (t ) − yˆ (t | θˆ ) . Ello se conoce con el nombre de correlación parcial.
Una aproximación natural para determinar la estructura del modelo es simplemente testar
diferentes estructuras y comparar el resultado entre ellas. Los métodos de tests más
comúnmente utilizados son:
Esta cantidad tiene una distribución F[p1 - p2 , N - p2 ], entonces para un suficiente número
de muestras N, se cumple que: t > F α [p1 - p2 , N - p2 ] entonces se cumple la hipótesis que
la reducción de la función pérdida es significativa con el aumento del número de
parámetros y por tanto el nuevo parámetro es aceptado con un nivel de confianza de 1-α .
En la práctica, el nivel de confianza tiene un rango de 0.01 a 0.1.
AIC ( p ) = N log V (θ ) + 2 p
siendo:
1 N 2
V (θ ) = ∑ ε (t,θ )
N t =1
Se ha observado que este criterio puede sobre estimar el orden del modelo.
3-26
Otro criterio propuesto por Akaike es ‘final prediction error criterion (FPE)’:
N+ p
FPE( p) = V (θ )
N−p
Una propiedad atractiva tanto del criterio de AIC como FPE es que el orden del modelo
se determina como resultado de valor mínimo del criterio y no es necesario evaluarlo en
función de unos niveles de confianza como es el caso del método estadístico.
ε (t ,θˆ ) = y (t ) − yˆ (t ,θˆ )
representa una forma de representar las diferencias entre las variables observadas y el
comportamiento del modelo estimado. En general los residuos deben ser blancos o
aproximadamente blancos y no correlados con la entrada, si el modelo es una buena
representación del sistema. De lo contrario, indicaría que o bien el modelo a la identificación
no es completa.
La simple representación de los residuos respecto a los valores ajustados; tal que la
representación no revela ninguna dependencia clara. Otro diagrama útil es el histograma de
los residuos, amplitudes, el cual revela si la distribución difiere de una distribución normal.
Otros tests útiles son los estudiados en el tema 2, test estadístico de auto correlación de los
residuos ε(t), test de cross-correlación entre los residuos y las entradas, …
3-27
El método para responder estas cuestiones es confrontar el modelo con más información –
como conocimientos a priori, datos experimentales y experiencia – sobre el sistema real.
Puesto que el uso más natural de la identificación consiste en confrontar el modelo con los
datos, las técnicas de identificación tienden a centrarse en la pregunta 1. Mientras que la
pregunta 3, prescindiendo de los problemas de test, es filosóficamente imposible de contestar,
la pregunta 2 es un requerimiento práctico importante. Evaluar si el problema que motivo la
tarea de modelización puede ser solucionado usando el modelo obtenido, puede considerarse
como la prueba más importante de validación del modelo. Por ejemplo, si un regulador
basado en el modelo satisface los requerimientos de control, entonces el modelo será valido,
independientemente de la forma que tenga. No obstante, a menudo es imposible, costoso o
peligros probar todos los posible modelos con el uso que se ha previsto. Por ello, la confianza
en el modelo debe verificarse de otras maneras. Los dos métodos principales son: la
verificación de las asunciones a priori y la verificación del comportamiento de la entrada-
salida.
Otra manera es validación cruzada, esto significa la verificación del modelo identificado con
otro conjunto de medidas. La comparación entre los datos observados y la salida modelo se
muestra generalmente mirando las anomalías del modelo no detectadas previamente. La
validación cruzada se considera la mejor manera de validar el modelo y la única prueba
verdadera para su aplicabilidad general.
3-28
Bibliografía adicional sobre el tema
[Åström 71] K. J. Astrom, P. Eykhoff. System Identification – A survey. Automatica,7, p.
123-162, 1971
[Bohlin94] Bohlin, T.: Interactive system identification: prospects and pitfalls, Springer
Verlag, 1991.
[Kollás93] I. Kollár “On Frecuency Domain Identification of Linear Systema” IEEE Trans.
on Instrumentation and Measurement, Vol. 42 No 1, pp. 2-6, Feb. 1993.
[Ljung87] L.Ljung. System identification – Theory for the user, Prentice Hall, 1987.
3-29
[Walter97]Walter, E – Pronzato, L. Identification of Parametric Models from Experimental
Data. Masson Great Britain, 1997.
3-30
Análisis de la Estabilidad en Tiempo Discreto
Ricardo Rodrı́guez Bustinza
robust@uni.edu.pe
1. Introducción
A continuación analizaremos la estabilidad de los sistemas de control en tiempo discreto lineales e invari-
antes con el tiempo. En concreto, nos centraremos en el criterio de estabilidad de Jury, que es un método
para saber si las raı́ces de un polinomio están dentro, fuera o en el cı́rculo unidad, sin necesidad de calcular
dichas raı́ces. Uno de los temas más importantes dentro de la teorı́a de control es el análisis de la estabili-
dad de los sistemas, ya que uno de los primeros objetivos que se pretenden alcanzar al diseñar un sistema
de control, es que dicho sistema sea estable. Uno de los métodos simples y directos para determinar la
estabilidad es el análisis de criterio de magnitud que describiremos a continuación.
1
1 INTRODUCCIÓN
Para K p = 2, tenemos la ecuación caracterı́stica: z2 − 0.6321z + 0.8963 = 0. Las raı́ces son: z = 0.3161 ±
j0.8924
√
El radio de z: r = |z| = 0.31612 + 0.89242 = 0.947 < 1, entonces el sistema es ESTABLE.
Para Kp = 3, tenemos la ecuación caracterı́stica: z2 − 0.2642z + 1.1605 = 0. Las raı́ces son: z = 0.1321 ±
j1.069
√
El radio de z: r = |z| = 0.13212 + 1.0692 = 1.077 > 1, entonces el sistema es INESTABLE.
1 1
0.5 0.5
Imaginary Axis
Imaginary Axis
0 0
−0.5 −0.5
−1 −1
1 1
0.5 0.5
Imaginary Axis
Imaginary Axis
0 0
−0.5 −0.5
−1 −1
El análisis de la estabilidad viene según la ecuación caracterı́stica del sistema de control en lazo cerrado,
1 + G H(s) = 0. Por otro lado, la salida del sistema de la Figura 3 puede ser expresada según.
n
K ∏(z − zi )
C(z) = n R(z)
∏(z − pi )
Donde zi son los ceros y pi son los polos de la función de transferencia del sistema en lazo cerrado.
Usando la expansión de fracciones parciales, C(z) puede ser expresada.
k1 z kn z
C(z) = +···+ +CR (z)
z − p1 z − pn
Donde CR (z) contiene los términos de C(z) que se originan en los polos de R(z).
Los primeros n términos de la ecuación son términos de la respuesta natural de C(z). Si la transformada
inversa-z a estos términos tienden a cero cuando el tiempo se incrementa , entonces el sistema es estable,
estos términos son llamados respuesta transitoria. La transformada-z del i-ésimo términos es.
{ }
−1 ki z ˙ i )k
Z = ki (p
z − pi
Si la magnitud de pi es menor que 1, estos términos se aproximan a cero cuando k se aproxima a infinito.
Ejemplo: Se conoce la respuesta al impulso de un sistema representado como una función de transfer-
encia. Asumiremos que el polo en general es un número complejo que escrito en forma polar es:
p = me jθ
Donde, m es la magnitud y θ es la fase. La respuesta al impulso para el sistema H(z) es:
{ } { }
∞
b
yδ (k) = Z −1 = Z −1 b ∑ pk z−k
1 − pz−1 k=0
k k jkθ
= bp = b|m| e
De esta última ecuación podemos ver que la magnitud m determina la respuesta impulso en estado esta-
cionario converge o no a cero. De la ecuación, también podemos obtener la relación entre la estabilidad y
la ubicación del polo. Las “áreas de la estabilidad” en el plano complejo son mostradas en la Figura 4.
Im Area de polo
1 inestable
0.8
0.6
−0.2
−0.4
−0.6
−0.8
−1
2. Análisis de la Estabilidad
Asumiremos un sistema dinámico con una entrada u(k) y una salida y(k). El análisis de la estabilidad
tiene que ver la respuesta impulsiva impulso δ (0) en la entrada del sistema dinámico que presentan las
siguientes propiedades:
lı́m yδ (k) = 0
k→∞
Sistema Inestable:
La respuesta impulso es ilimitada:
lı́m yδ (k) = ∞
k→∞
b0 z + b1
H(z) = 2
z + a1 z + a2
Plotear la respuesta impulsional para los parámetros de la tabla. Asuma un periodo de muestreo de 1 se-
gundo se muestra en la Figura 5.
Sistema Parámetros
Asintóticamente estable b0 = 0.019, b1 = 0.019, a1 = −1.885, a2 = 0.923
Marginalmente estable b0 = 0.020, b1 = 0.020, a1 = −1.960, a2 = 1.0
Inestable b0 = 0.021, b1 = 0.021, a1 = −1.960, a2 = 1.08
yδ (k) = Z −1 {H(z)}
Consecuentemente, la propiedad de la estabilidad es determinada por los polos y ceros de H(z). Ası́ mis-
mo, podemos ver que los polos determinan la estabilidad.
−1
0 1 2 3 4 5 6 7 8 9 10
−1
−2
0 1 2 3 4 5 6 7 8 9 10
Sistema inestable
50
−50
−100
0 1 2 3 4 5 6 7 8 9 10
kT (seg)
Ahora vamos a derivar la relación entre la estabilidad y los polos para estudiar la respuesta impulsiva del
siguiente sistema:
Y (z) bz
H(z) = =
U(z) z − p
El polo es p, podrı́amos pensar que este sistema es demasiado simple como una base para obtener las
condiciones generales para la estabilidad. En este sistema siempre podemos tener su transformada-z que
pueden ser fraccionadas en sumas de funciones de transferencia parciales o en términos que contenga
cada uno un polo. Usando el principio de la superposición podemos concluir acerca de la estabilidad de
la función de transferencia original. Tenemos las siguientes propiedades de la estabilidad:
Sistema Inestable:
Al menos un polo está fuera del cı́rculo unitario, o también, Hay múltiples polos en el cı́rculo
unitario.
Y (z) b(z − c)
H1 (z) = = = (z − c)H(z)
U(z) z− p
Donde H(z) es el sistema “original” (sin ceros) que fué analizado. El cero es c, podemos escribir H1 (z)
de otra forma:
bz −bc
H1 (z) = + = H(z) − cz−1 H(z)
z− p z− p
Por ejemplo considere un sistema discreto lineal de primer orden en donde tiene un cero en un caso y
en otro es omitido este cero. La Simulaciones de la Figura 6 muestra que el cero no es incluyente en el
análisis de la estabilidad.
1 p=0.1;
2 c=0.05;
3 b=1;
4 P1=zpk(c,p,b,1);
5 P2=zpk([],p,b,1);
1.5
0.5
−0.5
0 2 4 6 8 10 12 14 16 18 20
1.5
0.5
−0.5
0 2 4 6 8 10 12 14 16 18 20
tk[seg]
Ejemplo: Analice la estabilidad de un sistema en tiempo discreto en un plano-z a través del mapeo de
polos y ceros. Considere un prototipo representada por la función de transferencia dado por.
Y (z) b1 z + b0
= H(z) = 2
U(z) z + a1 z + a0
Los parámetros del sistema son mostrados para tres casos según:
3. Sistema inestable:
La función de transferencia presenta los parámetros:
b0 = 0.0950, b1 = 0.019, a1 = −2.04, a2 = 1.08. Los polos son: z1,2 = 1.02 ± j0.20. La Figura 7
(subplot(223)) muestra los polos fuera del cı́rculo unitario.
1 1
0.5 0.5
Im(z)
Im(z)
0 0
−0.5 −0.5
−1 −1
−1.5 −1.5
−1 0 1 −1 0 1
Re(z) Re(z)
Inestable
1.5
0.5
Im(z)
−0.5
−1
−1.5
−1 0 1
Re(z)
Figura 7: Polos y ceros para los tres sistemas cada uno con diferente propiedad de estabilidad.
La función de transferencia pulso de U(z) a Y (z) puede ser representada desde el modelo espacio estado
discreto.
Y (z) ( )−1
H(z) = = Cd zI − Ad Bd + DD
U(z)
Adj(zI − Ad )
= Cd Bd + Dd
det(zI − Ad )
El determinante de la ecuación caracterı́stica define los eingenvalues (valores propios) del sistema. Los
valores propios son la solución de esta ecuación. Ası́ mismo, los polos son iguales a los valores propios,
y la relación entre las propiedades de la estabilidad y los valores propios son la misma relación entre las
propiedades de la estabilidad y los polos.
Estabilidad externa, o entrada-salida, que se refiere a la estabilidad del sistema con condiciones
iniciales nulas. La estabilidad externa describe el efecto de perturbaciones en las entradas sobre el
comportamiento dinámico de la salida del sistema.
Estabilidad interna, que se refiere a la estabilidad del sistema autónomo (sin entradas). La estabili-
dad interna describe el efecto de perturbaciones en las condiciones iniciales sobre comportamiento
dinámico de los estados del sistema.
El caso discreto es análogo al caso continuo, en este caso la salida como respuesta impulsiva es.
∞ ∞
y(k) = ∑ g(k − m)u(m) = ∑ g(m)u(k − m)
m=0 m=0
Donde g(k) es la secuencia respuesta a un impulso discreto aplicado en el instante k = 0. Resumimos los
resultados principales en los siguientes teoremas.
Teorema: Estabilidad BIBO Discreta Un sistema discreto con respuesta al impulso es estable BIBO
(Bounded Input Bounded Output) si y solo si existe una constante finita M tal que la respuesta impulsiva
satisface la condición.
∞
∑ |g(k)| ≤ M < ∞
m=0
Notar que en el caso de tiempo continuo las funciones absolutamente integrables pueden no ser acotadas,
o no tender a 0 cuando t → ∞. En el caso de tiempo discreto, si g(k) es absolutamente sumable entonces
debe necesariamente ser acotada y aproximarse a 0 cuando k → ∞. Resumiendo la estabilidad (interna)
siempre implica estabilidad (externa) BIBO.
Teorema: Respuesta en régimen permanente discreta Si un sistema discreto con respuesta al impulso
g(k) es estable BIBO, cuando k → ∞. Por ejemplo si la salida excitada por u(k) = a, para k ≥ 0, tiende a
ĝ(1)a.
Ejemplo: Sea un sistema discreto estacionario con respuesta al impulso g(k) = 1/k, para k ≥ 1, y g(0) =
0. Analizamos si g(k) es absolutamente sumable.
∞
1 1 1
g(k) = ∑ |g(k)| = 1 + 2 + 3 + 4 + · · ·
k=0
La secuencia de la respuesta al impulso es acotada pero no sumable, por lo tanto el sistema no es BIBO.
1
H(s) = C[sI − A]−1 + D =
s+3
Verificando la prueba de la estabilidad BIBO, los valores propios son λ1 = −3 y λ2 = 2 lo cual falla la
prueba de estabilidad.
1 A=[-3 1;0 2]
2 vp=eig(A); % -3 2
0.5 0.5
0 0
−0.5 −0.5
−1 −1
−4 −3 −2 −1 0 1 −4 −3 −2 −1 0 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
Disturbio de
Proceso d(s)
Proceso
Hd (z) FT Disturbio
Setpoint en
Error de Variable de
Setpoint Unidad de
Control Control FT Actuador
Medida
ysp (z) ysmSP (z) e m (z) u(z) y(z)
Hsm (z) Hc(z) Hu (z) +
Variable de
Salida del
Modelo del Proceso
Controlador
Sensor a
Sensor de
Escala
Medición
ym (z)
Hs(z)
Es suficiente el estudio de una parte extraı́da del diagrama de bloques (ver Figura 12) que se puede
representar como un diagrama de bloques compacto que contiene una función de transferencia, L(z), que
es el producto de la función de transferencia en el lazo:
H p(z)
ysmSP
u y ym
Hc (z) Hu (z) Hs (z)
L(z)
y smSP ym
u
Hc (z) Hp (z)
y smSP ym
L(z)
nL (z)
L(z) dL (z) nL (z)
T (z) = = =
1 + L(z) nL (z) dL (z) + nL (z)
1+
dL (z)
Donde nL (z) y dL (z) son el numerador y denominador polinomiales de L(z) respectivamente. La estabili-
dad de un sistema realimentado es determinado por la estabilidad de T (z).
Ejemplo: Analizar la estabilidad basado en el polo de un sistema realimentado. Asumir que el sistema
de control es proporcional (P) en un proceso integrador. La función de transferencia es:
Hc (z) = Kp
y la función de transferencia del proceso es:
Ki Ts
Hp (z) =
z−1
Asumiremos que Ki = 1 y Ts = 1s. La función de transferencia de lazo directo viene dado por:
Kp nL (z)
L(z) = Hc (z)Hp (z) = =
z − 1 dL (z)
Calcularemos el rango de valores de K p eso asegura la estabilidad asintótica del sistema de control.
El polinomio caracterı́stico es:
El sistema es asintóticamente estable si p está dentro del cı́rculo unitario o la magnitud es menor que uno:
|p| = |1 − Kp | < 1
Se satisface con: 0 < K p < 2.
Asumimos un valor de Kp = 1.3, la Figura 13 muestra la respuesta al escalón en ym para este valor de Kp .
1.5
1 1.2
1
0.5
0.8
Im(z)
0
0.6
−0.5
0.4
−1 0.2
−1.5 0
−1.5 −1 −0.5 0 0.5 1 1.5 0 2 4 6 8 10 12
Re(z) t (seg)
La Figura 14 muestra las respuestas debido a una entrada escalón unitario para diferentes valores de Kp
dentro del rango de estabilidad, excepto para el último valor en donde presenta una respuesta marginal-
mente estable (oscilatoria) no deseable para el sistema de control.
Kp = 0.5 Kp = 1
1.5 1.5
1 1
0.5 0.5
0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
t (seg) t (seg)
Kp = 1.5 Kp = 2
1.5 1.5
1 1
0.5 0.5
0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
t (seg) t (seg)
z0 z1 z2 ··· zn−1 zn
a0 a1 a2 ··· an−1 an
an an−1 ··· ··· a1 a0
b0 b1 b2 ··· bn−1
bn−1 ··· ··· ··· b0
c0 c1 ··· cn−2
cn−2 ··· ··· c0
..
.
m0 m1 m2
a0 an−k
bk = = a0 ak − an−k an
an ak
b0 bn−1−k
ck = = b0 bk − bn−1 bn−1−k
bn−1 bk
c0 cn−2−k
dk = = c0 ck − cn−2 cn−2−k
cn−2 ck
Para sistemas de segundo orden tiene solamente una fila. Las condiciones necesarias y suficientes para
que F(z) no tenga raı́ces fuera del cı́rculo unitario son:
1. F(1) > 0
z0 z1 z2 z3
−0.2 1.05 −1.8 1
1 −1.8 1.05 −0.2
b0 b1 b2
a0 a3−0 −0.2 1
b0 = = = 0.22 − 1 = 0.96
a3 a0 1 −0.2
a0 a3−1 −0.2 −1.8
b1 = = = (−0.2)(1.05) − (−1.8)(1) = 1.59
a3 a1 1 1.05
a0 a3−2 −0.2 1.05
b2 = = = (−0.2)(−1.8) − (1.05)(1) = −0.69
a3 a2 1 −1.8
luego tenemos:
m0 = b0 = −0.96
m1 = b1 = 1.59
m2 = b2 = −0.69
Ejemplo: Sea el sistema mostrado en la Figura 15. Determinar los valores de K que hacen estable al
sistema.
z0 z1 z2 z3
0.5K + 0.5 K −1 −0.5 1
1 −0.5 K −1 0.5K + 0.5
a0 a3−0 0.5K + 0.5 1
b0 = = = 0.25K 2 + 0.5K − 0.75
a3 a0 1 0.5K + 0.5
a0 a3−1 0.5K + 0.5 −0.5
b1 = = = 0.5K 2
a3 a1 1 K −1
a0 a3−2 0.5K + 0.5 K − 1
b2 = = = −1.25K + 0.75
a3 a2 1 −0.5
A partir de estos coeficientes, se puede determinar los valores de K que hacen al sistema estable. Im-
poniendo la restricción a3 > |a0 |, se tiene:
1 K=0.2;
2 Ts=1;
3 nz=[K 0.5*K];
4 dz=conv([1 1],conv([1 -0.5],[1 -1]));
5 Gla=tf(nz,dz,Ts);
6 Glc=feedback(Gla,1);
7 % Respuesta al escalón
8 t=0:Ts:25;
9 y=step(Glc,t);
10 stairs(t,y,’r’,’linewidth’,1.5)
11 hold
12 plot([0 12],[1 1],’k:’)
13 xlabel(’t (seg)’)
14 axis([0 25 -1 3])
1.5
1
1
Im(z)
0
0.5
−1
0
−1 0 1 0 10 20 30
Re(z) t (seg)
1.5
1
1
Im(z)
0
0.5
−1
0
−1 0 1 0 10 20 30
Re(z) t (seg)
3
1
2
Im(z)
0 1
0
−1
−1
−1 0 1 0 10 20 30
Re(z) t (seg)
Root Locus
Tiempo Discreto con MATLAB
+
-
Y ( z) Gc ( z )G p ( z )
=
R( z ) 1 + Gc ( z )G p ( z )
2
Ecuación Característica
1 + Gc ( z )G p ( z ) = 0
m
K ∏ ( z − zi )
KB ( z )
Gc ( z )G p ( z ) = n
i =1
=
∏ (z − p )
A( z )
j
j =1
KB ( z )
1+ =0
A( z )
KB ( z )
La condición de magnitud es: =1 Usado para asociar la raíz
A( z ) con una ganancia
ωd = 0.3ω N ζ = 0 .1
0.2ω N
ζ = 0. 9
ωn = ω N
ζω n = cte
ωs 2πf s π
ωN = = = z = eTs = eσT e jωT = re jθ
2 2 T ζ =0
5
=
10
Procedimiento de Diseño
La región aceptable para los polos dominantes en lazo cerrado basados en el
requerimiento de la respuesta transitoria.
z 1
= lim ( z − 1)
z →1 z − 1 1 + Gc ( z )G p ( z )
1
= lim
z →1 1 + Gc ( z )G p ( z )
1 1
Para sistema de tipo 0 e(∞) = lim =
z →1 1 + Gc (1)G p (1) 1 + K p
Ejemplo # 1
0.1
Planta continua G p ( s) =
s( s + 0.1)
z + 0.9672
Discretización por ZOH para T=1 G p ( z ) = 0.0484
( z − 1)( z − 0.9048)
z + 0.9672
1 + 0.0484K p =0
( z − 1)( z − 0.9048) ζ = 0.5
ωn ≥ 1, ⇒ ωn = 1
Especificaciones de diseño
π ω
T = 1, ω N = ⇒ n = 0.32
T ωN
ζωn = 0.5 ⇒ r = 0.61
8
10
11
12
13
Ejemplo # 2
Sea el sistema de segundo orden de la Figura, cuya entrada es un
escalón unitario. Analizar la estabilidad usando la técnica del Root Locus.
1
s ( s + 1)
Discretizando la planta
G ( s ) 0.36788( z + 0.7183)
Gd ( z ) = (1 − z −1 ) Z s =
s ( z − 1)( z − 0.3679)
14
Polos y ceros:
c = −0.7183
p1 = 1
p2 = 0.3679
15
Calculando el centroide:
∑P −∑Zi i
1 + 0.3679 − ( −0.7183)
σ= i=2 i =1
= = 2.0862
# P −# Z 2 −1
16
dL( z )
Calculando los puntos de ruptura:
K =1 =0
dz
( z − 1)( z − 0.3679)0.3679 − 0.3679( z + 0.7183)(2 z − 1.3679) = 0
17
1
K =− z = −2.08, 0.648
L( z )
Para z=-2.08
Para z=0.648
18
K1 = 15.84, ( z = −2.08)
Puntos de ruptura
K 2 = 0.196, ( z = 0.648)
19
1 + KL ( z ) K = 2.39 = 0 ⇒ z = 1∠75.8°
z 2 − 0.4887 z + 0.9993 = 0
20
Marginalmente estable
K = 2.39
Marginalmente estable
21
22
23
0.36788K ( z + 0.7183)
1+ =0
( z − 1)( z − 0.3679)
24
25
function [pol,juri]=jury(pd)
n=length(pd)-1;
jtable=[fliplr(pd);pd;zeros(2*n-4,n+1)];
vec=[pd(1);zeros(n-2,1)];
vecf=[pd(end);zeros(n-2,1)];
k=2;
for i=2:2:2*(n-2)
jtable(i+2,1:n-k+2)=jtable(i-1,1)*jtable(i,2:n-k+3)-jtable(i,1)*jtable(i-1,2:n-k+3);
jtable(i+1,1:n-k+2)=fliplr(jtable(i+2,1:n-k+2));
vec(k)=jtable(i+1,1);
vecf(k)=jtable(i+1,end-k+1);
k=k+1;
End
pol=poly2sym(pd,'x');
juri=jtable; %Muestra tabla
26
27
28
% Condiciones de Jury
disp('------------------')
disp('Primera Condición:')
disp('------------------')
F1=subs(pol,'x',1);
fprintf('0<') ----------------------------
disp(F1) Primera Condición:
k1=solve(F1); ----------------------------
k1=eval(k1); 0<0.6321*K - 0.0001
disp('k1')
disp(k1) k1
disp('------------------') 1.5820e-004
while 0<subs(F1,'K',k1)
k1=k1; ----------------------------
end 0.0001582<K
fprintf(num2str(k1))
disp('<K')
29
disp('------------------')
disp('Segunda Condición:')
disp('------------------')
F2=(-1)^(length(CL)-1)*subs(pol,'x',-1);
fprintf('0<')
disp(F2)
k2=solve(F2); ------------------------------
k2=eval(k2); Segunda Condición:
disp('K2') ------------------------------
disp(k2) 0<2.7359 - 0.1037*K
disp('------------------')
while 0<subs(F2,'K',k2) K2
k2=k2; 26.3828
end
fprintf(num2str(k2))
disp('>K')
30
disp('------------------')
disp('Tercera Condición:')
disp('------------------')
----------------------------
fprintf([num2str(sym2poly(juri(1,3))),'>'])
Tercera Condición:
disp(juri(1,1))
----------------------------
k3=0;
1>0.2642*K + 0.3679
while sym2poly(juri(1,3))>subs(juri(1,1),'K',k3)
k3=k3+0.01;
2.4>K
end
K3
disp([num2str(k3),'>K']);
2.4000
disp('K3')
----------------------------
disp(k3)
Intervalo de K:
disp('------------------')
0.0001582 < K < 2.4
% Hallando K
kmin=k1;
kmax=min(k2,k3);
disp('Intervalo de K: ')
disp([num2str(kmin),' < K < ',num2str(kmax)]),
31
Intervalo de K:
0.0001582 < K <
2.4
32
33
Ejemplo # 3
Hallar la respuesta temporal del sistema realimentado G(z) para un
periodo de muestreo de 1 segundo.
8
G( z) =
z − z + 0.5
2
0.5
θ = tan −1 = 0.7854rad = 45°
0.5
34
0.5
γ = π − tan = 2.3562rad = 135°
1 − 0.5
La magnitud del radio para el polo deseado es:
ln z
r = e −σT ⇒ σ =− = 0.3466
T
35
γ
nr = =3
θ
π
np = = 4
θ
π
ns = = 9.0647
σ
M p (%) = e −πσ /θ × 100 = 25%
36
37
Ejemplo # 4
Determine si el sistema espacio estado es asintóticamente estable será
BIBO estable. Considere un periodo de muestreo de un segundo.
3 / 4 − 1 / 4 1 / 4 1
xk +1 = 1 / 4 1 / 4 3 / 4 xk + 1 u k
1 / 2 − 1 / 2 3 / 2 0
yk = [1 1 1]xk
det ( zI − A) = 0
Calculando el determinante.
0.5000 + 0.0000i
1.0000 + 0.0000i
1.0000 - 0.0000i 38
39
1 1
det (zI − A) = z 3 − z + 2 z − = z − ( z − 1)
5 2 2 No es Asintóticamente
2 2 2 estable
2(z − 1)
2
G( z) =
1
z − (z − 1)
2
2
2
G( z) =
1
BIBO ESTABLE z −
2
10
G ( s) =
s + 4s + 1
2
41
2π
Td =
ωd
Luego tomamos la décima parte como una consideración de diseño para
la elección del periodo de muestreo.
Td 2π
Ts = = ⇒ ω s = 10ωd
10 10ω d
G ( s ) 0.18348( z + 0.7467)
G ( z ) = (1 − z −1 ) Z s =
s ( z − 0.9428)( z − 0.44)
43
10
s 2 + 4s + 1
G ( s ) 0.25178( z + 0.6593)
G p ( z ) = (1 − z −1 ) Z s p = 2
s z − 0.874 z + 0.2918
Polos deseados
Ecuación característica
1 + KL( z ) = 0
Aplicando Jury
45
46
Polos deseados
47
48
Ejemplo # 6
Para el sistema mostrado, T=1s y D(z)=K.
L( z ) = D( z )G ( z )
49
0.6321 0.6321K
G( z) = → L( z ) =
z − 0.3679 z − 0.3679
-1 1 Re
-j
50
Debe ser estable hasta que se mueva la raíz 0.3679 de K=0 a K=1, en el
punto de 1+KL=0 evaluado en z=-1.
0.6321K
1+ =0
(−1) − 0.3679
1.3679
K= = 2.1641
0.6321
51
52
Ejemplo # 7
Un sistema de brazo robótico es mostrado, siendo T=0.1s y D(z)=1
53
0.0013112( z + 0.9355)
L( z ) =
( z − 1)( z − 0.8187)
P=
1.0000
0.8187
Z=
-0.9355
∞
54
Puntos de ruptura
d ( L( z ))
=0
dz
z 2 + 1.8708 z − 2.5199 = 0 → z1, 2 = 0.9071,−2.7779
55
1 + KL ( z ) = 0
z 2 − 1.8187 z + 0.8187 + K (0.0013) z + K (0.0012) = 0
Resultando la ganancia
56
57
Índice
1. Root Locus en el Plano–Z 2
2. Estabilidad en el Plano–Z 4
2.1. Solución Plano–s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2. Solución Plano–z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1
1 ROOT LOCUS EN EL PLANO–Z
Para analizar la estabilidad podemos emplear el método de la respuesta impulsional y sus caracterı́sticas.
Otro método que es bastante utilizado es el llamado root locus (lugar de las raı́ces) es una herramienta
que establece un polinomio en la forma:
Z(z)
Q(z) = 1 + K =0
P(z)
Donde:
P(z) + KZ(z) = 0
Las técnicas usadas para dibujar el root locus en el plano–s es idéntico a los métodos usados para dibujar
el ploteo del root locus en el plano–z.
Una diferencia entre el plano–s y el plano–z es como interpretar ploteo del root locus. El tema central de
esta diferencia queda en la transformación de s a z. La transferencia de los polos se realiza por la relación
de mapeo dado por:
z → esT
Esto tiene varias implicaciones:
♣ En el dominio del tiempo continuo, la ganancia DC es un punto importante para analizar la respuesta
al escalón, esto se obtiene haciendo el lı́mite s → 0.
z La lı́nea de división entre los polos estables e inestables en el plano–z es e jω T (el circulo unitario).
♣ Los polos del semiplano izquierdo son estables en el plano–s si ℜ del polinomio caracterı́stico
Q(s) < 0.
z Los polos dentro del cı́rculo unitario son estables en el plano–z, |z| = |esT | < 1.
4 4
ts = =
σ ζ ωn
Donde ζ es el factor de amortiguamiento y ωn es la frecuencia natural no amortiguada.
z La amplitud del polo en el plano–z determina el tiempo de establecimiento. Los polos en el plano–z
se mapean desde s = σ , resultando, z = eσ T . Tomando logaritmo natural, obtenemos:
ln z
ln z = σ T ln e → σ =
T
Por otro lado el tiempo de establecimiento para un 2 % es:
4 4T
ts = → ts =
σ ln z
Desde el análisis del tiempo de establecimiento podemos resolver:
|z|k = 0.02
4
ts = kT = T
ln |z|
4
k =
ln |z|
s = j ωd
z = esT = e jωd T
∠z = ωd T
En la Figura 2 se muestra un lugar de las raı́ces del plano–s que son mapeados en el plano–z, indicando
que se encuentran en la región estable dentro del circulo unitario.
2
0.5
1
0 0
−1
−0.5
−2
−3 −1
−1.5 −1 −0.5 0 −1 −0.5 0 0.5 1
2. Estabilidad en el Plano–Z
Diseñe un controlador tipo proporcional para la planta para que el sistema tenga un amortiguamiento
menor que 0.7.
2
G(s) =
s(s + 1)
1 + KG(s) = 0 → s2 + s + 2K = 0
√
las raı́ces son: s1,2 = −0.5 ± j0.5 1 − 8K. Seleccionamos un factor de amortiguamiento de 0.707.
Usaremos MATLAB para simplificar los cálculos, de ese modo en estas lı́neas podemos encontrar las
raı́ces.
zeta =0.707;
q= a c o s ( z e t a ) ;
t h e t a =q ∗ 1 8 0 / p i ; % 45 ◦
s 1=−c o s ( q ) + j ∗ s i n ( q )
% −0.7070 + 0 . 7 0 7 2 i
El polo de s1 = −0.7070 + 0.7072i y su conjugado se muestran en la Figura 3.
Root Locus
1
0.76 0.64 0.5 0.38 0.24 0.12
0.8
0.6
0.88 sd
0.4
d1 d2
0.97
0.2
Imaginary Axis
θ = 45°
1 0.8 0.6 0.4 0.2
0
−0.2
0.97
−0.4
−0.6
0.88
−0.8
Mientras que el polo deseado para K = 0 es, sd = −0.5 + j0.5, se observa que está en la lı́nea del amor-
tiguamiento del root locus de la Figura 3. Aplicando el criterio de magnitud obtenemos el valor de la
ganancia K
( √2 )( √2 )
2K = d1 d2 ⇒ K = 0.5 = 0.25
2 2
La respuesta del sistema debido a una entrada escalón se muestra en la Figura 4.
1.2
0.8
y(t)
0.6
0.4
0.2
0
0 2 4 6 8 10 12 14 16 18 20
t
0.0096748(z + 0.9672)
G(z) =
(z − 1)(z − 0.9048)
Para el ploteo del root locus de G(z) en el plano–z la parte del lugar de las raı́ces está cercano a z = 1 (en
el plano–s era en el origen de coordenadas, es decir, s = 0), esto determina el polo dominante. Además se
mantiene verdadero en el plano–z sólo que z esta cercano a +1, estos resultados se pueden observar en el
ploteo del root locus de la Figura 5.
Root Locus
0.2
−0.05
−0.1
−0.15
−0.2
0.85 0.9 0.95 1 1.05
Real Axis
Ubicando un punto en el root locus para poner el polo dominante. Para el factor de amortiguamiento de
0.707, reemplazamos esta constante en z = eσ T que luego será reemplazada en la ecuación caracteristica
obtenemos, z = 0.95 + 0.05i.
Escogemos K para poner los polos en el root locus. En cualquier punto en el root locus, se cumple
GK = −1. Las lı́neas de MATLAB que se listan debajo resolverán los cálculos de las evaluaciones de la
forma polar de la función de transferencia.
T=0.1;
G= t f ( 2 , [ 1 1 0 ] ) ;
Gz= c2d (G, T , ’ zoh ’ ) ;
[ n , d ] = t f d a t a ( Gz , ’ v ’ ) ;
s d = −0.5+0.5 i ;
d s d = exp ( s d ∗T ) ; % 0.9500 + 0.0475 i
[ num , den ] = t f c h k ( n , d ) ;
X= ( p o l y v a l ( num , dsd , T ) ) / ( p o l y v a l ( den , dsd , T ) ) ; % −4.1000 + 0 . 1 0 3 4 i
e v a l r e =− r e a l (X ) ; % 4.1000
e v a l i m = a n g l e (X) ∗ 1 8 0 / p i ; % 178.5557
K= 1 / e v a l r e ; % 0.2439
Luego podemos verificar en forma analı́tica de la siguiente forma:
( )
0.0096748(z + 0.9672)
G(z) = K K = −1
(z − 1)(z − 0.9048)
z=0.95+0.0475i
)
(
◦
= K 4.10∠178 = 1∠180◦ = −1
El ángulo está un poco lejos del lugar, sin embargo podemos aproximar un valor para la ganancia.
K ≈ 0.2439
Esto produce un sistema con 4 % de sobrepaso para la respuesta al escalón unitario (ζ = 0.707), siendo
el tiempo de establecimiento ts = 7.9s.
(0.9513)k = 0.02
k = 78.24
Redondeando a 78 muestras, (esto toma 78 muestras para el transitorio que decae al 2 % de su valor
inicial). El periodo de muestreo es 100ms, resultando el tiempo de establecimiento:
ts = kT
ts = 78(0.1)
Esto nos resulta ts = 7.8s que es el valor aproximado en donde se establece la señal de salida. Los re-
sultados de las simulaciones podemos apreciar en la respuesta del sistema debido a una entrada escalón
unitario se muestra en la Figura 6. Finalmente se ha verificado las consideraciones de diseño desde el
análisis del lugar geométrico de las raı́ces del plano–s y del plano–z mediante MATLAB, cuyo código se
lista a continuación.
[K, P ] = r l o c f i n d ( Gz , d s d ) ;
tk =0:T : 1 2 ;
u= o n e s ( s i z e ( t k ) ) ;
F=K∗Gz / ( 1 +K∗Gz ) ;
yd= l s i m ( F , u , t k ) ;
s t a i r s ( t k , yd )
hold
p l o t ( tk , u , ’ k ’ )
xlabel ( ’ t k ’ )
ylabel ( ’y ( t k ) ’ )
Y los resultados de las simulaciones se muestran en la Figura 6.
1.2
0.8
y(tk)
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10 11 12
tk
1 Modelado de Procesos
2
Secuencia de Lecturas
Modelado de Procesos
Relaciones:
3
Plano-s y Plano-z
Modelado(1/7)
de Procesos
Relaciones:
4
Plano-s y Plano-z
Modelado(2/7)
de Procesos
Relaciones:
5
Plano-s y Plano-z
Modelado(3/7)
de Procesos
Relaciones:
6
Plano-s y Plano-z
Modelado(4/7)
de Procesos
Relaciones:
7
Plano-s y Plano-z
Modelado(5/7)
de Procesos
= 1) ∠± (10)
6
Relaciones:
8
Plano-s y Plano-z
Modelado(6/7)
de Procesos
Relaciones:
9
Plano-s y Plano-z
Modelado(7/7)
de Procesos
10
Ejemplo # 1 (1/3) Modelado de Procesos
Dada la función de transferencia:
+&
' =
( + ()( + >)( + ;)
11
Ejemplo # 1 (2/3) Modelado de Procesos
El valor de necesario para ajustar la ganancia DC de se obtiene a
partir de la ecuación (12).
+& + & ( ( − N. QNRS)
KL = OK L
→N ( + ()( + >)( + ;) →& ( − N. S&S<)( − N. <RNS)( − N. TNT;)
&
(N. ;Q>O = O = N. NN&T&S
>N
12
Ejemplo # 1 (3/3) Modelado de Procesos
La figura muestra las respuestas de I(J) y I( ) de a un escalón
unitario. Como puede verse, las dos respuestas son similares.
13
Secuencia de Lecturas
Modelado de Procesos
14
Estabilidad (1/4) Modelado de Procesos
Para el sistema de control en tiempo discreto que se muestra en la
figura, la función de transferencia de pulso en lazo cerrado está
dada por:
V( ) '( )
'U = = (13)
W( ) & + 'X( )
15
Estabilidad (2/4) Modelado de Procesos
o El sistema es estable si todos sus polos de lazo cerrado es decir, si
todas las raíces de su ecuación característica están ubicados dentro
del círculo unitario del plano-z. Cualquier polo de lazo cerrado
localizado fuera del círculo unitario genera un sistema inestable.
o Un polo simple localizado sobre el circulo unitario ( = 1), hace
que el sistema sea críticamente estable, igual cosa sucede si existe
un solo par de polos complejos conjugados ubicados sobre el
círculo unitario. Cualquier polo múltiple ubicado sobre el círculo
unitario hace que el sistema sea inestable.
o Los ceros de lazo cerrado no afectan la estabilidad del sistema y,
por lo tanto, pueden estar localizados en cualquier parte del plano-
.
16
Estabilidad (3/4) Modelado de Procesos
La estabilidad absoluta de un sistema discreto se puede determinar
por diferentes métodos aplicables a la ecuación característica del
sistema sin necesidad de encontrar sus raíces. Dos de estos métodos
son la prueba de Estabilidad de Jury y el criterio de Estabilidad de
Routh, basado en la transformación bilineal.
17
Estabilidad (4/4) Modelado de Procesos
18
Prueba de Estabilidad deModelado
Jury de Procesos
19
Tabla de Jury Modelado de Procesos
20
Condiciones de Jury
Modelado de Procesos
(3) ZN < Z
]N > ] 1& N > 1( ⋯ ^N > ^(
21
Procedimiento de Prueba
Modelado de Procesos
22
Ejemplo # 2 (1/4) Modelado de Procesos
Determinar la estabilidad del sistema de control discreto cuya
función de transferencia en lazo cerrado es:
(( + N. ;)
' = R − N. S > + N. ; ( + N. ( − N. &
23
Ejemplo # 2 (2/4) Modelado de Procesos
Paso 1: Verificación de las condiciones 1, 2 y 3.
@ & = & − N. S + N. ; + N. ( − N. & = N. S > N CUMPLE
24
Ejemplo # 2 (3/4) Modelado de Procesos
25
Ejemplo # 2 (4/4) Modelado de Procesos
]N ]( −N. QQ N. <S
= = = N. T>S& N. QT;< > N. T>S&
(
]R ]( −N. &( −N. ;;
CUMPLE
26
Código MATLABModelado de Procesos
27
Ejemplo # 3 (1/4) Modelado de Procesos
Para el sistema de control discreto de la figura, determinar el valor o
valores de la ganancia e para los cuales el sistema es estable. Asumir
como periodo de muestreo 8 = 1seg.
N. RSNS( + N. (>QR)
X' =
( − &)( − N. NNT<>)
La función de transferencia de pulso:
28
Ejemplo # 3 (2/4) Modelado de Procesos
La ecuación característica del sistema es:
@ = ( − &. NNT<> − N. RSNSO + N. &&;&O = N
29
Ejemplo # 3 (3/4) Modelado de Procesos
30
Ejemplo # 3 (4/4) Modelado de Procesos
31
Secuencia de Lecturas
Modelado de Procesos
32
Criterio de Estabilidad deModelado
Routh de Procesos
2 −1
= (21)
8 +1
33
Criterio de Routh (1/2)
Modelado de Procesos
q5 =
•x uvw| 1(•z )(uvwx )
qj =
•x uvwz 1(•y )(uvwx )
•x •x
34
Criterio de Routh (2/2)
Modelado de Procesos
35
Ejemplo # 4 (1/5) Modelado de Procesos
Determinar el valor e de para el cual el sistema de control discreto
de la figura es estable. Considere un periodo de muestreo de 2 seg.
ƒk = „8 + ∆8 F =1−∆ F8 = 8 − ∆8
36
Ejemplo # 4 (2/5) Modelado de Procesos
De las relaciones anteriores obtenemos:
3 = 1 2 + ∆8 ∆8 = 1 2F = 2 − 1 F = 0.5
0.1
I = 1− 1j 1j •
‚`
J(J + 0.1)
0.476( − 0.9044)
Obtenemos:
‰I = 15
( − 0.8187)
37
Ejemplo # 4 (3/5) Modelado de Procesos
Utilizando la transformación bilineal con 8 = 0.2 seg , se obtiene:
1+
0.476 − 0.9044
‰I = 1−
1+ 5
1+
− 0.8187
1− 1−
0.025 1 − 5 + 19.9205
1+ =0
1+ 5 + 0.09968
38
Ejemplo # 4 (4/5) Modelado de Procesos
El arreglo de Routh para la ecuación anterior es:
n 1 + 0.025e 1.1993 − 0.971e
5
2.0996 + 0.448e 0.0996 + 0.498e
j Š 2.4184 − 2.006e − 0.446e 5
k 2.0996 + 0.448e 0
0.0996 + 0.498e
39
Ejemplo # 4 (5/5) Modelado de Procesos
La frecuencia de oscilación para K = 0.998 se puede determinar a
partir de la fila de 5 en el arreglo. En esta fila, se reemplaza e y se
resuelve la ecuación resultante ‹ para , cuyo valor corresponde a la
parte imaginaria de . Para el caso del ejemplo que se analiza, la
ecuación para evaluar a ‹ es:
2.0996 + 0.448(0.988) ‹
5 + 0.0996 + 0.498 0.988 = 0
2.542 ‹
5 + 0.591 = 0 ‹ = ± 0.482
40
Secuencia de Lecturas
Modelado de Procesos
41
Introducción Modelado de Procesos
Condición
42
de Angulo y Modulo (1/2)
Modelado de Procesos
1+I =0
(23)
1 + I‰ =0
Condición
43
de Angulo y Modulo (2/2)
Modelado de Procesos
Los valores de z que cumplen simultáneamente las dos condiciones anteriores, son las raíces
de la ecuación característica, es decir, son los polos de lazo cerrado del sistema.
44
Reglas del Root Locus Modelado
(1/7)de Procesos
Para trazar el lugar de las raíces de un sistema discreto se obtiene
primero la ecuación característica o sea 1 + Ž( ) = 0 y se reescribe
esta ecuación de modo que el parámetro de interés (la ganancia e por
lo general), aparezca como un factor de multiplicación en la forma:
( + j )( + 5 ) ⋯ ( + ` )
Y =1+ (28)
( + rj )( + r5 ) ⋯ ( + ri )
45
Reglas del Root Locus Modelado
(2/7)de Procesos
Regla 1: El lugar geométrico de las raíces comienza en los polos de
Ž( ) para e = 0 y termina en los ceros de Ž( ) para e = ∞.
Regla 2: El número de ramas del lugar geométrico de las raíces es
igual al mayor entre “ y • siendo “ el número de polos y Z el
número de ceros de Ž( ) .
Regla 3: El lugar geométrico de las raíces es simétrico con respecto
al eje real del plano .
Regla 4: El número de asíntotas que presenta el lugar geométrico de
las raíces de una ecuación es ” = “ − •. Las asíntotas convergen en
un punto localizado sobre el eje real, este punto se denomina “centro
de gravedad” y su localización está dada por:
∑ q——t˜ r—™—J − ∑ q——t˜ q‡t—J (29)
•. I =
“−•
46
Reglas del Root Locus Modelado
(3/7)de Procesos
Regla 5: El ángulo que cada asíntota forma con el eje real, está dado
180(2s + 1)
por:
š= (30)
“−•
47
Reglas del Root Locus Modelado
(4/7)de Procesos
Angulo de Partida del Polo:
48
Reglas del Root Locus Modelado
(5/7)de Procesos
Angulo de Llegada al Cero:
49
Reglas del Root Locus Modelado
(6/7)de Procesos
Regla 8: Si existen dos polos adyacentes sobre el eje real, el lugar
geométrico de las raíces abandona el eje, si existen dos ceros
adyacentes sobre el eje real, el lugar geométrico de las raíces
converge en el eje. El punto en el cual el lugar geométrico de las
raíces abandona o converge en el eje real se denomina “punto de
ruptura” o “punto de silla” y su ubicación se puede determinar
resolviendo la ecuación:
˜e
=0 (33)
˜
También:
˜I‰( )
=0
˜
50
Reglas del Root Locus Modelado
(7/7)de Procesos
Regla 9: Los puntos en los cuales el lugar geométrico de las raíces
corta al eje imaginario se determinan haciendo = Ÿ en la ecuación
característica, igualando la parte real y la parte imaginaria a cero y
resolviendo las ecuaciones resultantes para Ÿ y e. Los valores
obtenidos, dan la localización del punto de corte con el eje
imaginario y la ganancia e en dicho punto.
51
Ejemplo # 5 (1/8) Modelado de Procesos
Suponiendo que en el sistema de control discreto de la figura la
función de transferencia de pulso ‰I( ) en lazo abierto está dada
por:
0.5e( + 0.5)
‰I =
( − 0.8)( 5 − 0.8 + 0.41)
52
Ejemplo # 5 (2/8) Modelado de Procesos
Regla 1: Número de ceros • = 1 en z = −0.5
Número de polos P = 4 en z = 0, z = 0.8, y z = 0.4 ± 0.5
53
Ejemplo # 5 (3/8) Modelado de Procesos
Regla 5: Ángulo de las asíntotas
180° 180° ∗ 3 180° ∗ 5
šk = = 60° šj = = 180° š5 = = 300°
3 3 3
54
Ejemplo # 5 (4/8) Modelado de Procesos
› = 180° − • ∡ ˜‡ —ƒt—J r—™—J + • ∡˜‡ ™—J q‡t—J
› = 180° − •j + •5 + •n + ž
0.5
•j = 180° − †ƒ†G = 128.6°
0.4
0.5
•5 = †ƒ†G = 51.3°
0.4
•n = 90°
0.5
ž = †ƒ†G = 29°
0.9
55
Ejemplo # 5 (5/8) Modelado de Procesos
Regla 8: Existen polos adyacentes sobre el eje real, por lo tanto, el
lugar geométrico de las raíces abandona el eje en el punto que
cumple con:
˜e 0.5e( + 0.5)
=0 1 + ‰I =
˜
=0
( − 0.8)( 5 − 0.8 + 0.41)
Es decir:
3 m − 1.2 n − 1.35 5 + 1.05 − 0.164 = 0
56
Ejemplo # 5 (6/8) Modelado de Procesos
Resolviendo para se obtiene:
z = −0.8047, z = 0.2303, y z = 0.4872 ± 0.24
57
Ejemplo # 5 (7/8) Modelado de Procesos
Igualando parte real e imaginaria a cero:
Ÿ m − 1.5Ÿ 5 + 0.25e = 0 1.6Ÿ n − 0.328Ÿ + 0.5eŸ = 0
58
Ejemplo # 5 (8/8) Modelado de Procesos
59
Secuencia de Lecturas
Modelado de Procesos
60
Ejemplo # 6 Modelado de Procesos
Índice
1. Consideraciones de Diseño 2
1.1. Error en Sistemas Muestreados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1. Error de Posición (entrada escalón) . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2. Error de Velocidad (entrada rampa) . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.3. Error de Aceleración (entrada parábola) . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Root Locus en Sistemas Discretos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Especificaciones y el Lugar de Raı́ces . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1. Zonas del Plano–z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1
1 CONSIDERACIONES DE DISEÑO
1. Consideraciones de Diseño
En general a partir de las especificaciones dinámicas se pueden acotar las regiones del plano–z en las que
deben estar situados los polos dominantes para cumplir con las especificaciones de diseño. Las especi-
ficaciones más habituales tienen que ver con el error en régimen permanente y la respuesta en régimen
transitorio. Como en el caso continuo, el error en régimen permanente tiene que ver con el número de
integradores en la función de transferencia en lazo abierto, y la respuesta en régimen permanente de-
pende de la posición de los polos y ceros de la función de transferencia en lazo cerrado. A continuación
recordaremos los conceptos principales relacionados con ambas respuestas y se establecen las regiones del
plano–z en la que deben estar los polos y ceros del sistema completo para cumplir con las especificaciones
impuestas a ambas respuestas.
1
{ek } = {uk } − {yk } ⇒ E(z) = U(z) −Y (z) = U(z)
1 + G(z)
Si el sistema es estable, el valor del error en régimen permanente se puede calcular a partir del teorema
del valor final:
1 1
e∞ = lı́m(1 − z−1 )U(z) = lı́m(z − 1)U(z)
z→1 1 + G(z) z→1 1 + G(z)
Ante secuencias de entrada normalizadas se tienen las siguientes expresiones de error:
z z 1 1
U(z) = ⇒ e p = lı́m(z − 1) = lı́m
z−1 z→1 (z − 1) 1 + G(z) z→1 1 + G(z)
Podemos definir, por tanto, la constante de error de posición K p :
1
Kp = lı́m G(z) ⇒ e p =
z→1 1 + Kp
Tz Tz 1 T
U(z) = ⇒ ev = lı́m(z − 1) =
(z − 1)2 z→1 (z − 1) 1 + G(z) lı́m G(z)(z − 1)
2
z→1
T 2 z(z + 1) T 2 z(z + 1) 1 T2
U(z) = ⇒ e a = lı́m (z − 1) =
2(z − 1)3 z→1 2(z − 1)3 1 + G(z) lı́m G(z)(z − 1)2
z→1
T2
Ka = lı́m G(z)(z − 1)2 ⇒ ea =
z→1 Ka
El error en régimen permanente depende del número de polos del sistema en z = 1. Definimos el tipo de
un sistema como el número de polos que tiene la función de transferencia en bucle abierto del sistema.
1
G(z) = Ĝ(z)
(z − 1)N
Dependiendo del tipo del sistema, el error en régimen permanente será definido para cada una de las
entradas, según la Tabla.
1
Tipo 0 ∞ ∞
1 + Kp
T
Tipo 1 0 ∞
Kv
T2
Tipo 2 0 0
Ka
En el caso de sistemas con realimentación no unitaria, la función de transferencia en lazo cerrado serı́a:
1
E(z) = U(z) − HY (z) = U(z)
1 + HG(z)
En este caso, hay que hacer algunos ajustes en las ecuaciones que obtuvimos anteriormente.
1
Error de posición : ep =
1 + HKp
T
Error de velocidad : ev =
HKv
T2
Error de aceleración : ea =
HKa
Si la realimentación posee una función de transferencia H(s), lo correcto es comparar la entrada con la
salida corregida por la ganancia estática del sensor dado por.
( [ ] )
h = H(s)
s=0
El método del lugar de raı́ces en tiempo continuo puede ser extendido sin modificaciones a sistemas en
tiempo discreto, excepto porque el lı́mite de estabilidad queda modificado en el eje jω del plano–s al
cı́rculo unitario en el plano–z. Sin embargo, la localización de los polos para el sistema en lazo cerrado
en el plano–z debe ser interpretada de forma distinta a la correspondiente en el plano–s, ya que hay una
relación de mapeo dado por z = esT .
El objetivo fundamental en el diseño de un controlador mediante el método del lugar de las raı́ces consiste
en añadir polos y ceros a la función de transferencia en lazo abierto del sistema para modificarla en lazo
cerrado, de forma que cumplan las especificaciones determinadas.
Si llamamos F(z) a la función de transferencia en lazo abierto de la planta, sabemos que los polos vienen
determinados por las raı́ces de la ecuación caracterı́stica, que viene dada por:
1 + F(z) = 0
Esta ecuación se puede escribir de la forma:
F(z) = −1
Dado que F(z) es una cantidad compleja, esta última ecuación se puede dividir en dos ecuaciones al
igualar primero los ángulos y a continuación las magnitudes de ambos miembros para obtener:
Los valores de z que satisfacen tanto las condiciones de ángulo como de magnitud son las raı́ces de la
ecuación caracterı́stica, es decir, los polos en lazo cerrado. Una gráfica de los puntos en el plano complejo
que satisfacen solamente la condición de ángulo es el lugar de raı́ces. Las raı́ces de la ecuación carac-
terı́stica (los polos en lazo cerrado) que corresponden a un valor dado de la ganancia pueden localizarse
en el lugar geométrico de las raı́ces mediante la condición de magnitud (criterio de magnitud).
Ejemplo: Vamos a hacer en principio un análisis de los efectos de la ganancia K y del periodo de
muestreo T sobre la estabilidad relativa del sistema de control en lazo cerrado. Suponemos una planta
G p (s) dado por la función de transferencia.
1
G p (s) =
s+1
Un controlador GD (z) definido según.
K z
GD (z) = −1
=K
1−z z−1
Dibujamos los diagramas del lugar de raı́ces para el sistema para tres valores del perı́odo de muestreo
T = {0.5, 1, 2} segundos. Con perı́odo de muestreo T = 0.5 segundos la ecuación en lazo abierto se
convierte en:
0.39347z
G(z) =
(z − 1)(z − 0.6065)
El lugar de las raı́ces para G(z) se muestra en la Figura 1.
Root Locus
0.8
0.6
0.4
0.2
Imaginary Axis
−0.2
−0.4
−0.6
−0.8
−1
Nota: Mediante la herramienta sisotool de MATLAB podemos ver el lugar de raı́ces del sistema. Moviendo
los polos del sistema en lazo cerrado vemos que la ganancia crı́tica del sistema está en K = 8.165. Los
polos en lazo cerrado para K = 2 se pueden determinar como: z1 = 0.4098 ± j0.6623 como se muestra en
la Figura 2.
Kp = 2 8.165
0.8
0.6
0.4
0.2
Imaginary Axis
−0.2
−0.4
−0.6
−0.8
−1
Para un perı́odo de muestreo T = 1 segundo, la función de transferencia en lazo abierto queda como:
0.63212z
G(z) =
(z − 1)(z − 0.3679)
En este caso el valor crı́tico de la ganancia K es 4.328, y los puntos de ruptura de salida y de en-
trada están en z = 0.6065 y z = −0.6065. Los polos en lazo cerrado correspondientes a K = 2 valen:
z1 = 0.052 ± j0.6043.
Para un perı́odo de muestreo T = 2 segundo, la función de transferencia en lazo abierto queda como:
0.8647z
G(z) =
(z − 1)(z − 0.1353)
El punto de ruptura de salida y del punto de ruptura de entrada se encuentran en z = 0.3678 y z = −0.3678,
con valores de ganancia correspondientes K = 0.4622 y K = 2.164 respectivamente. El valor crı́tico de
ganancia K para este caso es 2.626.
Conclusión: para un valor dado de ganancia K, aumentar el perı́odo de muestreo T hará que el sistema de
control en tiempo discreto sea menos estable y que eventualmente se convierta en inestable. De manera
alternativa, al reducir el periodo de muestreo T se permite que el valor crı́tico de la ganancia K respecto a
la estabilidad sea mayor.
jw
p = e- ej
x
e-
|p-1|
0 1
La relación de dichas especificaciones con la posición de los polos viene dada por las siguientes ecua-
ciones:
√
Máximo porcentaje de sobrepaso Mp = 100 e−πξ / 1−ξ 2 = 100e−π / tan θ
π
Tiempo de pico tp = √
ωn 1 − ξ 2
1 + 0.7ξ
Tiempo de retardo td = ,0≤ξ ≤1
ωn
π
Tiempo de asentamiento t s = , σ = ξ ωn
σ
π −θ
Tiempo de subida tr =
ωd
Un perı́odo de muestreo grande tiene efectos dañinos sobre la estabilidad relativa del sistema. Una regla
práctica es muestrear de 8 a 10 veces durante un ciclo de las oscilaciones amortiguadas de la salida
del sistema en lazo cerrado, si es que éste está subamortiguadas. Para sistemas sobre amortiguados es
conveniente probar de 8 a 10 veces durante el tiempo de levantamiento de la respuesta escalón.
En la Figura 4 se muestra las zonas del plano–z, es una región en donde se muestra el lugar de las raı́ces
para sistemas en tiempo discreto. La asociación de la posición del polo difiere con la respuesta transitoria.
Algunas relaciones útiles que se describen en el circulo unitario.
ωs π
ωN = =
2 T
donde ωN es la frecuencia Nyquist. La frecuencia natural viene dado por la relación:
π
ωn = 0.1ωN = 0.1
T
Código MATLAB
1 zgrid
2 axis square
3 axis([-1.1 1.1 -1.1 1.1])
1
0.5π/T
0.6π/T 0.4π/T
0.8 0.1
0.7π/T 0.3π/T
0.2
0.6 0.3
0.8π/T 0.4 0.2π/T
0.5
0.4 0.6
0.7
0.9π/T 0.8 0.1π/T
0.2 0.9
π/T
0
π/T
−0.2
0.9π/T 0.1π/T
−0.4
0.8π/T 0.2π/T
−0.6
0.7π/T 0.3π/T
−0.8
0.6π/T 0.4π/T
0.5π/T
−1
Las relaciones de la respuesta transitoria para un sistema discreto para sistemas de segundo orden son
mostradas en la siguiente tabla.
1. Fijar la posición de los polos dominantes del sistema final. A partir de las especificaciones dinámi-
cas se pueden acotar las regiones del plano z en las que deben estar situados los polos dominantes
para cumplir las especificaciones.
2. Representar el lugar de raı́ces con el objetivo de comprobar si es posible situar las raı́ces en la región
acotada de las especificaciones usando sólo una acción proporcional (regulador tipo P).
En principio debe elegirse el valor de K que, cumpliendo las especificaciones, lleve al mı́nimo error en
régimen permanente. Esto se consigue eligiendo el máximo valor de K que sitúa las raı́ces en el lugar de
las especificaciones.
1
G p (z) =
(z − 0.7)(z − 0.9)
Diseñe un controlador proporcional R(z) que cumpla las siguientes especificaciones de diseño:
◦ Mp ≤ 20 %
◦ ts ≤ 15 muestras
◦ e p ≤ 20 %
El primer paso es establecer la región de validez de las especificaciones. A partir de las ecuaciones vistas
con anterioridad:
π
= 15 ts =
σ
De esta relación obtenemos σ = π /15 = 0.2094. Por otro lado, de la relación.
Mp = e−πσ /θ = 0.2
Obtenemos la fase.
−0.2094π ( 180 )
θ= = 23.4194◦
log(0.2) π
De esta forma los polos dominantes estarán en:
0.8
0.6
0.4
0.2
Imaginary Axis
−0.2
−0.4
−0.6
−0.8
−1
Código MATLAB
1 G=tf(1,conv([1 -0.7],[1 -0.9]),1);
2 Mp=20/100;
3 sigma=pi/15; % 0.2094
4 theta=(sigma*pi/log(Mp));
5 thetag=(sigma*pi/log(Mp))*180/pi; %-23.4238
6 pd=exp(-sigma)*cos(theta)+1j*exp(-sigma)*sin(theta);
7 p1=pd;
8 p2=conj(pd);
9 p=[p1 p2];
10 ejex=linspace(0,2*pi,1000);
11 CU=1*exp(-1j*ejex);
12 plot(CU,’k’,’Linewidth’,2), hold
13 axis square
14 axis([-1.2 1.2 -1.2 1.2 ])
15 rlocus(G)
16 plot(real(p),imag(p),’kx’,’LineWidth’,2,’MarkerSize’,10)
Ahora mediremos a performance de control que se muestra en a Figura 6.
1.4
1.2
0.8
y(k)
0.6
0.4
0.2
0
0 5 10 15 20 25 30 35 40 45 50
k
La última condición a comprobar tiene que ver con el error en estado permanente. Para comprobar si se
cumple utilizamos el teorema del valor final para la ganancia de error de posición:
Kp = lı́m R(z)G(z)
z→1
1
= lı́m 0.1165
z→1 (z − 0.7)(z − 0.9)
= 3.88
1
ep =
1 + 3.88 √
= 0.20 = 20 % < 22 % →
Vemos que, efectivamente, el sistema propuesto no cumple con todas las especificaciones impuestas. Por
ejemplo el tiempo de establecimiento está por encima de 15, segun se muestra en la Figura 6. Concluimos
que el controlador proporcional no logra corregir el error. Por ello se recomienda diseña un controlador
de tipo PI o PID.
Código MATLAB
1 [K,˜]=rlocfind(G,pd); % 0.1165
2 t=0:T:50;
3 k=tf(K,1);
4 S=series(k,G);
5 F=feedback(S,1);
6 r=ones(size(t));
7 y=lsim(F,r,t);
8 figure
9 stairs(t,y)
10 hold
11 stairs(t,r,’r’)
12 xlabel(’k’)
13 ylabel(’y(k)’)
Ejemplo: Halle la respuesta temporal del sistema G(z) para un perı́odo de muestreo de 1 segundo.
8
G(z) =
z2 − z + 0.5
los polos deseados son: z1,2 = x ± jy = 0.5 ± 0.5 j.
(y)
θ = tan−1
x
( 0.5 )
= tan−1 = 0.7854 rad = 45◦
0.5
Y la magnitud es:
√
|z| = x2 + y2
√
= 0.52 + 0.52 = 0.7071
Luego obtenemos:
ln |z|
r = e−σ T → σ = − = 0.3466
T
Calculando: nr , n p , ns y Mp
γ
nr = =3
θ
π
np = =4
θ
π
ns = = 9.0647
σ
%Mp = e−πσ /θ × 100 = 25 %
La Figura 7 muestra la respuesta del sistema en lazo abierto debido a una entrada escalón unitario; ası́ mis-
mo los polos en el cı́rculo unitario con su respectivo modulo y ángulo. (ver codigo cd_cuz)
1 20
0.5 15
0.7071
Amplitud
π/4
0
10
−0.5
5
−1
0
−1 −0.5 0 0.5 1 0 5 10 15 20
k
Ejemplo: Considere una planta discreta de segundo orden tipo 1 dado por:
1
P(z) =
(z − 1)(z − 0.5)
(a) Obtener en forma analitica el root locus y la ganancia critica para el sistema dado.
(b) Diseñe un controlador proporcional del sistema digital dado para un periodo de muestreo T = 0.1s
para obtener una frecuencia amortiguada de 5rad/s.
(c) Muestre los resultados, y plotear la salida debido a una entrada escalón escribiendo un programa en
MATLAB.
CURSO
CONTROL DIGITAL
Motivación
Una vez realizada la adquisición de datos mediante experimentos, aplicaremos el
algoritmo de los mínimos cuadrados recursivos (RLS) en el dominio del tiempo discreto,
esto sin la necesidad de recurrir al planteamiento total de las relaciones por medio de
ecuaciones diferenciales, involucradas en el proceso en el análisis del tiempo continuo.
Se diseña los prototipos de sistemas de segundo orden (de respuesta sobre amortiguado
y subamortiguada), con el objetivo de identificar sistemas por medio del Toolbox de
Identificación de MATLAB y el Toolkit de Identificación de LabVIEW.
Se diseña un controlador PID digital el mismo que será probado en tiempo real, usando la
tarjeta de adquisición de datos DAQ USB-6008/6002 mediante programación grafica de
LabVIEW.
( )=
( + )( + )
+
( )=
+ +
Planta Sobreamortiguada
Planta Subamortiguada
Esta sección presenta los métodos de diseño de un controlador PID que se basan en el
conocimiento de la función de transferencia de proceso que puede ser obtenida desde
el modelo teórico u experimental. El método de diseño de la ubicación de polos
simplemente intenta encontrar polos en lazo cerrado para diseñar un controlador PID
en el dominio del tiempo continuo. Posteriormente usando la técnica del rediseño
podernos emularlo para llevarlo a un controlador PID digital que es el objetivo final de la
experiencia.
CASO 1
Ejercicio 1
o Considere un sistema con dos polos reales donde T y T son las contantes de tiempo y
K es la ganancia. Tal proceso se caracteriza por el modelo de segundo orden G (s).
( )=
( + )( + )
Ecuación Característica
o El modelo de la planta tiene tres parámetros (K , T , T ) así mismo un controlador PID no
interactivo posee también tres parámetros, es posible colocar arbitrariamente los tres
polos del sistema de lazo cerrado. La función de transferencia del PID controlador puede
ser escrito como:
( + + )
( )=
+ + + + + + =
o Con una adecuada ecuación característica de un sistema de tercer orden en lazo cerrado
seria:
+ + + =
Parámetros de Diseño
o La ecuación característica contiene dos polos dominantes con relación de amortiguación
(ζ) y frecuencia natural (ω! ), y un polo situado en −αω! La identificación de los
coeficientes se realiza los términos de potencia en s. Por lo tanto desde las ecuaciones
listadas anteriormente se plantean las siguientes relaciones:
+ + = ( + ) + =( ) ( + ) = ( )
+ −
=
o Resolviendo estas ecuaciones obtenemos
los siguientes parámetros del controlador
+ −
PID de tipo no interactivo. =
+ − −
=
+ −
Consideraciones de Diseño
o Por ejemplo, considere la planta de la forma:
. &
( )=
( + . &)( + . &)
= + + = $%& + + . %&
. $$
zeta=0.6;
wn=10;
alpha=0.1;
K=((wn^2 + 2*alpha*wn^2*zeta)*T1*T2 - 1)/Kp;
Ti=(T1*T2*(2*alpha*zeta + 1)*wn^2 - 1)/(alpha*T1*T2*wn^3);
Td=((alpha + 2*zeta)*T1*T2*wn -T1- T2)/(T1*T2*(2*alpha*zeta + 1)*wn^2 - 1);
CASO 2
Ejercicio 2
o Considere un sistema con dos polos reales y un cero finito. Tal proceso se caracteriza por
el modelo de segundo orden G (s).
+
( )=
+ +
PID Paralelo
o Considere un sistema de segundo orden con un cero finito que viene representado por
el siguiente modelo:
+
( )=
+ +
o Este modelo tiene cuatro parámetros. Tiene dos polos que pueden ser reales o
complejos, y tiene un cero finito y otro cero no finito. El modelo dado por la función de
transferencia de G (s) captura muchos procesos, sistemas oscilatorios, y sistemas con
ceros en el semiplano derecho.
= + +
Ecuación Característica
o El sistema de lazo cerrado es de tercer orden y tiene la ecuación característica:
∙ + + +( + )∙ ) +) +) =
+ ∙ + + =
o Resultando:
+ ∙ + ∙ ∙ +( + ∙ ∙ )∙ ∙ + ∙ =
= ∙ + ∙ ∙ =( + ∙ ∙ )∙ = ∙
Representación Matricial
o Igualando los coeficientes de igual potencia en * y resolviendo en las ecuaciones
anteriores, nos resulta:
+ ∙ + ∙ = + ∙ ∙
+ ∙ + ∙ = + ∙ ∙
∙ = + ∙ ∙
o Reordenando.
∙ + ∙( − ∙ )= −
∙ + ∙ − ∙ ∙ = −
∙ − ∙ ∙ =
o En forma matricial.
− ∙ −
− ∙ ∙ = −
− ∙
Consideraciones de Diseño
o Por ejemplo, considere la planta de la forma:
+ . % $ + $,,$ . %
=
+ &. $ + $,$ -. %
= + + = .+ &+ . , + + . %
vd=[z,wn,alpha];
[Gc,PID,N,D]=PID2(Gp,vd);
Simulaciones
CURSO
CONTROL DIGITAL
Motivación
Jhon Ziegler
o John Ziegler, fundador de Ziegler & Associates, fue uno de los pioneros en el campo de
medición y control. Trabajo con el matemático Nathaniel Nichols en instrumentos a
principios de 1940, concibió el ahora famoso método de sintonía de controlador PID
(Proporcional-Integral-Derivativo).
Nathaniel Nichols
o Nathaniel B. Nichols ([1914-1997],USA). Ingeniero estadounidense que desarrolló un sistema de ajuste de
parámetros de sistemas de control PID que lleva el nombre de Ziegler-Nichols. Inventor del ábaco de Nichols
para estudiar sistemas de control realimentado.
o En 1942 ambos publican en ASME Transacción un artículo con los resultados obtenidos
de su investigación que después fue llamado "Los parámetros de Ziegler- Nichols para
sintonizar un controlador".
o Este pionero del Control fue galardonado en varias ocasiones por sus aportaciones. Recibió dos doctorados
de honor, uno de Case Western Reserve University y otro de la Universidad de Michigan de la cual fue
alumno. La carta de Nichols que fue un gran aporte para la historia del Control fue lo que motivó a que fuera
honrado con la creación de la medalla IFAC Nichols, que premia a las personas que han hecho aportes
importantes al Control.
Introducción
o Dos métodos clásicos para la
determinación de los parámetros de
los controladores PID fueron
presentados por Ziegler y Nichols en
1942. Estos métodos están siendo
ampliamente utilizados, ya sea en su
forma original o en alguna
modificación. A menudo constituyen
la base de los procedimientos de
ajuste utilizado por fabricantes de
controladores y por los procesos
industriales.
= + +
Controlador K T T T
P 1/a 4L
PI 0.9/a 3L 5.7L
Ejercicio 1
o Como ejemplo, un método de respuesta al escalón aplicando el método de Ziegler-Nichols se aplicará a un
proceso con la transferencia función:
=
+
o Las mediciones en la respuesta al escalón dan los parámetros a = 0.218 y L = 0.806. Los parámetros
del regulador ahora se pueden determinar de la Tabla 1. Los parámetros de un controlador PID son, la
ganancia proporcional, K = 5.50 la constante integral T = 1.61, y la consta de tiempo derivativo
T = 0.403.
(#) #+ #−
= & + +
%(#) '#− #
)( )
= & + +
%( )
#+ ' #−
*+, # = & + ∙ ∙ + ∙ ∙
' #− #+
#' + '# +
*+, # =
#' −
Toolkit de Simulación
Problema 1
o Diseñe un controlador proporcional para el sistema digital
descrito por P(z) con un periodo de muestreo T=0.1s.
1
P z =
(z − 1)(z − 0.5)
o Para obtener:
Una frecuencia amortiguada de ω = 5rad/s
Una constante de tiempo de τ = 0.5s
Plotear las respuestas debido a una entrada escalón unitario
1 1.5
ζω n = Ln = 1.571
T 2 cos(ω d T )
ω d2 = ω n2 (1 − ζ 2 ) = 25
Si el factor de amortiguamiento es ζ = 0.3
entonces ω n = 5.24 rad/s
ζ = 0 .3
1
τ = 0.5 ζω n = =2
τ
ζωnT
1 −1 1.5e
ω d = cos = 4.127rad / s
T 2
1
ζ = 2
= 0.436
w d
+1
(ζω n ) 2
ω d2
ωn = = 4.586rad / s
1−ζ 2
Problema 2
La planta Gp(s) y su respectiva discretización por ZOH de un
sistema en lazo abierto vienen dados por las funciones de
transferencia:
dG p ( z )
Calculando la ganancia K en los puntos de ruptura: =0
dz
z1 = 0.8090, z 2 = 1.083
1
K =− z
G p ( z)
Para z1 K 1 = 2.58
Para z2 K 2 = −4.38
Ruptura
Código MATLAB
Problema 3
Se desea calcular la frecuencia que aparece en la respuesta
transitoria de un sistema en lazo cerrado que tiene como función
de transferencia:
0.00778z + 0.00756
F (z) = , T = 0.02s
z 2 − 1.90 z + 0.9307
σ
ωn = = 8.93rad / s
ζ
Introducción
El objetivo principal de este capítulo es presentar los procedimientos de diseño del
controlador PID (Proporcional-Integral-Derivativo) mediante LGR de modo que se obtenga
una compensación de la fase y magnitud. El esquema del sistema de control a utilizar será
el clásico lazo de retroalimentación simple que se muestra en la Figura 1, para el cual se
debe definir la función de transferencia del elemento de control o lo que es lo mismo
diseñar dicho elemento tal que se cumplan con requerimientos establecidos. Las funciones
de transferencia del actuador 𝐺𝑎 (𝑠) y del medidor 𝐺𝑚 (𝑠), serán consideradas unitarias.
2. Diseño de controladores
Los controladores también pueden ser diseñados utilizando el LGR, a partir del cual es
posible determinar los parámetros de cada controlador tal que satisfagan requerimientos
establecidos, tanto de respuesta transitoria como permanente. El controlador en estudio es
denominado PID no interactivo y tiene la siguiente función de transferencia:
1
𝐺𝑐 (𝑠) = 𝐾𝑐 (1 + + 𝑇𝑑 𝑠)
𝑇𝑖 𝑠
𝐾𝑐 (𝑠 + 𝑎)(𝑠 + 𝑏)
𝐺𝑐 (𝑠) = (𝑇𝑑 𝑇𝑖 𝑠 2 + 𝑇𝑖 𝑠 + 1) = 𝐾𝑐
𝑠 𝑠
Ejemplo
Para un sistema de control de retroalimentación simple cuya función de transferencia a
lazo abierto es 𝑃(𝑠), se requiere introducir un controlador que garantice que la respuesta
del lazo cerrado tenga un 𝑡𝑠 ≤ 1s al 2% una frecuencia amortiguada de 𝜔𝑑 ≤ 2rad/s y un
coeficiente de error de velocidad 𝐾𝑣 ≥ 10.
1
𝑃 (𝑠 ) =
(𝑠 + 1)(𝑠 + 5)
Solución
A partir de los requerimientos de respuesta transitoria se ubican los PDD que cumplan con
dichas condiciones.
4
𝑡𝑠 = =1
𝜁𝜔𝑛
𝜔𝑑 = 𝜔𝑛 √1 − 𝜁2 = 2
𝑠𝑑 = −𝜁𝜔𝑛 + 𝑗𝜔𝑛 √1 − 𝜁2 = −4 + 𝑗2
𝐼𝑚 (𝑠𝑑 ) 180
𝜃1 = 180 − tan−1 ( ) = 153.4°
𝑅𝑒 (𝑠𝑑 ) 𝜋
𝐼𝑚 (𝑠𝑑 ) 180
𝜃2 = 180 − tan−1 ( ) = 146.3°
𝑅𝑒 (𝑠𝑑 ) 𝜋
𝐼𝑚 (𝑠𝑑 ) 180
𝜃3 = tan−1 ( ) = 63.4°
𝑅𝑒 (𝑠𝑑 ) 𝜋
Esa cantidad de ángulo no puede ser añadida por un solo cero, por lo que se concluye que
el controlador a añadir debe ser de tipo PID, de forma tal que entre los dos ceros se logre
introducir el 𝜃𝑐 necesario. La ubicación de los ceros puede ser cualquiera con tal de que los
polos deseados terminen en las ramas dominantes del LGR. Se escoge ubicar un cero justo
abajo del polo deseado, por lo que el ángulo del mismo sería 45°, lo que dejaría los
restantes 139° al otro cero, cuya ubicación se determina analíticamente utilizando
relaciones trigonométricas (ver Figura 2).
(𝑠 + 2.055)(𝑠 + 6.174)
𝐺𝑐 (𝑠) = 𝐾𝑐
𝑠
1
𝐺𝑝 (𝑠) =
(𝑠 + 1)(𝑠 + 5)
(𝑠 + 2.055)(𝑠 + 6.174)
𝐺𝑐 (𝑠) = 𝐾𝑐
𝑠
syms s
fla=4.4*(s*(s+6.174)*(s+2.055))/(s*(s+5)*(s+1));
Kv=limit(fla,s,0);
Kv=double(Kv);
fprintf('Kv=%1.1f\n',Kv)
La respuesta debido al escalón unitario y el lugar de las raíces del sistema realimentado es
mostrada en la Figura 3.
Índice
1. Introducción 2
1
2 MÉTODO APROXIMACIÓN DE REDISEÑO
1. Introducción
A diferencia de la electrónica analógica, los computadores digitales pueden ejecutar funciones de inte-
gración. Por lo tanto las ecuaciones diferenciales que describen un controlador continuo C(s) deben ser
aproximados utilizando ecuaciones en diferencias que involucren solamente términos de adición y multi-
plicación. En este artı́culo estudiaremos la técnica de diseño de controladores digitales: Aproximación de
Rediseño (o Emulador Digital).
∫ kT +T
y(kT + T ) = y(kT ) + x(τ )d τ (2)
kT
La ecuación (2) se ilustra en la Figura 3.
El objetivo es hallar la aproximación en tiempo discreto de esta integración. Esto puede ser visto como
una función de transferencia F(z) (ver Figura 4), realizando la aproximación de la integración.
1
Podemos encontrar la aproximación para 1/s, haciendo, ≈ F(z), esto fácilmente puede invertirse para
s
dar una aproximación para s, de modo que, s ≈ F(z)−1 . En resumen podemos sustituir en C(s) para
obtener C(z).
C(z) = C(s) −1 (3)
s=F (z)
y(k + 1) − y(k)
= x(k)
T
y(k + 1) = y(k) + T x(k)
y f (kT + T ) = y f (kT ) + T x(kT ) (5)
Y f (z) T
F(z) = = (6)
X(z) z−1
Esto nos sugiere que el integrador puede ser reemplazado por esta función de transferencia, es decir.
1 T
≈ (7)
s z−1
Esto es equivalente a hacer la siguiente sustitución para s en la función de transferencia en tiempo conti-
nuo.
z−1
s= (8)
T
Yb (z) Tz 1
F(z) = = ≈ (10)
X(z) z−1 s
Esto es equivalente a hacer la siguiente sustitución para s en la función de transferencia en tiempo conti-
nuo.
z−1
s= (11)
Tz
Ybl (z) T z + 1 1
F(z) = = ≈ (13)
X(z) 2 z−1 s
Esto es equivalente a hacer la siguiente sustitución para s en la función de transferencia en tiempo conti-
nuo.
2 z−1
s= (14)
T z+1
Note que esto no es lo mismo, como preguntar, si los sistemas en lazo cerrado son o no estables. Si
diseñamos un controlador de tiempo continuo C(s) que estabiliza a una planta P(s), entonces podemos
suponer:
P(s)C(s) 1
, y son estables
1 + P(s)C(s) 1 + P(s)C(s)
Basada en esta suposición, que C(s) es estable, se hace mucho más fácil evaluar y poner en funcionamien-
to el controlador si tanto el controlador como el sistema en lazo cerrado son estables.
Para implementar un controlador digital, podemos usar un métodos de aproximación para hacer C(z) ≈
C(s) previa transformación. Suponiendo que C(s) es estable, en tiempo continuo y en lazo cerrado es
estable, y C(z) es estable. Esto no quiere decir que necesariamente en tiempo discreto y en lazo cerrado
sea estable. Se debe verificar la estabilidad para la implementación digital, es decir, calculando el ZOH
equivalente P(z), de P(s). Luego verificamos los polos del sistema en lazo cerrado mediante el mapeo.
P(z)C(z)
1 + P(z)C(z)
Basado en la condición de los polos, si están dentro del circulo unitario, la implementación en lazo cerra-
do en tiempo discreto es también estable.
Es más fácil implementar un controlador estable, C(z), ası́ que observaremos que C(s) sea estable implica
que C(z) sea estable para cada uno de estas transformaciones. En particular, debemos verificar el mapeo
del plano–s en el semiplano izquierdo o el mapeo del plano–z del circulo unitario.
Mapeo Forward
Consideremos la aproximación de diferencias forward:
z−1
s=
T
Podemos observar que la región estable incluye mucho más que los horizontes del circulo unitario, este
controlador C(s) estable en tiempo continuo puede dar un controlador C(z) inestable en tiempo discreto.
Mapeo Backward
Consideremos la aproximación de diferencias backward:
z−1
s=
Tz
El mapeo del plano–s al plano–z, se da dentro del circulo unitario, tal como se muestra en la Figura 9.
En este caso, cada resultado estable en C(s) es estable en C(z). Note que la transformación en diferencias
backward limita la ubicación de los polos del resultado de C(z). Note que no se puede poner a C(z) una
respuesta que tenga una alta frecuencia; esto requiere polos de C(z) al final del circulo cerca al punto −1.
Mapeo Bilineal
Consideremos la aproximación de diferencias bilineal:
2 z−1
s=
T z+1
El mapeo del plano–s al plano–z se da exactamente dentro del circulo (ver Figura 10).
Esto quiere decir que una transformación bilineal siempre mapea un C(s) estable en un C(z) estable. Esta
es una razón del porque la transformación bilineal es el método más popular para realizar el aproximador
discreto desde un controlador continuo.
Aunque la regla trapezoidal mapea la estabilidad en la frontera del plano-s hacia la frontera de la esta-
bilidad del plano-z, hay todavı́a distorsión. Esta distorsión inherente a la regla trapezoidal (hay más aún
distorsión en las reglas forward y backward) pueden ser corregido exactamente en única una frecuencia.
Esto nos lleva a la cuarta regla de integración.
2 z−1
s≈ (15)
T z+1
Consideramos una frecuencia particular ω0 , esto es, s = jω0 . El mapeo exacto para este polo es:
z = eT s = e jω0 T (16)
Ahora tomamos la transformación bilineal
z−1
s=A (17)
z+1
Resolveremos para A obtener esta respuesta exacta de frecuencia. Hacemos esto igualando la ubicación
verdadera del polo en el plano-s con el mapeo de la ecuación anterior. Ası́
e j ω0 T − 1
jω0 = A
e j ω0 T + 1
ω0 T
= jA tan (18)
2
Donde
ω0
A= (19)
ω0 T
tan
2
Note que cuando ω0 T sea pequeño, el parámetro A ≈ 2/T , que es igual que la regla trapezoidal. La condi-
ción de pequeño ω0 T significa que la frecuencia de muestreo es comparada rápidamente a la frecuencia
ω0 , y no hay mucha distorsión en el primer lugar.
Dada la frecuencia prewarping ω0 , podemos calcular A reemplazando de (19) en (17) esto para realizar la
simulación discreta.
z−1
s=
Tz
Asumiendo que los polos en el plano–z es: s = α + jβ , entonces reemplazamos estos polos en la relacion
de mapeo Backward, resultando:
(α − 1) + jβ
a + jb =
T (α + jβ )
Multiplicando a ambos miembros del lado izquierdo por α + jβ , nos resulta:
( )
(α − 1) + jβ α − jβ
a + jb =
T (α + jβ ) α − jβ
Realizando las operaciones convenientes.
α2 + β 2 − α β
a + jb = +j
T (α + β )
2 2 T (α + β 2 )
2
α2 + β 2 − α β
a= , b=
T (α 2 + β 2 ) T (α 2 + β 2 )
Aplicando la condición para el polo real del plano–s.
α2 + β 2 − α
< 0, → α2 + β 2 − α < 0
T (α 2 + β 2 )
Esta última desigualdad puede ser reescrita:
( )2 ( )2
1 2 1
α− + (β − 0) <
2 2
De esta ultima expresión podemos concluir que la region de estabilidad en el plazo–z resulta cuando se
analiza el caso critico que nos conduce a la ecuación de una circunferencia de radio 0.5 con frontera entre
[0, 1] en el eje real y frontera [ j/2, − j/2] en el eje imaginario (ver la Figura 9).
( )2 ( )2
1 2 1
α− + (β − 0) =
2 2
x(k + 1) − x(k)
ẋ ≈ (20)
T
Donde.
- tk = kT
- k = entero
- x(k) = valor de x en tk
Esta aproximación puede usarse en el lugar de todas las derivadas que aparecen en las ecuaciones de
diferencias del controlador para llegar a un conjunto de ecuaciones que pueden ser resueltos en una com-
putadora digital. Estas ecuaciones de diferencia se resuelven repetidamente con los pasos de tiempo de
longitud T . Para sistemas que tienen ancho de banda en Hertz, el tamaño de la muestra están a menudo
en el orden de un 1KHz, para que los perı́odos de la muestra esten en el orden de los milisegundos, los
errores de la aproximación deben ser bastante pequeños.
Ejemplo 1
Determine una ecuación de diferencias para la ley del control usando el método de Euler para la función
de transferencia de un controlador dado por:
Y (s) s+a
C(s) = = Kc
U(s) s+b
Obtenemos la ecuación de diferencias a partir de la herramienta para sistemas continuos.
U(s)(s + b) = Kc (s + a)E(s)
Aplicando la transformada inversa de Laplace, obtenemos.
( )
u̇(t) + bu(t) = Kc ė(t) + ae(t)
{ }
[ e(k) − e(k − 1) ]
u(k) = u(k − 1) + T − bu(k − 1) + Kc + ae(k − 1)
T
Esta última ecuación computa el nuevo valor de la ley de control u(k), dado el valor pasado u(k − 1) y el
nuevo valor y el valor pasado de la señal de error e(k) y e(k − 1) respectivamente. En principio la ecuación
de la diferencia se evalúa con k = 0, luego k = 1, 2, 3.... Sin embargo usualmente no requiere guardar
ningún valor en memoria en todo el tiempo, por consiguiente la computadora sólo tiene las variables
definidas para valores actuales y valores pasados. Sin embargo es necesario tener en cuenta la influencia
del periodo de muestreo que afecta a la ecuacion en diferencias de la ley de control.
Ejemplo 2
Sea.
1
G(s) =
s(s + 1)
Un proceso de segundo orden con un polo en el origen en el plano–s (un integrador), y sea:
s+2
C(s) = 70
s + 10
Un controlador (compensador en adelanto) diseñado utilizando herramientas clásicas. Aplicando el méto-
do anterior, discretizar el controlador continuo que nos permita encontrar la ecuación en diferencias:
Para implementar el algoritmo debemos de discretizar la planta, para ello obtenemos su modelo en espacio
estado considerando los estados x1 = y, x2 = ẏ. Según esto tenemos:
ẋ1 = x2
ẋ2 = −x2 + u
Se ha simulado la respuesta del sistema (ver Figura 11) controlado para una frecuencia de 40Hz, observa-
mos que para el método digital presenta un sobrepaso del 40 %, mientras que para simulación del sistema
en tiempo continuo es 20 %.
1.5
1
Amplitud
0.5
0
0 0.5 1 1.5 2 2.5 3
tiempo [seg]
T=1/40;
x1(1)=0; x2(1)=0; e(1)=0; u(1)=0;
% Algoritmo
M=200; xd=1;
for k=1:M
e(k+1)=xd-x1(k);
% Euler
u(k+1)=(1-10*T)*u(k)+70*(e(k+1)+(2*T-1)*e(k));
ye(k)=x1(k);
x1(k+1)=x1(k)+T*x2(k);
x2(k+1)=x2(k)+T*(-x2(k)+u(k));
e(k)=e(k+1);
u(k)=u(k+1);
x1(k)=x1(k+1);
end
El método MPZ puede mostrarse como una buena aproximación proporcionada por el intervalo de muestreo
pequeño. El método MPZ consiste en un numero simples reglas aplicadas a la función de transferencia
G(s), como sigue:
Regla 1
Mapear los polos de G(s) a G(z) de acuerdo a z = esT . Los polos conjugados complejos son ma-
peados como un par.
Regla 2
Mapear los ceros finitos de G(s) a G(z) de acuerdo a z = esT . Los ceros conjugados complejos son
mapeados como un par.
Regla 3
Mapear los ceros infinitos de G(s) a G(z) de acuerdo a s = jω = ∞ mapea z = e jπ = −1 (representa
la alta frecuencia). Esto puede ser hecho hasta que orden del numerador de G(z) es el mismo que el
denominador. En el dominio de la frecuencia, estas reglas heurı́sticas van a forzar un cero de G(z)
en ωs /2 que es una alta frecuencia de interés en un sistema en tiempo discreto.
Regla 4
Emparejar las ganancias de G(s) y G(z) a una frecuencia elegida, a menudo es DC, algunas veces
es conveniente usar una ganancia de alta frecuencia, o en el caso de caracterı́stica de pasa banda, el
centro de la banda es un punto apropiado para emparejar las ganancias.
Ejemplo 3
Sea la función:
1
F(s) =
s+a
Si F(s)|s=∞ = 0, entonces z = −1, además podemos decir que el polo corresponde a s = −a. Por lo tanto
le corresponde un polo en z = e−aT en el dominio discreto, es decir:
z+1 1 − e−aT
F(z) = K , K=
z − e−aT 2a
Ejemplo 4
Determinar el aproximador MPZ para la función de transferencia dado por:
s+a
C(s) = Kc
s+b
Mapeando los polos y ceros se obtienen.
z − e−aT
C(z) = Kd
z − e−bT
Donde Kd es la ganancia estática que se encuentra igualando la ganancia DC de Gd (z) con la ganancia
DC de Gc (s), entonces.
a 1 − e−aT
Kc = Kd
b 1 − e−bT
o
a 1 − e−bT
Kd = Kc ( )
b 1 − e−aT
Podemos escribir.
Hay cierta dificultad de probar e(k) y la salida u(k) todos en un tiempo cero; por consiguiente la ley de
control MPZ serı́a técnicamente imposible llevar a cabo. Sin embargo si la ecuación es bastante simple,
y la computadora es de gran ayuda, un retardo en el cómputo entre la muestra de e(k) y la salida u(k)
tendrá un efecto despreciable en la respuesta real del sistema comparada con el esperado diseño original.
Nota: Para un C(s) con un denominador de orden más alto que el numerador, en este caso se requiere
agregar el término (z + 1). Por ejemplo.
s+a Kd (z − e−aT )
C(s) = Kc → C(z) = (z + 1)
s(s + b) (z − 1)(z − e−bT )
Luego obtenemos.
(z + 1)(z − e−aT )
C(z) = Kd
(z − 1)(z − e−bT )
Después de dejar los polos en s = 0 y z = 1, resulta.
a 1 − e−bT
Kd = Kc ( )
2b 1 − e−aT
En base al algoritmo de Euler, podemos extender al caso MPZ y simular la respuesta del sistema (ver
Figura 12) debido a una entrada escalón unitario. Observamos que existe mayor sobrepaso respecto del
aproximador de Euler.
1.5
Amplitud
0.5
0
0 0.5 1 1.5 2 2.5 3
tiempo [seg]
U(s) 1
C(s) = =
E(s) s
En el dominio del tiempo.
∫ t
u(t) = e(t)dt
0
Operando la ecuación anterior en el dominio del tiempo discreto.
∫ kT ∫ kT
du(t) = e(t)dt
0 0
Sea t=kT y aplicando el teorema fundamental del cálculo y expandiendo la integral del lado izquierdo.
∫ kT −T ∫ kT
u(kT ) = e(t)dt + e(t)dt
0 kT −T
Donde la segunda integral es el área del trapecio como se vio en la Figura 7.
T( )
u(k) = u(k − 1) + e(k − 1) + e(k)
2
Aplicando la transformada Z.
T −1 T
U(z) = z−1U(z) +z E(z) + E(z)
2 2
Agrupando, se llega a obtener la transformación bilineal.
U(z) T (1 + z−1 )
C(z) = =
E(z) 2 (1 − z−1 )
1
Comparando esta última ecuación con el controlador continuo C(s) = . Se deduce la aproximación
s
Bilineal.
2 (z − 1)
s∼
=
T (z + 1)
Ejemplo 5
Determinar el aproximación de Tustin para la función de transferencia dado por:
s+a
C(s) = Kc
s+b
Usando la relación obtenemos:
U(z) ((2 + aT ) z − 2 + aT )
C(z) = = Kc
E(z) (2 + bT ) z − 2 + bT
Podemos escribir.
[ ]
(bT + 2)zU(z) + (bT − 2)U(z) = Kc (2 + aT )zE(z) + (aT − 2)E(z)
1.5
Amplitud
0.5
0
0 0.5 1 1.5 2 2.5 3
tiempo [seg]
Gd = c2d(Gc,Ts,metodo)
La salida es en tiempo discreto con un periodo de muestreo Ts. El argumento método selecciona el
método de discretización, y pueden ser:
Gd = c2d(Gc,Ts,’prewarp’,Wc)
[Gd,G] = c2d(Gc,Ts,metodo)
También retorna la matriz G que mapea la condición inicial continua en la condición inicial discreta.
Especı́ficamente, si x0 , u0 son las condiciones iniciales de estado y las entradas para Gd, entonces
equivale a la condición inicial para Gd dado por:
[Ad,Bd,Cd,Dd] = c2dm(A,B,C,D,Ts,metodo)
[Nd,Dd] = c2dm(Nc,Dc,Ts,metodo)
Ejemplo 6
Determinar la ecuación en diferencia usando el método Matched para una frecuencia de muestreo de
40Hz. El controlador en tiempo continuo Gc (s), y la planta G p (s) son dados por las siguientes funciones
de transferencia.
1 s+2
G p (s) = Gc (s) = 70
s(s + 1) s + 10
Ingresamos el código MATLAB.
ẋc = Fc xc + Gc e
u = Hc xc + Jc e
T=1/40;
[Ac,Bc,Cc,Dc]=c2dm(Fc,Gc,Hc,Jc,T,’matched’)
% Ac = 0.7788, Bc = 3.3089, Cc = -3.3089, Dc = 63.4971
Luego con los valores obtenidos, Ac = 0.7788 , Bc = 3.3089, Cc = −3.3089 y Dc = 63.4971 encontramos
nuestro modelo en variables espacio estado en tiempo discreto.
u(k + 1) = −2.5770 (−0.3022 u(k) + 19.1868 e(k)) − 10.9488 e(k) + 63.4971 e(k + 1)
( )
u(k + 1) = 0.7788 u(k) + 63.4971 e(k + 1) − 0.9512 e(k)
Ejemplo 7
Determinar la ecuación en diferencia usando el método Tustin para una frecuencia de muestreo de 40Hz.
El controlador en tiempo continuo Gc (s), y la planta G p (s) son dados por las siguientes funciones de
transferencia.
1 s+2
G p (s) = Gc (s) = 70
s(s + 1) s + 10
Ingresamos en código MATLAB.
n=70*[1 2];
d=[1 10];
T=1/40;
[nz,dz]=c2dm(n,d,T,’tustin’);
Gd=filt(nz,dz,T);
Ejemplo 8
Dado un controlador continuo:
2
C(s) =
s+3
Discretizar C(s), asumiendo un periodo de muestreo de T = 0.1 para los siguientes métodos:
1. Aproximación Backward.
2. Aproximación Bilineal.
3. Aproximación zoh.
Compara las respuestas de los sistemas discretizados debido a una entrada escalón unitario.
Solución (a)
2T z
C(z) =
(1 + 3T )z − 1
para T = 0.1:
2z
C(z) =
13z − 10
Solución (b)
2T z + 2T
C(z) =
(2 + 3T )z + 3T − 2
para T = 0.1:
2z + 2
C(z) =
23z − 17
Solución (c)
[ ]
2 1
C(z) = (1 − z−1 ) ∑ Residuos
λ
s(s + 3) 1 − esT z−1
[ ]
2 1 2 1 2 1 − e3T
= (1 − z−1 ) − =
3 1 − z−1 3 1 − e−3T z−1 3 z − e3T
Para T = 0.1:
0.1728
C(z) =
z − 0.7408
La Figura 14 muestra las respuestas en lazo abierto del controlador debido a una entrada escalón unitario,
incluyendo el controlador análogo.
0.7
0.6
0.5
0.4
0.3
Backward
0.2
Bilineal
0.1 ZOH
Continua
0
0 0.5 1 1.5 2 2.5
t
k
Figura 14: Respuesta ante una entrada escalón para los métodos de aproximación digital.