Está en la página 1de 8

UNIVERSIDAD SURCOLOMBIANA

INGENIERÍA ELECTRÓNICA
CONTROL ANALÓGICO
SESIÓN VIRTUAL 3
SISTEMAS DE SEGUNDO ORDEN

Octavio Charry Peralta


Código: 20172163107

1. Considere un sistema con función de transferencia en lazo cerrado:

k ω 2n
G ( s )= 2 2
s + 2ζ ωn s+ ωn

Los valores se consideran según un solo código de un estudiante con fines de obtener un
sistema adecuado:
ζ =0.7 ω n=3 k =6

Reemplazando las constantes:


54
G ( s )= 2
s + 2.1 s+ 9

ω d=ωn √1−ζ 2 ω d=3 √ 1−0.7 2=2. 14 2

σ =ζ ω n σ =0.7 (3)σ =2.1

a) Especificaciones de respuesta transitoria de la función propuesta:

El tiempo de subida t r es:


π−β
t r= (criterio de 0 % a 100 %)
ωd

ωd 2.1 4 2
β=tan−1 ( )
σ
β=tan−1 (
2.1 )
=0.795 rad

π−0.795
t r= =1.09 seg
2.142
Aproximación de primer orden (Dorf and Bishop, 2001):
2.16 ζ +0.6
t r= ( criterio de 10 % a 90 % ) (0,3 ≤ζ ≤ 0,8)
ωn

2.16( 0.7)+ 0.6


t r= =0.704 seg
3

Aproximación de segundo orden (Kuo, 1995) (Levine, 1996):

2.917 ζ 2−0.4167 ζ + 1 (
tr= criterio de 10 % a 90 % )(0 ≤ζ ≤ 1)
ωn

2.917( 0.7)2−0.4167(0.7)+1
t r= =0.712 seg
3

El tiempo de asentamiento t s es:


4 4
t s=4 T = = (criterio del 2 %)
σ ζ ωn

4
t s= =1.9 seg
2.1
3 3
t s=3 T = = (criterio del5 %)
σ ζ ωn

3
t s= =1.42 seg
2.1
El tiempo pico t p es:
π π
t p= = =1.466 seg
ωd 2. 14 2

La sobreelongación máxima M p es:

−( σ / ωd) π
M p=e =e−(2.1 /2.142) π =0.0459
Por tanto, el porcentaje de sobreelongación máxima es del 4%, lo cual resulta aceptable
en el sistema de control implementado.

b) Especificaciones de respuesta transitoria a través de MATLAB.


Para obtener los parámetros de la respuesta transitoria se propone el siguiente código:
close all
clear all
clc
%Parametros
z=0.7; %zita
wn=3; %Frecuencia natural del sistema
k=6; %Ganancia k para el sistema
num=[k*(wn)^2];
dem=[1 2*z*wn (wn)^2];
G1=tf(num,dem) %Se declara la función de transferencia a partir

figure(1)
pole(G1) %Se calculan los polos del sistema
pzmap(G1) %Se grafican en el plano z

figure(2)
step(G1) %Se obtiene respuesta a una entrada escalón
grid on

Gm = tf([54],[1 4.2 9]);


stepinfo(Gm)

El código proporciona todos los parámetros con los distintos criterios para cada caso,
adicionalmente también se obtiene la gráfica del sistema en respuesta a un step y con la
función “stepinfo” se recolectan todos los parámetros.
Los valores son los siguientes:

%----------------------------------------------
Aquí va la grafica

c) Comparación de los resultados obtenidos


De los datos se puede ver que, salvo t_s, el porcentaje de diferencia es mucho menor, en
este caso los datos calculados son muy diferentes a los obtenidos mediante código y
gráficos.
La fuente del error en el caso t_s se debe a la fórmula utilizada para representar valores
aproximados. Un coeficiente de amortiguación alto producirá una pequeña
sobreelongación máximo, por lo que el sistema alcanzará rápidamente un rango
cercano al valor de tamaño final, que está muy cerca del tiempo de subida.
En cuanto a la recopilación de datos, la función "stepinfo" es la mejor opción para
obtener parámetros transitorios de forma rápida y con alta precisión. Aun así, siempre
que la constante de la función de transferencia esté dentro del rango de valor más
efectivo de la fórmula (al menos para t_s), la fórmula teórica sigue siendo una buena
elección.

2. Considere un sistema con función de transferencia en lazo cerrado:

k
G ( s )= 2
s + 2ζ ωn s+ k

a) Familia de respuestas a un escalón unitario para un intervalo de 0 ≤ k ≤500, en


pasos de 50.

A continuación, se anexa el código que permite graficar las repuestas y obtener


directamente los parámetros transitorios para todos los criterios:

clc
clear all

t = 0:0.001:(10-0.001);

for k = 0:50:500
num = k;
den= [1 2.1 k];
st = step(num,den,t);
plot(t,st,'DisplayName',num2str(k))
hold on

stepinfo(st)
S1 = stepinfo(st,'SettlingTimeThreshold',0.005);
st1 = S1.SettlingTime
S2 = stepinfo(st,'RiseTimeThreshold',[0.05 0.95]);
rt2 = S2.RiseTime
S3 = stepinfo(st,'RiseTimeThreshold',[0 1]);
rt3 = S3.RiseTime
end

lgd=legend;
title(lgd,'Valor de k')

grid on
title('Respuestas a un escalón unitario')

Con la función “stepinfo” se obtiene todos los parámetros transitorios que se consignan
en la siguiente tabla:

Para k=0

Para k=50

Para k=100

Para k=150
Para k=200

Para k=250

Para k=300

Para k=350
Para k=400

Para k=450

Para k=500

Así, se procede a obtener la familia de respuestas a un escalón unitario:


Según la aplicación del sistema, se puede determinar un valor de k más conveniente. Por
ejemplo, si se requiere que el sistema no oscile, en este caso, será conveniente un valor
muy bajo de k, teniendo en cuenta que la respuesta debe ser lo suficientemente rápida y
atenuada.
Debido al valor específico de ζ, para reducir el tiempo de estabilización, se debe
cambiar la frecuencia natural no amortiguada ω_n, que en este caso es k. Si desea que
alcance el rango cercano al valor final más rápido, k debe ser alto, pero no demasiado
alto, ya que esto provocará oscilaciones, lo que hará que el tiempo para alcanzar el
rango aumente en un 2% o 5%. A medida que aumenta k, el tiempo de subida también
se acorta significativamente.
En general, para obtener una respuesta rápida (reducción significativa en el tiempo de
subida, tiempo de asentamiento y tiempo pico), es necesario un valor alto de k (k =
500), pero esto dará como resultado una tasa de sobreextensión muy alta. Si se requiere
una respuesta sin oscilación, entonces k debería ser bajo (k = 50), pero esto producirá
una respuesta más lenta. Si se va a reducir el sobreimpulso máximo, un valor factible
para una respuesta no demasiado lenta puede ser k = 250.

También podría gustarte