0% encontró este documento útil (0 votos)
213 vistas15 páginas

Control de Sistemas: Lineales

Este documento presenta un examen extraordinario sobre control de sistemas lineales. Incluye 7 preguntas sobre análisis de estabilidad, lugar geométrico de las raíces, transitorio, retrato fásico, ecuación de estados y representación implementable de una función de transferencia dada. También incluye códigos de MATLAB y Simulink para simular diferentes aspectos del sistema lineal.

Cargado por

popiscane
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
213 vistas15 páginas

Control de Sistemas: Lineales

Este documento presenta un examen extraordinario sobre control de sistemas lineales. Incluye 7 preguntas sobre análisis de estabilidad, lugar geométrico de las raíces, transitorio, retrato fásico, ecuación de estados y representación implementable de una función de transferencia dada. También incluye códigos de MATLAB y Simulink para simular diferentes aspectos del sistema lineal.

Cargado por

popiscane
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Control de Sistemas

Lineales
Pablo Sánchez Sánchez
Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la
Electrónica

[Link]@[Link]

Alumno: Alan Martinez Porquillo

Primavera 2023

Examen extraordinario I

Resumen

El proyecto de control de Sistema Lineales se realizará una banda trasportadora que se implementará desde el principio
hasta la terminación de la misma , tiene como principal interés poder recopilar todos los aprendizajes obtenidos a lo
largo de la materia hemos aprendido. Es de gran importancia recalcar que

Palabras clave

Ecuación de estados, Diagramas a bloques, Lazo Abierto , Lazo Cerrado ,Función de transferencia, Ruth-Hurwitz, Lugar
Geométrico de las Raíces, Ecuación de estados, Diagrama de bloques, Amplificadores Operacionales, Netlist, Banda
Transportadora
𝐸𝑥𝑎𝑚𝑒𝑛 𝑒𝑥𝑡𝑟𝑎𝑜𝑟𝑑𝑖𝑛𝑎𝑟𝑖𝑜 𝑑𝑒 𝑐𝑜𝑛𝑡𝑟𝑜𝑙 𝑑𝑒 𝑠𝑖𝑠𝑡𝑒𝑚𝑎𝑠 𝑙𝑖𝑛𝑒𝑎𝑙𝑒𝑠.

1. 𝐶𝑜𝑛𝑠𝑖𝑑𝑒𝑟𝑎𝑛𝑑𝑜 𝑙𝑎 𝑠𝑖𝑔𝑢𝑖𝑒𝑛𝑡𝑒 𝑓𝑢𝑛𝑐𝑖𝑜𝑛 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎

𝑌 𝑙𝑎 𝑒𝑛𝑡𝑟𝑎𝑑𝑎 𝑑𝑒 𝑝𝑟𝑢𝑒𝑏𝑎 𝑢(𝑡) = 5𝑠𝑒𝑛(5𝑡)

a) Analizar la estabilidad del sistema usando el método de Routh-Hurwitz

𝑁(𝑠) 𝐶𝑒𝑟𝑜𝑠 𝑠 2 + 4𝑠 + 6
= = 2
𝑈(𝑆) 𝑃𝑜𝑙𝑜𝑠 2𝑠 + 23𝑠 + 14

𝐺𝑟{𝐷𝑠} − 𝐺𝑟{𝑁𝑠} = 2 − 2 = 0

Por lo tanto, sabemos que tenemos que hay 0 ceros en el infinito,

Ahora bien , con el método de Routh-Hurwitz analizaremos la estabilidad

𝑠2 2 14 0
𝑠1 23 0 0
𝑠0 14 0 0

Por lo tanto, como no hay algún cambio de signo se considera que el sistema es estable
b) Obtener el lugar geométrico de las raíces

Encontrar las raíces a partir de la función dada: 2𝑠 2 + 23𝑠 + 14

−23 ± √232 − 4(2)(14)


=
2(2)

−23 ± √529 − 112


=
4

−23 ± √417
=
4

−23 + 20.4
=
4
𝑠1 = −0.65
−23 − 20.4
=
4
𝑠2 = −10.85

Simulación y codigo del lugar geométrico de las raíces


Codigo del lugar geométrico de las raíces sin entrada u(t)
% Coeficientes de la función de transferencia
num = [1 4 6];
den = [2 23 14];

