Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Primera Practica Control III Fiee Uni
Primera Practica Control III Fiee Uni
Donde:
1 − 𝑒 −𝑠𝑇
𝐺ℎ0 (𝑠) =
𝑠
Para las funciones de transferencia del controlador y de la planta se dan en función del
número de inscripción en el curso (N0), para mi caso:
N0 = 27
Del cual:
M = 0, N = 1, T = 0.250 segundos
Entonces:
𝐺𝐶 (𝑠) = 𝐾
10(𝑠 + 5)
𝐺𝑃 (𝑠) =
𝑠(𝑠 + 3.1456453)(𝑠 2 + 6𝑠 + 25)
10𝑠 + 50
𝐺𝑃 (𝑠) =
𝑠4 + 9.1456453𝑠 3 + 43.8738718𝑠 2 + 78.6411325𝑠
𝐺𝐷 (𝑧) = 𝐾
Para obtener la FTP del proceso se obtiene usando los siguientes comandos en Matlab:
[NG1,DG1]=c2dm([10 50],[1 9.1456453 43.8738718 78.6411325
0],0.25,'zoh');
G1=tf(NG1,DG1,0.25)
𝑌(𝑧) 𝐺𝐷 (𝑧)𝐺(𝑧)
=
𝑅(𝑧) 1 + 𝐺𝐷 (𝑧)𝐺(𝑧)
𝑌(𝑧) 𝐸1 (𝑧)
=
𝑅(𝑧) 𝐸2 (𝑧) + 𝐸1 (𝑧)
Donde:
Operando y ordenando con respecto del exponente de z se obtiene la FTP del sistema
como:
𝑌(𝑧) 𝐾(0.01925𝑧 3 + 0.05050𝑧 2 − 0.004847𝑧 − 0.003218)
= 4
𝑅(𝑧) 𝑧 − (1.9659 − 0.01925𝐾)𝑧 3 + (1.4215 + 0.05050𝐾)𝑧 2 − (0.5573 + 0.004847𝐾)𝑧 + (0.1016 − 0.003218)
Tiene la forma:
𝐹(𝑧) = 𝑎0 𝑧 4 + 𝑎1 𝑧 3 + 𝑎2 𝑧 2 + 𝑎3 𝑧 + 𝑎4 = 0
Donde:
𝑎0 = 1
𝑎1 = −1.9659 + 0.01925𝐾
𝑎2 = 1.4215 + 0.05050𝐾
𝑎3 = −0.5573 − 0.004847𝐾
𝑎4 = 0.1016 − 0.003218𝐾
Fila Z0 Z1 Z2 Z3 Z4
1 𝑎4 𝑎3 𝑎2 𝑎1 𝑎0
2 𝑎0 𝑎1 𝑎2 𝑎3 𝑎4
3 𝑏3 𝑏2 𝑏1 𝑏0
4 𝑏0 𝑏1 𝑏2 𝑏3
5 𝑐2 𝑐1 𝑐0
Donde:
𝑏3 = 𝑎4 2 − 𝑎0 2 = 0.00001036𝐾 2 − 0.0006539𝐾 − 0.9897
𝑏2 = 𝑎4 𝑎3 − 𝑎0 𝑎1 = 0.00001560𝐾 2 − 0.01795𝐾 + 1.9093
𝑏1 = 𝑎4 𝑎2 − 𝑎0 𝑎2 = −0.0001625𝐾 2 − 0.04994𝐾 − 1.2771
𝑏0 = 𝑎4 𝑎1 − 𝑎0 𝑎3 = −0.00006195𝐾 2 + 0.01313𝐾 + 0.3576
𝑐2 = 𝑏3 2 − 𝑏0 2
𝑐1 = 𝑏3 𝑏2 − 𝑏0 𝑏1
𝑐0 = 𝑏3 𝑏1 − 𝑏0 𝑏2
𝐾 > 0.001621
Condición 3: 𝐹(𝑧)|𝑧=−1 > 0 (por ser “n” par) => 𝑎0 − 𝑎1 + 𝑎2 − 𝑎3 + 𝑎4 > 0, entonces
operando:
𝐾 > −153.4809
Condición 4: |𝑏3 | > |𝑏0 | => (𝑏0 − 𝑏3 )(𝑏0 + 𝑏3 ) < 0, de esta condición se tiene:
|𝑐2 | > |𝑐0 | => (𝑐0 − 𝑐2 )(𝑐0 + 𝑐2 ) < 0, de esta condición se tiene
2. Para graficar la salida 𝑦(𝑘𝑇) para diferentes valores de K, se usó el siguiente código
en Matlab:
clear all; clc; close all;
K=1;
y=dstep(K*nz,dz,100);
k=0:99;
plot(k,ones(size(k)),'r','linewidth',2);
hold on;
stairs(0.25*k,y);
grid on;
axis([0 25 0 1.2]);
hold off;
legend('r(kT)','y(kT)');
De las gráficas anteriores podemos deducir que la salida 𝑦(𝑘𝑇) presenta una respuesta
más parecida al escalón 𝑟(𝑘𝑇), cuando 𝐾𝑚𝑒𝑗 = 1.5, con este valor se obtuvo la FTP
para el sistema:
Luego se sabe:
𝐸(𝑧) 1
=
𝑅(𝑧) 1 + 𝐺𝐷 (𝑧)𝐺(𝑧)
Reemplazando valores:
Para obtener la respuesta de esta señal de error se usó el siguiente código en Matlab:
clear all; clc; close all;
3. De lo anterior:
Operando:
𝑟(𝑘) = 0, 𝑝𝑎𝑟𝑎 𝑘 ≤ 0
Para graficar la respuesta de la salida 𝑦(𝑘𝑇) con respecto a la entrada 𝑟(𝑘𝑇), se usó
el siguiente código en Matlab:
r=zeros(1,324); r(1:4)=0;
for k=5:44
r(k)=0.8*T*(k-6);
end
for k=45:104
r(k)=0.8*T*40;
end
for k=105:184
r(k)=0.8*T*(40-(k-104));
end
for k=185:244
r(k)=-0.8*T*40;
end
for k=245:284
r(k)=0.8*T*(k-284);
end
for k=285:324
r(k)=0;
end
for k=5:324
y(k)=1.9370*y(k-1)-1.4973*y(k-2)+0.5646*y(k-3)-0.09677*y(k-
4)+0.02888*r(k-1)+0.07575*r(k-2)-0.007271*r(k-3)-0.004827*r(k-
4);
end
stairs(T*(t-4),y);
axis([0 80 -10 15]);
title('\bfRespuesta de la salida y(kT) respecto a la entrada
r(kT), K_m_e_j=1.5')
xlabel('kT (seg)')
grid on;
hold on;
plot((t-6)*T,r,'r');
hold off;
legend('y(kT)','r(kT)');
4. Se sabe:
Pero ya calculamos:
Luego:
Operando tenemos:
𝑒𝑠𝑠 = 1.05053
Ahora realizamos la gráfica de 𝑒(𝑘𝑇), para ello usamos el siguiente código en Matlab:
clear all; clc; close all;
También se sabe:
𝐾𝑎 = lim(1 − 𝑧 −1 )2 𝐺𝐶 (𝑧)𝐺(𝑧) = 0
𝑧→1
1 + (𝑇/2)𝑤 1 + 0.125𝑤 8 + 𝑤
𝑧= = =
1 − (𝑇/2)2 1 − 0.125𝑤 8 − 𝑤
Y la función de transferencia:
Reemplazando:
Operando:
Tiene la forma:
𝐹(𝑤) = 𝑝0 𝑤 4 + 𝑝1 𝑤 3 + 𝑝2 𝑤 2 + 𝑝3 𝑤 + 𝑝4
Fila\Columna
1 𝑤 4: 𝑝0 𝑝2 𝑝4
2 𝑤 3: 𝑝1 𝑝3
3 𝑤 2: 𝑞0 𝑞1
4 𝑤1: 𝑟0
5 𝑤 0: 𝑠0
𝑞1 = 𝑝4
𝑝3 𝑞0 −𝑝1 𝑞1
𝑟0 = 𝑞0
> 0 => −52.2268 < 𝐾 < 6.1788 ó 𝐾 > 812.29
𝑄(𝑧)
1 + 𝐺𝐷 (𝑧)𝐺(𝑧) = 1 + 𝐾 =0
𝑃(𝑧)
Es decir:
𝑄(𝑧)
1 + 𝐾𝐼 ó 𝑃(𝑧) + 𝐾𝐼 𝑄(𝑧) = 0
𝑃(𝑧)
Donde 𝐾𝐼 = 0.01925𝐾
En base a la ecuación característica hallada aplicamos las reglas de traza del L.G.R.
a) #ramas = # polos = 4
b) Puntos terminales
Puntos de inicio (𝐾𝐼 = 0):
Entonces:
Entonces:
e) Puntos de Ruptura
Los puntos de ruptura se determinan derivando K respecto de z:
De donde:
𝑃′ (𝑧)𝑄(𝑧) − 𝑃(𝑧)𝑄 ′ (𝑧) = 0
Entonces:
Resolviendo la ecuación:
Las otras dos raíces son complejos conjugados las cuales no tienen sentido
analizarlas.
De donde se obtiene:
Ahora para comprobar los resultados anteriores se usó Matlab con el siguiente
código:
clear all; clc; close all;
rlocus(nz,dz);
zgrid;
7. En tiempo continuo:
10𝐾(𝑠 + 5)
𝐺𝐷 (𝑠)𝐺(𝑠) =
𝑠 4 + 9.1456𝑠 3 + 43.8736𝑠 2 + 78.64𝑠
Entonces:
𝑌(𝑠) 10𝐾(𝑠 + 5)
= 4
𝑅(𝑠) 𝑠 + 9.1456𝑠 + 43.8736𝑠 2 + (78.64 + 10𝐾)𝑠 + 50𝐾
3
Fila\Columna
1 𝑠4: 𝑎0 𝑎2 𝑎4
2 𝑠3: 𝑎1 𝑎3
3 𝑠2: 𝑏0 𝑏1
4 𝑠1 : 𝑐0
5 𝑠0: 𝑑0
Intersectando las soluciones anteriores se obtiene los valores de K que hacen que el
sistema en tiempo continuo sea estable, esto resulta:
n=[10 50];
d=[1 9.1456 43.8736 78.64 0];
rlocus(n,d);
grid on;
K=1.5;
n=[10*K 50*K];
d=[1 9.1456 43.8736 (78.64+10*K) 50*K];
y=tf(n,d);
step(y)
title('\bfRespuesta de la salida y(t) a una entrada escalon
unitario, K_m_e_j=1.5');
grid on;
Al ejecutar el código se obtiene la gráfica de la salida 𝑦(𝑡) para una entrada escalón
unitario en tiempo continuo:
Podemos observar de las gráficas que el sistema se comporta de manera similar tanto
en tiempo discreto como en tiempo continuo. El sistema en tiempo continuo es más
robusto ya que permite un intervalo más amplio de K (que garantice la estabilidad)
que el de en tiempo discreto.