Está en la página 1de 13

Práctica N°5

Asignatura: Laboratorio de diseño de sistemas de control


Tema: Controladores Discretos
VARGAS TORREZ LEONARDO ALEJANDRO

Apellido Paterno Apellido Materno Nombres

CI: 8398767 LP Fecha de emisión 03/05/2021 Fecha de entrega 17/05/2021

Resumen del objetivo de la práctica


• Discretizar funciones de transferencias continuas.
• Conocer los distintos métodos de discretización, las ventajas y desventajas de cada uno.
• Realizar la programación en Matlab respectiva para obtener la discretización de los
sistemas en la presente práctica.
_______________________________________________________________________

Hallar los modelos equivalentes del controlador por medio de los procedimientos de discretización
del laboratorio de discretización de sistemas.
Simular sus respuestas a diferentes entradas y hacer los ajustes en el controlador con tres
variaciones posibles.
𝟏
1. 𝑮(𝒔) = con T=0.1 e impulso.
𝒔𝟐 +𝒔+𝟓
Código de Matlab:
0.009437 z - 1.048e-18
G_zI = ----------------------
z^2 - 1.857 z + 0.9048
%% Discretización del controlador PID por aproximación
%% Planta Modelo como ejemplo
%%Practica 5
num=[1];
den=[1 1 5];
G_s=tf(num,den) % planta
%% Definición de los parámetros del PID
Kp=10;
Ki=5;
Kd=1;
N=100; % Orden del filtro
numPID=[N*Kd+Kp Kp*N+Ki Ki*N];
denPID=[1 N 0];
PID_s=tf(numPID,denPID)
G_PID_s=(G_s*PID_s)
G=G_PID_s/(1+G_PID_s)
step(G)
grid on
%% Obtención de la planta discretizada
Ts=0.1;
G_zI=c2d(G_s,Ts,'impulse')
%% Otros modelos
%Retenedor de orden cero
G_z0=c2d(G_s,Ts,'zoh')
%Retenedor de primer orden
G_z1=c2d(G_s,Ts,'foh')
%Metodo Tustin
G_zT=c2d(G_s,Ts,'tustin')
%% Equivalencias del controlador
K1=Kp+Kd/Ts
K2=Ki*Ts-Kp-2*Kd/Ts
K3=Kd/Ts
Simulink

Graficas
Como se observa, en el método de impulso para discretización se obtienen resultados
muy aproximados al implementar el modelo de PID en forma discreta.
𝟏
2. 𝑮(𝒔) = con T=0.1 y retenedor de orden 0.
𝒔𝟐 +𝒔+𝟓
Código de Matlab:

0.004817 z + 0.004659
G_z0 = ----------------------
z^2 - 1.857 z + 0.9048

%% Discretización del controlador PID por aproximación

%% Planta Modelo como ejemplo


%%Practica 5
num=[1];
den=[1 1 5];
G_s=tf(num,den) % planta
%% Definición de los parámetros del PID
Kp=10;
Ki=5;
Kd=1;
N=100; % Orden del filtro
numPID=[N*Kd+Kp Kp*N+Ki Ki*N];
denPID=[1 N 0];
PID_s=tf(numPID,denPID)
G_PID_s=(G_s*PID_s)
G=G_PID_s/(1+G_PID_s)
step(G)
grid on
%% Obtención de la planta discretizada
Ts=0.1;
G_zI=c2d(G_s,Ts,'impulse')
%% Otros modelos
%Retenedor de orden cero
G_z0=c2d(G_s,Ts,'zoh')
%Retenedor de primer orden
G_z1=c2d(G_s,Ts,'foh')
%Metodo Tustin
G_zT=c2d(G_s,Ts,'tustin')
%% Equivalencias del controlador
K1=Kp+Kd/Ts
K2=Ki*Ts-Kp-2*Kd/Ts
K3=Kd/Ts
Simulink

Graficas
Al utilizar el método de discretización de orden 0 se obtiene cierto desajuste en la
salida discreta del controlador como se observa en la grafica del osciloscopio en
Simulink.
𝟏
3. 𝑮(𝒔) = con T=0.1 y retenedor de primer orden.
𝒔𝟐 +𝒔+𝟓
Código de Matlab:

0.001622 z^2 + 0.006312 z + 0.001543


G_z1 = ------------------------------------
z^2 - 1.857 z + 0.9048

%% Discretización del controlador PID por aproximación

%% Planta Modelo como ejemplo


