Anda di halaman 1dari 27

UNIVERSIDAD NACIONAL DE INGENIERÍA

FACULTAD DE INGENIERÍA MECÁNICA

CONTROL DIGITAL

MT – 228

LABORATORIO 4: IDENTIFICACIÓN DE PLANTA Y

ESTABILIDAD DE SISTEMAS

PRESENTADO POR:

PABLO ALEXIS GARCÍA DE LA CRUZ

ESPECIALIDAD:

INGENIERÍA MECATRÓNICA

LIMA – PERÚ

2019
Para el presente trabajo haré uso de trabajo pasado [1], el cual adquirí datos de un motor,

dicho trabajo será también adjuntado en los archivos del trabajo.

El motor a adquirir datos es el siguiente:

Figura 1. Datos del motor al que se le hallará el modelo dinámico

Para este trabajo se realizó el siguiente diagrama:

Figura 2. Diagrama de conexión para adquirir datos

Para adquirir datos se usó el siguiente circuito en LabVIEW:


Figura 3. Panel frontal del programa

Figura 4. Diagrama de bloques del programa


Donde 𝑚 y 𝑏 representan las ganancias de conversión de frecuencia a voltaje.

Así mismo se agregó la reducción del motor (𝑛 = 90) como se ve en la figura 1.

Para mayor información se recomienda revisar el trabajo adjuntado

1. OBTENGA LOS VALORES DE ENTRADA (VOLTAJE) Y SALIDA

(VELOCIDAD ANGULAR) DE LA PLANTA (MOTOR). CONSIDERE UNA

ENTRADA DE TIPO ESCALÓN

El archivo 𝒎𝒐𝒕𝒐𝒓_𝒅𝒂𝒕𝒐𝒔. 𝒍𝒗𝒎 cuenta con los datos adquiridos en el presente trabajo.

Se muestra una parte de los datos adquiridos, en el que vemos que estabiliza a 11.5 𝑟𝑎𝑑/𝑠

para una entrada nominal de 12 𝑉.

Esto es correcto ya que:

𝑟𝑎𝑑 1 𝑟𝑒𝑣 60 𝑠
11.5 ∙ ∗ = 109 𝑅𝑃𝑀
𝑆 2 ∗ 𝜋 1 𝑚𝑖𝑛

Lo que es casi igual a la velocidad que nos da fabricante.

Finalmente, graficamos los datos:

clc, clear, close all;

% Cargamos el archivo
load motor_datos.lvm;

% Asignamos variables a los datos (columna 1 y 3 es la misma)


t = motor_datos(:,1);
u = motor_datos(:,2);
y = motor_datos(:,4);

% Graficamos los datos


subplot(2,1,1),plot(t,u,'r'), grid on; title('Señal generada');
xlabel('t (s)'); ylabel('V (V)');
axis([0 14.4 -inf inf]);
subplot(2,1,2),plot(t,y,'b'), grid on, title('Respuesta del motor');
axis([0 max(t) min(y) max(y)+10])
xlabel('t (s)'); ylabel('w (rad/s)');}

2. MEDIANTE LA GRÁFICA OBTENIDA, OBTENGA LOS PARÁMETROS

PARA UN MODELO DE SEGUNDO ORDEN. USE EL MÉTODO DE CURVA

DE REACCIÓN. DAR COMO RESULTADO G(s)

Para resolver este ejercicio se usó [2], para ello primero calculamos los polos

considerando un sistema de polo doble (críticamente amortiguado).


Figura 5. Tiempo y valor en ese instante para el cálculo de parámetros de la planta

Con los datos de la figura 5 hallamos:

𝑘𝑝 = 0.9625 𝜏 ′ = 0.1479 ′
𝑡𝑚 = 3.575

Luego para hallar los polos para un modelo sobre-amortiguado usamos:


Y tenemos:

𝑎 = 0.44 𝜏1 = 0.2054 𝜏2 = 0.0904

Finalmente, nuestro modelo es:

0.9625
𝐺(𝑠) =
(0.2054 ∙ 𝑠 + 1) ∙ (0.0904 ∙ 𝑠 + 1)

3. GRAFIQUE LA RESPUESTA ANTE UNA ENTRADA IMPULSO Y RAMPA

USANDO MATLAB/LABVIEW

Matlab

Usamos el siguiente código:

clc, clear, close all;

% Modelo del motor


s = tf('s');
G = 0.9625/((0.2054*s+1)*(0.0904*s+1));

% Respuestas ante diferentes entradas


t = 0 : 1e-2 : 2;
figure, impulse(G, t);
figure, lsim(G, t, t), title('Respuesta a la rampa');
LabVIEW

