Está en la página 1de 34

Ingeniera de Control

Tema 6. Diseo de
controladores discretos

Daniel Rodrguez Ramrez


Teodoro Alamo Cantarero
Contextualizacin del tema
Conocimientos que se adquieren en este tema:

Como obtener el equivalente discreto de un controlador continuo


usando diversas aproximaciones.
Conocer las propiedades de cada una de las aproximaciones.
Como obtener las aproximaciones sustituyendo la variable compleja s
por una expresin en z.
Saber usar el mtodo de diseo directo para disear un controlador
discreto sin partir de uno continuo.
Conocer el control en un nmero finito de intervalos y sus limitaciones.
Esquema del tema

5.1. Discretizacin de controladores PID continuos.


5.1.1. Aproximacin rectangular hacia delante (Euler I).
5.1.2. Aproximacin rectangular hacia atras (Euler II).
5.1.3. Aproximacin bilineal (trapezoidal o Tustin).
5.2. Correspondencias s - z para las aproximaciones de la integral.
5.2.1. Rectangular hacia delante.
5.2.2. Rectangular hacia atrs.
5.2.3. Trapezoidal o Bilineal.
5.3. Estabilidad de las aproximaciones.
5.4. Funciones de Matlab tiles.
5.5. Mtodo de diseo directo (Ragazzini-Truxal).
5.5.1. Causalidad.
5.5.2. Estabilidad Interna.
5.5.3. Errores en rgimen permanente.
5.6. Control en un nmero finito de intervalos.
Discretizacin de controladores continuos
Se parte de un controlador en tiempo continuo, se discretiza con un
determinado tiempo de muestreo y se implementa en un computador.
El caso ms comn es el del PID:

Existen diversos mtodos de sintona, como el de Ziegler-Nichols:

El punto crtico es la tcnica empleada para la aproximacin:


Euler I y II.
Tustin.
Aproximacin rectangular hacia delante (Euler I)
La derivada se aproxima por:

El trmino integral:
T

e(t)

K-1 K t

La expresin del PID queda:


Aproximacin rectangular hacia delante (Euler I)
Retrasando la expresin de la aproximacin del PID:

y restndosela a la original se obtiene:

Aplicando la transformada Z se obtiene la funcin de transferencia


del controlador:
Aproximacin rectangular hacia delante (Euler I)
El cdigo de programa que implementara el controlador
sera:

1. Esperar a que se cumpla el tiempo de muestreo T.


2. Leer yk.
3. Calcular ek = rk - yk.
4. Calcular uk segn la expresin:

5. Aplicar uk.
6. Actualizar uk-1, ek-1, ek-2.
Aproximacin rectangular hacia atrs (Euler II)
En este caso la integral se aproxima por:
T

K-1 K t
Se llega a:
Aproximacin bilineal (trapezoidal o Tustin)
En el caso de la aproximacin bilineal la integral se calcula
mediante:

e(t)

K-1 K t

Es la mejor aproximacin
Ejemplo de discretizacin de PID
Sea el sistema:

Disear un PID usando Z-N y discretizar usando T=0.1 segundos.


Los parmetros del PID continuo son:

2 2
Tustin
1.5 1.5

1 1

0.5 0.5

0 0
0 2 4 6 8 10 0 2 4 6 8 10
Euler I
4 6

3
4
2
2
1

0 0

-1 -2
0 2 4 6 8 10 0 2 4 6 8 10
Esquema del tema

5.1. Discretizacin de controladores PID continuos.


5.1.1. Aproximacin rectangular hacia delante (Euler I).
5.1.2. Aproximacin rectangular hacia atras (Euler II).
5.1.3. Aproximacin bilineal (trapezoidal o Tustin).
5.2. Correspondencias s - z para las aproximaciones de la integral.
5.2.1. Rectangular hacia delante.
5.2.2. Rectangular hacia atrs.
5.2.3. Trapezoidal o Bilineal.
5.3. Estabilidad de las aproximaciones.
5.4. Funciones de Matlab tiles.
5.5. Mtodo de diseo directo (Ragazzini-Truxal).
5.5.1. Causalidad.
5.5.2. Estabilidad Interna.
5.5.3. Errores en rgimen permanente.
5.6. Control en un nmero finito de intervalos.
Correspondencia s - z para la aproximacin de la integral
Las aproximaciones vistas se corresponden con una sustitucin de la s
por una funcin de z en la funcin de transferencia.
Partimos de un ejemplo:

En el dominio del tiempo:

Obtenemos el valor de u(kT):

e(t)