%%Practica 5
num=[1];
den=[1 1 5];
G_s=tf(num,den) % planta
%% Definición de los parámetros del PID
Kp=10;
Ki=5;
Kd=1;
N=100; % Orden del filtro
numPID=[N*Kd+Kp Kp*N+Ki Ki*N];
denPID=[1 N 0];
PID_s=tf(numPID,denPID)
G_PID_s=(G_s*PID_s)
G=G_PID_s/(1+G_PID_s)
step(G)
grid on
%% Obtención de la planta discretizada
Ts=0.1;
G_zI=c2d(G_s,Ts,'impulse')
%% Otros modelos
%Retenedor de orden cero
G_z0=c2d(G_s,Ts,'zoh')
%Retenedor de primer orden
G_z1=c2d(G_s,Ts,'foh')
%Metodo Tustin
G_zT=c2d(G_s,Ts,'tustin')
%% Equivalencias del controlador
K1=Kp+Kd/Ts
K2=Ki*Ts-Kp-2*Kd/Ts
K3=Kd/Ts
Simulink

Graficas
Al utilizar el método de discretización de primer orden se obtiene observa una gran
mejora con respecto a la de orden 0.

4. Respuesta a señal triangular con corrección en los factores kp, ki y kd.


𝟏
𝑮(𝒔) = con T=0.1 y retenedor de primer orden.
𝒔𝟐 +𝒔+𝟓
Código de Matlab:

0.001622 z^2 + 0.006312 z + 0.001543


G_z1 = ------------------------------------
z^2 - 1.857 z + 0.9048

%% Discretización del controlador PID por aproximación

%% Planta Modelo como ejemplo


%%Practica 5
num=[1];
den=[1 1 5];
G_s=tf(num,den) % planta
%% Definición de los parámetros del PID
Kp=20;
Ki=8;
Kd=2;
N=100; % Orden del filtro
numPID=[N*Kd+Kp Kp*N+Ki Ki*N];
denPID=[1 N 0];
PID_s=tf(numPID,denPID)
G_PID_s=(G_s*PID_s)
G=G_PID_s/(1+G_PID_s)
step(G)
grid on
%% Obtención de la planta discretizada
Ts=0.1;
G_zI=c2d(G_s,Ts,'impulse')
%% Otros modelos
%Retenedor de orden cero
G_z0=c2d(G_s,Ts,'zoh')
%Retenedor de primer orden
G_z1=c2d(G_s,Ts,'foh')
%Metodo Tustin
G_zT=c2d(G_s,Ts,'tustin')
%% Equivalencias del controlador
K1=Kp+Kd/Ts
K2=Ki*Ts-Kp-2*Kd/Ts
K3=Kd/Ts
Simulink

Graficas

Como se observa, la respuesta es rápida y se estabiliza antes de llegar al tercio de la


señal de entrada, en este caso, una señal triangular. Se mantiene el retenedor de
orden 0 al ser el que mejor representa la función discretizada.
5. Respuesta a señal sinusoidal con corrección en los factores kp, ki y kd.
𝟏
𝑮(𝒔) = con T=0.1 y retenedor de primer orden.
𝒔𝟐 +𝒔+𝟓
Código de Matlab:

0.001622 z^2 + 0.006312 z + 0.001543


G_z1 = ------------------------------------
z^2 - 1.857 z + 0.9048

%% Discretización del controlador PID por aproximación

%% Planta Modelo como ejemplo


%%Practica 5
num=[1];
den=[1 1 5];
G_s=tf(num,den) % planta
%% Definición de los parámetros del PID
Kp=15;
Ki=12;
Kd=1.5;
N=100; % Orden del filtro
numPID=[N*Kd+Kp Kp*N+Ki Ki*N];
denPID=[1 N 0];
PID_s=tf(numPID,denPID)
G_PID_s=(G_s*PID_s)
G=G_PID_s/(1+G_PID_s)
step(G)
grid on
%% Obtención de la planta discretizada
Ts=0.1;
G_zI=c2d(G_s,Ts,'impulse')
%% Otros modelos
%Retenedor de orden cero
G_z0=c2d(G_s,Ts,'zoh')
%Retenedor de primer orden
G_z1=c2d(G_s,Ts,'foh')
%Metodo Tustin
G_zT=c2d(G_s,Ts,'tustin')
%% Equivalencias del controlador
K1=Kp+Kd/Ts
K2=Ki*Ts-Kp-2*Kd/Ts
K3=Kd/Ts
Simulink

