Mathematics">
Nothing Special   »   [go: up one dir, main page]

Sim - Sistemas de Control - Guerra - Revelo

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

Pontificia Universidad Católica del Ecuador

Sede Esmeraldas
Integrantes:

 Luis Fernando Guerra Manzano


 María Fernanda Revelo Bautista

Materia: Simulación

Curso: 8 de Sistemas y Computación

SISTEMAS DE SIMULACIÓN

1 Sistemas de Primer Orden


Los sistemas de primer orden por definición son aquellos que tienen un solo polo y están
representados por ecuaciones diferenciales ordinarias de primer orden, Quiere decir que el
máximo orden de la derivada es orden 1. Considerando el caso de las ecuaciones diferenciales
lineales de primer orden, con coeficientes constantes y condición inicial cero, tenemos:

Los sistemas de primer orden tienen diversas aplicaciones para aproximar y representar
procesos y sistemas físicos cotidianos o industriales. Por ejemplo, tenemos sistemas físicos de
primer orden de circuitos eléctricos (circuito RC) donde el condensador es el componente
encargado de almacenar la energía del sistema.

Para este sistema se denota la siguiente función de transferencia:

que en notación matlab se introduce:

K = 1;

tau = 1;

num = K;

den = [tau 1];

Ejemplo:

Colocar un sistema de primer orden de control usando matlab es bastante sencillo, para eso
nos vamos a valer del comando tf (transfer function).

Supongamos que tenemos el siguiente sistema de primer orden:

El sistema de primer orden con retardo en matlab viene dado por:


num=3/2; %Numerador

den=[12,1]; %Denominador

G=tf(num,den); %Función de Transferencia

G.iodelay=0 %Retardo

1.1 Editor de Matlab


%% Ejemplo Sistema POR
% Sergio Andres Castaño Giraldo
% https://controlautomaticoeducacion.com/control-realimentado/sistemas-dinamicos-de-primer-
orden/
clc
clear
close all

%Tamaño de las letras


ftsz2=12;
ftsz1=20;

%Vector tiempo
t=0:0.1:55;
%Funcion de transferencia
%Definicion de variables
num=[3/2];
den=[12 1];
G= tf(num,den) %G=tf(3/2,[12 1]);
G.iodelay=0;

%Polo y Ceros
z=zero(G)
p=pole(G)

pzmap(G)
z=zplane(num, den)
grid on

%Vector entrada
u(1:length(t))=1;

%Vector salida
yd=lsim(G,u,t);
% ye=(1-exp(-(t-2))).*heaviside(t-2);
figure
plot([12 12],[0 0.632*3/2],'-k','Linewidth',1);
hold on
text(6,-0.15,'\tau','fontsize',ftsz2);

plot([48 48],[0 0.982*3/2],'-k','Linewidth',1);


text(7.8,-0.15,'t_s','fontsize',ftsz2);

text(-1.8,1.7,'y(t)','fontsize',ftsz2);
axis([0 t(end) 0 1.8])

hold on
% plot([t(1) t(end)],[-1.5 -1.5],'-k','Linewidth',1);
plot([t(1) t(end)],[3/2 3/2],'--k','Linewidth',2);
plot(t,yd,'-','Linewidth',3);

figure
plot(t,u,'Linewidth',3);
text(-1,-0.5,'1','fontsize',ftsz2);
text(-1.8,1.2,'u(t)','fontsize',ftsz2);

xlabel('t','fontsize',ftsz2);
set(gca,'fontsize',ftsz1, 'FontName', 'Times New Roman' )
axis([0 t(end) 0 1.3])

Tabla 1. Código en Matlab del Sistema de Primer Orden.

1.2 Command Window


Sistema de Primer Orden
G=

1.5
--------
12 s + 1

Continuous-time transfer function.

z=

0×1 empty double column vector

p=

-0.0833
Tabla 2. Funciones de transferencia del Sistema de Primer Orden.