Figura 6. Diagrama de bloques del programa

Figura 7. Vista frontal del programa. Se aprecia la respuesta al impulso

4. GRAFIQUE EN EL DOMINIO DEL PLANO “S” LOS POLOS Y LOS CEROS

DEL SISTEMA USANDO MATLAB.

Basta con usar la función 𝑝𝑧𝑚𝑎𝑝 de Matlab.


Figura 8. Diagrama de bode la planta hallada en el inciso 2

5. GRAFIQUE EL DIAGRAMA DE BODE RESALTANDO LOS

PARÁMETROS MÁS IMPORTANTES USANDO MATLAB

Basta usar la función 𝑏𝑜𝑑𝑒 de Matlab.


Figura 9. Diagrama de bode del motor

Se aprecia que la ganancia del sistema, entre una entrada de tensión y de respuesta la

velocidad angular, es menor a 1. Es decir que, idealmente, para una entrada de 1 𝑉, la

velocidad del motor será menor a 1 𝑟𝑎𝑑/𝑠.

6. GRAFIQUE LA TRAZA DE NYQUIST, RESALTANDO LOS PARÁMETROS

MÁS IMPORTANTES USANDO MATLAB

Basta usar la función 𝑛𝑦𝑞𝑢𝑖𝑠𝑡 de Matlab.


Figura 10. Traza de Nyquist del motor

Al igual que el diagrama de Bode, acá también obtenemos el mismo parámetro que indica

que la ganancia del sistema es menor a uno.

7. ANALICE LA ESTABILIDAD DEL SISTEMA CON LO RESULTADOS

OBTENIDOS EN 4, 5 y 6.

Según la figura 8, el sistema es estable en lazo abierto ya que sus polos se encuentran en

el semiplano izquierdo.

Viendo el diagrama de Bode (figura 9), vemos que los márgenes de ganancia y de fase

son prácticamente 0 y 180° respectivamente, por lo que el sistema es estable en lazo

cerrado para cualquier ganancia 𝐾 (esto también se puede verificar viendo el lugar de las

raíces de la planta).
Figura 11. Lugar de las raíces del motor

Por otro lado, la traza de Nyquist (figura 10) nos dice lo mismo que el diagrama de Bode,

pero desde otra perspectiva: siguiendo el Criterio de Nyquist tenemos que:

𝑃=0 𝑍=0 𝑁=0

Lo cual verifica el criterio de Nyquist y asegura una estabilidad para cualquier ganancia

𝐾 en lazo cerrado.

8. DISCRETICE LA PLANTA G(s) ANTEPONIENDO UN ZOH Y FOH

(CAUSAL Y NO CAUSAL) USANDO LABVIEW Y/O MATLAB.

CONSIDERE UN TIEMPO DE MUESTREO IDÓNEO

Para hallar el tiempo de muestreo idóneo primero graficamos la respuesta al escalón:


Figura 12. Respuesta a un escalón unitario de la planta

Viendo la figura 12 tomaremos:

1
𝑡𝑠 = = 0.05 𝑚𝑠
20

clc, clear, close all;

% Modelo del motor


s = tf('s');
G = 0.9625/((0.2054*s+1)*(0.0904*s+1));
Ts = 5E-2; % Tiempo de muestreo
T = 0 : 5E-2 : 1.5;

% Discretizacion
G_zoh = c2d(G, Ts, 'zoh');
G_foh = c2d(G, Ts, 'foh');
9. GRAFIQUE LA RESPUESTA ANTE UNA ENTRADA IMPULSO Y RAMPA

A LOS SISTEMAS DISCRETOS OBTENIDOS EN 8. USE

MATLAB/LABVIEW

% Respuesta impulsiva
y_impulse_zoh = impulse(G_zoh, T);
y_impulse_foh = impulse(G_foh, T);
figure;
stairs(T, y_impulse_zoh), hold on;
stairs(T, y_impulse_foh);
title('Respuesta al impulso');
legend('ZOH', 'FOH(Causal)');

% Respuesta al step
y_step_zoh = step(G_zoh, T);
y_step_foh = step(G_foh, T);
figure;
stairs(T, y_step_zoh), hold on;
stairs(T, y_step_foh);
title('Respuesta al escalón');
legend('ZOH', 'FOH (Causal)', 'location', 'SouthEast');
LabVIEW
Figura 13. Diagrama de bloques

Figura 14. Vista frontal del programa. Se dibujó escalón ya que no hay una función
predeterminada para rampa
10. GRAFIQUE EN EL DOMINIO DEL PLANO “Z” LOS POLOS Y CEROS DEL

SISTEMA DISCRETO EN 8 USANDO MATLAB