Graficas

En la figura se ve la señal sinusoidal y el balance en los datos que se dio a kp,ki y


kd, se observa que hace un buen seguimiento a la señal. Se mantiene el retenedor
de orden 0 al ser el que mejor representa la función discretizada.
6. Respuesta a señal triangular con corrección en los factores kp, ki y kd.
𝟏
𝑮(𝒔) = con T=0.1 y retenedor de primer orden.
𝒔𝟐 +𝒔+𝟓
Código de Matlab:

0.001622 z^2 + 0.006312 z + 0.001543


G_z1 = ------------------------------------
z^2 - 1.857 z + 0.9048

%% Discretización del controlador PID por aproximación

%% Planta Modelo como ejemplo


%%Practica 5
num=[1];
den=[1 1 5];
G_s=tf(num,den) % planta
%% Definición de los parámetros del PID
Kp=15;
Ki=15;
Kd=5;
N=100; % Orden del filtro
numPID=[N*Kd+Kp Kp*N+Ki Ki*N];
denPID=[1 N 0];
PID_s=tf(numPID,denPID)
G_PID_s=(G_s*PID_s)
G=G_PID_s/(1+G_PID_s)
step(G)
grid on
%% Obtención de la planta discretizada
Ts=0.1;
G_zI=c2d(G_s,Ts,'impulse')
%% Otros modelos
%Retenedor de orden cero
G_z0=c2d(G_s,Ts,'zoh')
%Retenedor de primer orden
G_z1=c2d(G_s,Ts,'foh')
%Metodo Tustin
G_zT=c2d(G_s,Ts,'tustin')
%% Equivalencias del controlador
K1=Kp+Kd/Ts
K2=Ki*Ts-Kp-2*Kd/Ts
K3=Kd/Ts
Simulink

Graficas

En el último ejemplo se observa una señal cuadrada con factores k optimizados para
la misma, su periodo es de 15 s y 50 % de duty cicle. Se mantiene el retenedor de
orden 0 al ser el que mejor representa la función discretizada.
Investigación
Métodos basados en modelos aproximados.
Método de sintonización de síntesis directa
Es posible desarrollar reglas de sintonización de controladores PID basados en una trayectoria
preconcebida de la respuesta en lazo cerrado. En este caso la sintonización del controlador viene
determinada porque la salida será un sistema de primer orden con tiempo muerto, siendo τr la
constante de tiempo de la salida y el tiempo muerto igual al del modelo de proceso. Las reglas de
sintonización son:

Este método es un caso particular del método de sintonización directa basado en modelos
rigurosos.
Métodos basados en modelos detallados.
Sintonización por síntesis directa.
𝐺𝐶 𝐺
Considérese el sistema dado por la función de transferencia en lazo cerrado: 𝑦(𝑠) = 𝑦 (𝑠)
1+𝐺𝐶 𝐺 𝑑
supóngase ahora que se preespecifica una respuesta en el dominio del tiempo dada por:
𝑦(𝑠) = 𝑞(𝑠)𝑦𝑑 (𝑠)
Donde q(s) es la trayectoria de referencia que deberá tener en cuenta si en el proceso existen de
antemano tiempos muertos o respuesta inversa (la trayectoria deseada no puede eliminar la
existencia de tiempos muertos o ceros en el semiplano derecho).
Una vez elegida q(s) la función de transferencia del controlador se puede obtener fácilmente
𝐺𝐶 𝐺 1 𝑞
mediante: 𝑞(𝑠) = y despejando 𝐺𝐶 = ( )
1+𝐺𝐶 𝐺 𝐺 1−𝑞
La trayectoria q(s) debe contemplar los siguientes puntos a la hora de ser elegida:
- Mínimo o nulo offset
- Respuesta rápida y estable con el mínimo sobrepaso.
- Posibilidad del proceso de seguir a q(s).
- Forma matemática lo más simple posible.

Las trayectorias más utilizadas corresponden a sistemas de primer orden con y sin tiempo muerto
y segundo orden con y sin ceros a la derecha del semiplano imaginario.

Control Dead-beat
El control dead-beat es un caso especial del control por reubicación de polos, en el cual los polos
se encuentran en el origen. En este caso, A*-1(q) en la ecuación

y -1M(q) en la ecuación

están dados por:

La característica del control dead-beat es que alcanza la referencia en un número de períodos


igual al orden del sistema y una vez alcanzada la referencia, la respuesta en estado estable no
tiene oscilaciones.

También podría gustarte