1.3 Gráficos

Figura 1. Resultados Gráficos del Sistema de Primer Orden.


En este primer gráfico se observa que el sistema es estable debido a que el polo se encuentra
en el eje real negativo, en caso contrario de que el polo se encuentre en la parte real positiva
este sistema se volvería inestable. En la segunda gráfica se observa que al tener 12 en cuanto a
la función de transferencia y 55 en cuanto al vector de tiempo se visualiza la estabilidad del
sistema, también fue necesario ajustar en cuanto a los vectores de salida con los valores
correspondientes para así mostrar una mejora en su gráfico y observar el comportamiento de
esta simulación, en la que se observa en qué momento se estabiliza este sistema de primer
orden de control.

2 Sistemas de Segundo Orden


Los sistemas de segundo orden son todos aquellos que tienen dos polos y están representados
típicamente por ecuaciones diferenciales ordinarias de segundo orden. Considerando el caso
de las ecuaciones diferenciales lineales de segundo orden, con coeficientes constantes y
condición inicial cero, tenemos:

En este caso, se notas el orden de la máxima derivada, que es 2, lo que nos indica que es un
sistema de segundo orden. A su vez se podrá convertir esta ecuación diferencial en una
función de transferencia de segundo orden.

Un sistema de segundo orden básicamente está dado por la siguiente función de transferencia:

Donde:

K: ganancia estática del sistema. En donde se va a suponer en el análisis siguiente, sin pérdida
de generalidad, que K = 1.

δ: Coeficiente de amortiguamiento.

wn: Frecuencia natural no amortiguada del sistema.

Casos

1. Si δ = 0 → Respuesta oscilatoria. Sistema críticamente estable. Raíces en eje imaginario.


Figura 2. Diagrama de Polos del Sistema Oscilatorio.

2. Si 0 <δ< 1 → raíces complejas conjugadas en SPI (subamortiguado).

Figura 3. Diagrama de Polos del Sistema Subamortiguado.

3. Si δ = 1 → 2 raíces reales iguales en SPI (límite sobre-sub), sistema críticamente


amortiguado.

Figura 4. Diagrama de Polos del Sistema Críticamente Amortiguado.

4. Si δ > 1 → 2 raíces reales distintas en SPI (sobreamortiguado).

Figura 5. Diagrama de Polos del Sistema Sobreamortiguado.

2.1 Editor de Matlab


%% Ejemplo Sistema
clc
clear
close all

%Tamaño de las letras


ftsz2=12;
ftsz1=20;

%Vector tiempo
t=0:0.1:5;

%Numerador y denomiador
num=18;
d=1.2;
wn=3;
den=[1, 2*d*wn, wn^2];

%Funcion de transferencia
G=tf(num,den)
G.iodelay=0;

%Polos y Ceros
z = zero(G)
p = pole(G)

pzmap(G)
z=zplane(num,den);
title('Gráfica de polos y ceros');

%Vector entrada
u(1:length(t))=1;

%Vector salida
yd=lsim(G,u,t);
% ye=(1-exp(-(t-2))).*heaviside(t-2);

figure

ra=sqrt(1-power(d,2));
%tiempo maximo del pico
tp=pi/(wn*ra);
%tope estandar
k=num/power(wn,2);
%porcentaje de sobre impulso
mp=exp( -(d*pi)/ra );
%tiempo estable
ts=4/(d*wn);

topemax=k+(k*round(mp,2));

plot([tp tp],[0 topemax],'--k','Linewidth',1);


hold on
%Este valor es para colocar los textos de abajo
text(tp-0.02,-0.15,'t_p','fontsize',ftsz2);

topetable=k+(k*0.02);

%Es valor del cuarto tau


plot([ts ts],[0 topetable],'--k','Linewidth',1);
%Este valor es igual a la etiqueta que se encuentra abajo
text(ts-0.02,-0.15,'t_s','fontsize',ftsz2);
%Imprime un texto
text(-0.5,k,'y(t)','fontsize',ftsz2);