Integral de -au(t)
au(t) +ae
+ae(t)
ae(t) entre (k-
(k-1)T y kT
K t
Correspondencia s - z para la aproximacin de la integral
Aproximacin rectangular hacia delante
Se cumple que u(t) = u((k-1)T) en todo el intervalo:
T

e(t)

Teniendo en cuenta que:

K-1 K t

se llega a:

Tomando la transformada z:

Luego:
Correspondencia s - z para la aproximacin de la integral

Aproximacin rectangular hacia atrs


Se cumple que u(t) = u(kT) en todo el intervalo. T
En este caso:

Teniendo en cuenta que:

se llega a:
K-1 K t

Aplicando la transformada z:
Correspondencia s $ z para la aproximacin de la integral

Trapezoidal o Bilineal T

En este caso u(t) a lo largo del intervalo vale: e(t)

Esto implica:
K-1 K t

Llevndolo a:

se obtiene:

Aplicando transformada z:
Esquema del tema

5.1. Discretizacin de controladores PID continuos.


5.1.1. Aproximacin rectangular hacia delante (Euler I).
5.1.2. Aproximacin rectangular hacia atras (Euler II).
5.1.3. Aproximacin bilineal (trapezoidal o Tustin).
5.2. Correspondencias s - z para las aproximaciones de la integral.
5.2.1. Rectangular hacia delante.
5.2.2. Rectangular hacia atrs.
5.2.3. Trapezoidal o Bilineal.
5.3. Estabilidad de las aproximaciones.
5.4. Funciones de Matlab tiles.
5.5. Mtodo de diseo directo (Ragazzini-Truxal).
5.5.1. Causalidad.
5.5.2. Estabilidad Interna.
5.5.3. Errores en rgimen permanente.
5.6. Control en un nmero finito de intervalos.
Estabilidad de las aproximaciones
Como se transforma la regin de estabilidad en continuo al aplicar las
aproximaciones vistas ?

Rectangular hacia delante

La aproximacin es z = Ts+1

Controladores estables en continuo


pueden resultar inestables en discreto.
Estabilidad de las aproximaciones
Bilineal o Tustin
La aproximacin es:

La bilineal es
la mejor

Rectangular hacia atrs


La aproximacin es:
Ejemplo de estabilidad de las aproximaciones
Sea

Usando un tiempo de muestreo de 0.3 segundos:

0.4 0.7
Euler Atrs
0.35 0.6

0.5
0.3

0.4
0.25
0.3
0.2
0.2

0.15 Tustin 0.1

0.1 0

-0.1
Euler
0.05
Adelante
-0.2
0
0 2 4 6 8 10 12 0 1 2 3 4 5 6 7
Ejemplo discretizacin de un controlador
Dado

Discretizarlo con T=0.1 segundos usando Euler hacia delante.

La aproximacin es:

llevndola a Gc(s):

La versin implementable es:


Esquema del tema

5.1. Discretizacin de controladores PID continuos.


5.1.1. Aproximacin rectangular hacia delante (Euler I).
5.1.2. Aproximacin rectangular hacia atras (Euler II).
5.1.3. Aproximacin bilineal (trapezoidal o Tustin).
5.2. Correspondencias s - z para las aproximaciones de la integral.
5.2.1. Rectangular hacia delante.
5.2.2. Rectangular hacia atrs.
5.2.3. Trapezoidal o Bilineal.
5.3. Estabilidad de las aproximaciones.
5.4. Funciones de Matlab tiles.
5.5. Mtodo de diseo directo (Ragazzini-Truxal).
5.5.1. Causalidad.
5.5.2. Estabilidad Interna.
5.5.3. Errores en rgimen permanente.
5.6. Control en un nmero finito de intervalos.
Funciones de Matlab tiles

G=tf([1],[1 1 4]) Crea el sistema en tiempo continuo.


Gf = tf(bilin(ss(G),1,'fwdrec',0.3)) Devuelve la aproximacin
Euler hacia delante con un tiempo de muestreo de 0.3
segundos.
bilin funciona con sistemas en espacio de estados, de ah que
se pase a esta descripcin con ss y despus se vuelva a poner
en funcin de transferencia.
Gb = tf(bilin(ss(G),1,bwdrec',0.3)) Devuelve la aproximacin
Euler hacia atrs.
Gtu = tf(bilin(ss(G),1,Tustin',0.3)) Devuelve la aproximacin
Tustin.
Esquema del tema

5.1. Discretizacin de controladores PID continuos.


5.1.1. Aproximacin rectangular hacia delante (Euler I).
5.1.2. Aproximacin rectangular hacia atras (Euler II).
5.1.3. Aproximacin bilineal (trapezoidal o Tustin).
5.2. Correspondencias s - z para las aproximaciones de la integral.
5.2.1. Rectangular hacia delante.
5.2.2. Rectangular hacia atrs.
5.2.3. Trapezoidal o Bilineal.
5.3. Estabilidad de las aproximaciones.
5.4. Funciones de Matlab tiles.
5.5. Mtodo de diseo directo (Ragazzini-Truxal).
5.5.1. Causalidad.
5.5.2. Estabilidad Interna.
5.5.3. Errores en rgimen permanente.
5.6. Control en un nmero finito de intervalos.
Mtodo de diseo de Ragazzini-Truxal
Es una alternativa a la discretizacin de controladores, se disea
directamente en discreto.
Se imponen condiciones a la funcin de transferencia del controlador y a la
de bucle cerrado.
La idea es obtener una funcin de bucle cerrado deseada Gd(z) y a partir
de ah obtener el controlador necesario.
La funcin de bucle cerrado deseada ser igual a:

Despejando C(z):

C(z) puede ser no implementable se imponen condiciones:


Causalidad.
Estabilidad interna.
Errores en rgimen permanente.
Condicin de causalidad
El controlador debe ser causal para evitar que u(k) dependa de errores
futuros.
C(z) es causal si:

Por otra parte:

Grado(N(z)) grado(D
grado(Dd(z))

Causalidad

El exceso de polos sobre ceros de Gd(z) debe ser mayor o


igual que el exceso de polos sobre ceros de G(z).
Estabilidad Interna
No se debe haber cancelaciones de polos-ceros inestables entre C(z) y G(z).
La ecuacin caracterstica del sistema es:

Supngase que G(z) tiene un polo inestable:

que se cancela con un cero inestable:

La ecuacin caracterstica quedara:

Raiz
inestable

1. Todos los polos inestables de G(z) deben aparecer como


ceros de 1-
1-Gd(z).
2. Todos los ceros inestables de G(z) deben aparecer como
ceros de Gd(z).
Errores en rgimen permanente
El error de bucle cerrado es:

y en rgimen permanente:

ERP NULO ANTE ESCALN:

ERP ESCALN NULO : Gd(1) = 1

ERP NULO ANTE ESCALN:

ERP ESCALN Y RAMPA NULO :


Esquema del tema

5.1. Discretizacin de controladores PID continuos.


5.1.1. Aproximacin rectangular hacia delante (Euler I).
5.1.2. Aproximacin rectangular hacia atras (Euler II).
5.1.3. Aproximacin bilineal (trapezoidal o Tustin).
5.2. Correspondencias s - z para las aproximaciones de la integral.
5.2.1. Rectangular hacia delante.
5.2.2. Rectangular hacia atrs.
5.2.3. Trapezoidal o Bilineal.
5.3. Estabilidad de las aproximaciones.
5.4. Funciones de Matlab tiles.
5.5. Mtodo de diseo directo (Ragazzini-Truxal).
5.5.1. Causalidad.
5.5.2. Estabilidad Interna.
5.5.3. Errores en rgimen permanente.
5.6. Control en un nmero finito de intervalos.
Control en un nmero finito de intervalos. Control
dead-beat
Objetivo: lograr tiempo de establecimiento finito con error en rgimen
permanente nulo.
Gd(z) debe tener respuesta impulsional finita : polinomio de orden N:

Gd(z) tiene todos los polos en cero, la salida llega a cero en N tiempos de
muestreo y el tiempo de establecimiento es de t=NT segundos.

Cuando N toma el valor mnimo posible (n, el orden de G(z))


el control obtenido se llama dead-
dead-beat.

Gd(z) tomar la forma:

El controlador C(z) ser:


Control en un nmero finito de intervalos. Control
dead-beat
Como Nd(z) se puede tomar:

lo que implica que:

Adems el error en rgimen permanente debe ser nulo:

Siendo
Ejemplo de Ragazzini-Truxal
Sea el sistema discreto:

Se desea calcular un controlador que coloque los polos en z=0 y 0.8


y tenga e.r.p. ante escaln cero.
Al tener exceso de polos sobre ceros igual a 1:

Estabilidad interna: 1-Gd(z) debe tener un cero en z=-2.

Imponiendo el cero en z=-2:


Ejemplo de Ragazzini-Truxal
De lo anterior:

Imponiendo la condicin de e.r.p. nulo,Gd(1)=1:

Usando las dos ecuaciones anteriores:

Por tanto:

De ah:
Ejemplo de Ragazzini-Truxal
Luego:

La ley de control se calculara como:

2.5

1.5

1
Sistema de fase no
0.5
mnima con cero en 1.11
0

-0.5

-1

-1.5

-2
0 20 40 60 80 100 120
Ejemplo de control dead-beat
Sea el sistema:

La funcin de transferencia del controlador ser:

0.8

0.6 Se alcanza la salida en un


slo tiempo de muestreo
0.4

0.2

0
0 1 2 3 4 5

También podría gustarte