Basta usar la función 𝑝𝑧𝑚𝑎𝑝.

Figura 15. Mapeo de polos y ceros de los modelos discretizados


11. GRAFIQUE EL DIAGRAMA DE BODE DEL SISTEMA DISCRETO

OBTENIDO EN 8, RESALTANDO LOS PARÁMETROS MÁS

IMPORTANTES

Figura 16. Diagrama de Bode de los modelos discretizados


12. GRAFIQUE LA TRAZA DE NYQUIST DEL SISTEMA DISCRETO

OBTENIDO EN 8, RESALTANDO LOS PARÁMETROS MÁS

IMPORTANTES. USE MATLAB

Figura 17. Traza de Nyquist para los sistemas discretizados


13. ANALICE LA ESTABILIDAD DE LAS PLANTAS DISCRETAS OBTENIDAS

EN 8 USANDO LOS RESULTADOS OBTENIDOS EN 10, 11 y 12

Siguiendo el mapeo de polos y ceros de los sistemas discretos (figura 15), vemos que el

sistema es estable en lazo abierto. Por otro lado analizamos el sistema en lazo cerrado con

una realimentación proporcional, esto siguiendo el diagrama de Bode y la traza de

Nyquist:

 Primero vemos que el sistema no es estable para todo valor 𝐾 (esto se puede ver

tanto en el diagrama de Bode como la traza de Nyquist)

 Por otro parte, el sistema continuo sí es estable para toda ganancia proporcional

𝐾 para el sistema en lazo cerrado

 Podemos verificar que para el sistema discreto ZOH la máxima ganancia aplicada
𝑀𝐺
está dada por 10 20 , donde 𝑀𝐺 es el margen de ganancia mínimo

 Verificamos también que el sistema se comporta como un filtro pasa-baja ya que

filtra toda frecuencia menor a los 62.8 𝑟𝑎𝑑/𝑠 (≡ 1/0.05 ∙ 𝜋), que es la mitad del

ancho de banda total.

14. IDENTIFIQUE LA PLANTA (MOTOR) POR MÉTODOS PARAMÉTRICOS

USANDO MATLAB. OBTENGA G(z)

Se usará el método paramétrico ARX, para ello se usará la herramienta

𝑠𝑦𝑠𝑡𝑒𝑚𝐼𝑑𝑒𝑛𝑡𝑖𝑓𝑖𝑐𝑎𝑡𝑖𝑜𝑛 de Matlab.
Usando los datos adquiridos con el DAQ.

Y ahora obtenemos modelos de segundo orden con 0, 1 y 2 ceros que serán comparados

luego con ZOH y FOH.


Compararemos los tres modelos:
Figura 18. Diagrama de Bode para los modelos paramétricos ARX

Si se quisiera un modelo que no tenga un límite de una realimentación proporcional,

entonces se debe escoger 𝑡𝑓1.

Figura 19. Mapeo de polos y ceros para los modelos paramétricos ARX
Por contraparte, si queremos que la planta que usaremos tenga la mejor distribución de

polos y ceros, lo mejor es escoger 𝑡𝑓2 (ver figura 19).

15. COMPARE LAS PLANTAS DISCRETAS OBTENIDAS EN 8 CON LA

PLANTA OBTENIDA EN 14

Hacemos una pequeña comparación:

Figura 20. Comparación de 𝐺𝑧𝑜ℎ y 𝑡𝑓1

Por un lado, 𝐺𝑧𝑜ℎ se obtuvo a partir de la planta dada por el método de la curva de

reacción, el cual solo usa apenas 3 puntos de los datos en total, lo cual podría no ser muy

confiable si la toma de datos no es la mejor (como en caso del ruido en el DAQ y peor

aún, ruido debido al conversor frecuencia – voltaje). Por tal motivo, es más fiable el
método paramétrico ARX por que trabaja con gran parte de los datos y por tanto habría

menos error a la hora de estimar la planta, además, el mismo método ARX te da la

fiabilidad de la estimación por el método de mínimo cuadrados, en el que los tres modelos

𝑡𝑓! , 𝑡𝑓2 y 𝑡𝑓3 obtuvieron un estimación sobre el 99% y un error muy pequeño.

Esto también se puede ver reflejado en el diagrama de Bode:

 Los modelos obtenidos por ARX son más “cercanos” en respuesta que los

obtenidos por ZOH y FOH

BIBLIOGRAFÍA

[1] García P., Espinoza J. (2018). Proyecto final: Análisis y control de robots. Lima, Perú.

[2] Alfaro V. (2006). Identificación de modelos de orden reducido a partir de la curva

de reacción del proceso. Costa Rica.

Anda mungkin juga menyukai