plot([0 0.632*1.8],[topemax topemax],'--k','Linewidth',1);


%Imprime los valores de las axis de y
axis([0 t(end) 0 (topemax+0.1)])
title('Sistema Críticamente Amortiguado')
hold on
% plot([t(1) t(end)],[-1.5 -1.5],'-k','Linewidth',1);
plot([t(1) t(end)],[2 2],'--k','Linewidth',2);
plot(t,yd,'-','Linewidth',3);

figure
plot(t,u,'Linewidth',3);
text(-1,-0.5,'1','fontsize',ftsz2);
text(-1.8,1.2,'u(t)','fontsize',ftsz2);

xlabel('t','fontsize',ftsz2);
set(gca,'fontsize',ftsz1, 'FontName', 'Times New Roman' )
axis([0 t(end) 0 1.3])

Tabla 3. Código en Matlab del Sistema de Segundo Orden.

Para los cuatro sistemas de segundo orden se utilizó el mismo código con la única diferencia
que el valor de δ se modificaba de acuerdo con el sistema que se deseaba simular, el cual
estaba representado con la variable “d” en este código y se aplicaban las respectivas
condiciones para cada sistema.

2.2 Command Window


Sistema Oscilatorio
G=

18
-------
s^2 + 9

Continuous-time transfer function.

z=

0×1 empty double column vector

p=

0.0000 + 3.0000i
0.0000 - 3.0000i

Sistema Subamortiguado
G=

18
---------------
s^2 + 3.6 s + 9

Continuous-time transfer function.


z=

0×1 empty double column vector

p=

-1.8000 + 2.4000i
-1.8000 - 2.4000i

Sistema Críticamente Amortiguado


G=

18
-------------
s^2 + 6 s + 9

Continuous-time transfer function.

z=

0×1 empty double column vector

p=

-3.0000 + 0.0000i
-3.0000 - 0.0000i

Sistema Sobreamortiguado
G=

18
---------------
s^2 + 7.2 s + 9

Continuous-time transfer function.

z=

0×1 empty double column vector

p=

-5.5900
-1.6100

Tabla 4. Funciones de transferencia de los Sistemas de Segundo Orden.


2.3 Gráficos

Sistema Oscilatorio

Sistema Subamortiguado

Sistema Críticamente Amortiguado


Sistema Sobreamortiguado

Figura 6. Resultados Gráficos de los Sistemas de Segundo Orden.

Para obtener estos gráficos se utilizó el mismo código para los 4 sistemas de segundo orden,
siempre y cuando se modificara el valor de δ correspondiente que hace referencia a el
coeficiente de amortiguamiento. Todos estos sistemas fueron empleados bajo el mismo
dominio de frecuencia de las funciones de segundo orden, cada uno con su respectivo caso.
Para el sistema oscilatorio se utilizó un valor de δ de 0 lo cual nunca lograba estabilizarse,
alcanzando este sistema un pico máximo en 4 con un tiempo de 1 segundo, para el sistema
subamortiguado se utilizó en δ un valor de 0.6 el cual debía estar entre 0 y 1 para cumplir con
este caso, obteniendo un pico de 2.2 aproximadamente en un tiempo de 1.3 segundos, y este
sistema se estabilizó en un tiempo de 2.2 segundos. Para el tercer caso el cual es el sistema
críticamente amortiguado cuyo valor de δ es de 1, se obtuvo un pico de 2 exactos en un
tiempo de 1.4 segundos. Por último, en el sistema sobreamortiguado se lo trabajó con un valor
de δ de 1.4 el cual indica la estabilidad del sistema y al igual que los casos anteriores todos los
sistemas se encontraron estables, unos más que otros como se observan los polos en las
gráficas de la Figura. 6. Para cada sistema.

También podría gustarte