% Crear el objeto de espacio de estados


sys = tf(num, den);

% Trazar el lugar geométrico de las raíces


figure;
rlocus(sys);
title('Lugar Geométrico de las Raíces');
grid on;
Codigo del lugar geométrico de las raíces con entrada 5sen(5t)

Codigo en MatLab
num = [1 4 6];
den = [2 23 14];
sys = tf(num, den);
t = 0:0.01:5;
u = 5*sin(5*t);
y = lsim(sys, u, t);
plot(t, y);
title('Respuesta del sistema al seno de 5t');
xlabel('Tiempo');
ylabel('Salida');

Gráfica del lugar geométrico de las raíces


c) Determinar el transitorio del sistema

Para determinar el transitorio de un sistema representado por una función de transferencia,


debemos encontrar la respuesta temporal del sistema cuando se le aplica una entrada específica.
En este caso, vamos a considerar una entrada escalón unitario.
La función de transferencia del sistema dada es:

𝐺(𝑠) = (𝑠 2 + 4𝑠 + 6) / (2𝑠 2 + 23𝑠 + 14)


Para analizar el transitorio, necesitamos obtener la forma temporal de la respuesta del sistema.
Para hacer esto, primero debemos descomponer la función de transferencia en fracciones
parciales. Después de realizar esta descomposición, podemos aplicar la transformada inversa de
Laplace a cada término para obtener la respuesta temporal.

Codigo en Matlab
% Coeficientes de la función de transferencia
num = [1 4 6];
den = [2 23 14];

% Raíces del denominador


r = roots(den);

% Cálculo de los coeficientes A y B


A = 2/11;
B = 10/11;

% Tiempo de simulación
t = 0:0.1:10;

% Respuesta transitoria
g = A*exp(-r(1)*t) + B*exp(-r(2)*t);

% Gráfico de la respuesta transitoria


plot(t, g);
xlabel('Tiempo');
ylabel('Respuesta');
title('Respuesta transitoria del sistema');
grid on;
Este mismo codigo es cuando la entrada del sistema es escalón unitario y se comporta de la
siguiente manera:

Sin embargo, tambien consideramos cuando la estrada es 5sen(5t)

Codigo transitorio

num = [1 4 6]; % Coeficientes del numerador


den = [2 23 14]; % Coeficientes del denominador
sys = tf(num, den); % Crear el objeto de la función de transferencia
t = 0:0.01:5; % Vector de tiempo para la simulación
u = 5*sin(5*t); % Entrada de prueba
y = lsim(sys, u, t); % Simulación de la respuesta del sistema
plot(t, y);
title('Respuesta del sistema al 5seno de 5t');
xlabel('Tiempo');
ylabel('Salida');
Como se puede observar a la hora de ingresar una entra al sistema cambia bastante el
grafico a comparación del primero.
d) Determinar el retrato fásico del sistema

Para determinar el retrato fásico del sistema representado por la función de transferencia
(s^2 + 4s + 6) / (2s^2 + 23s + 14) en MATLAB, primero necesitamos convertir la función
de transferencia en un sistema de espacio de estados utilizando la función tf2ss. A
continuación, se puede visualizar el codigo con su respectiva grafica
% Coeficientes de la función de transferencia
num = [1 4 6];
den = [2 23 14];
% Obtener las matrices de espacio de estados
[A, B, C, D] = tf2ss(num, den);
% Crear un objeto de espacio de estados
sys = ss(A, B, C, D);
% Gráfico del retrato fásico
figure;
x0 = [1; 1]; % Condiciones iniciales
initial(sys, x0);
xlabel('x1');
ylabel('x2');
title('Retrato fásico del sistema');
grid on;
e) Obtener la ecuación de estados

num = [1 4 6]; % Coeficientes del numerador


den = [2 23 14]; % Coeficientes del denominador

[A, B, C, D] = tf2ss(num, den); % Obtener las matrices de estados

A % Matriz de coeficientes de las derivadas de las variables de estado


B % Matriz de coeficientes de las entradas
C % Matriz de coeficientes de las salidas
D % Matriz de coeficientes de la ganancia directa
f) simular la ecuación de estados definiendo las matrices A , B, C

Como se puede
g) Simular la ecuación de estados definiendo las matrices A, B y C

Utilizando los valores que encontramos de las matrices A, B , C y D se obtiene lo siguiente :

En la siguiente grafica se simulo la ecuación de estados con los valores anteriores , asi de la misma
manera se comprara la misma utilizando un state-space.
(h) Obtener la representación implementable (con Amplificadores Operacionales) de la función de
transferencia

Codigo en Matlab

% Coeficientes de la función de transferencia


num = [1 4 6];
den = [2 23 14];

% Descomponer en fracciones parciales


[A, B, r] = residue(num, den);

% Valores de los componentes del circuito


R1 = 2;
R2 = 11;
R3 = 10;
R4 = 11;

% Configuración del circuito del primer término de fracción parcial


H1_num = A(1); % Coeficiente del término (2/11) / (s + r1)
H1_den = [1 r(1)];
H1 = tf(H1_num, H1_den);

% Configuración del circuito del segundo término de fracción parcial


H2_num = A(2); % Coeficiente del término (10/11) / (s + r2)
H2_den = [1 r(2)];
H2 = tf(H2_num, H2_den);

% Conectar en cascada los circuitos


G = H1 * H2;

% Obtener la función de transferencia implementable


[num, den] = tfdata(G, 'v');

% Mostrar la función de transferencia implementable


disp('Función de transferencia implementable:');
disp(' ');
disp(['Numerador: ', num2str(num)]);
disp(['Denominador: ', num2str(den)]);
h) ) Simular en Multisim la representación implementable (con Amplificadores
Operacionales) y aplicar la entrada de prueba
No la pude realizar , ya que mi computadora no tenia descargado el programa

(j) Simular la función de transferencia usando un Netlist (programacion .m y Simulink)

Se ha creado un archivo de netlist en formato. cir con el código correspondiente a los componentes
del circuito. Hemos agregado una fuente de voltaje , resistencias , capacitores y un amplificador
operacional con ganancia unitaria (G1). Luego, utilizamos el comando system para ejecutar el
simulador SPICE

Se puede generar el codigo para matlab asi como tambien simulink

% Crear un archivo de netlist en formato .cir


fid = fopen('[Link]', 'w');
fprintf(fid, '* Circuito para simulación\n');
fprintf(fid, 'Vin 1 0 sin(0 1 1k)\n');
fprintf(fid, 'R1 1 2 1k\n');
fprintf(fid, 'C1 2 0 1uF\n');
fprintf(fid, 'R2 2 3 10k\n');
fprintf(fid, 'C2 3 0 10uF\n');
fprintf(fid, 'G1 4 0 2 3 1\n');
fprintf(fid, '.tran 0.1ms 10ms\n');
fclose(fid);

% Ejecutar el simulador SPICE


system('ngspice -b [Link]');

% Leer los resultados de la simulación


data = load('[Link]');

% Extraer los datos de interés


tiempo = data(:, 1);
voltaje_nodo3 = data(:, 4);

% Graficar los resultados


figure;
plot(tiempo, voltaje_nodo3);
xlabel('Tiempo (s)');
ylabel('Voltaje (V)');
title('Simulación del Circuito');
grid on;
l) Obtener la ecuacion diferencial relacionada a la funcion de transferencia
Primero, descomponemos la función de transferencia en fracciones parciales:
(s^2 + 4s + 6) / (2s^2 + 23s + 14) = A / (s - r1) + B / (s - r2)
Donde A y B son coeficientes desconocidos y r1 y r2 son las raíces del denominador
2s^2 + 23s + 14.
Luego, expresamos la función de transferencia en el dominio del tiempo mediante la transformada
inversa de Laplace de cada término de fracción parcial:
A / (s - r1) = A * e^(r1t) B / (s - r2) = B * e^(r2t)
Por último, combinamos los términos para obtener la ecuación diferencial relacionada:
y''(t) + (4 - 2r1 - 2r2) * y'(t) + (6 - r1*r2) * y(t) = 0

m) Comparar todas las salidas de los apartados anteriores en Simulink


n) Aplicar un control PD a la planta y proponer las ganancias adecuadas para que el sistema llegue
a la siguiente entrada deseada, usar un diferenciador numérico yd = 15sen(25t)
˜n) Aplicar el mismo control PD a la planta y usar el observador de Nicosia para estimar la
velocidad
o) Comparar la salida de los dos apartados an

También podría gustarte