Академический Документы
Профессиональный Документы
Культура Документы
“CONTROL MECATRONICO 1”
NOMBRES Y APELLIDOS:
Kevin Cortez Rojas
CUI:2012210251
Semestre IX
2020
Problema 1
C( s) ω n2
=
R( s) s 2+ 2ζωn s+ω n2
Utilizando un “bucle for”, escriba un programa en MATLAB para obtener la respuesta de este
sistema en los cuatro casos siguientes:
Caso 1: ζ =0.3 , ωn =1
Caso 2: ζ =0.5 , ωn =2
Caso 3: ζ =0.7 , ω n=4
Caso 4: ζ =0.8 , ωn =6
%% ------------------------------------BUCLE FOR--------------------------------------
for i=1:4
num=wn(i)^2;
den=[1 2*d(i)*wn(i) wn(i)^2];
G=tf(num,den);
step(G)
hold on
gtext('d')
end
Utilizando MATLAB, obtenga la respuesta a una rampa unitaria del sistema de control en lazo cerrado cuya
función de transferencia en lazo cerrado es:
C( s) s+ 10
=
R( s) s 3+ 6 s 2+ 9 s+ 10
Obtenga también la respuesta de este sistema cuando la entrada está dada por:
r =e−0.5t
%% -----------------------------------GRAFICAMOS--------------------------------------
subplot(211)
lsim(G,u,t)% Grafica respuesta en “t” para una entrada tipo escalón unitario “u”.
u2=exp(-0.5*t);% Grafica respuesta en “t” para una entrada “r =e−0.5 t ”.
subplot(212)
lsim(G,u2,t)
donde 𝜁 = 0, 0.2, 0.4, 0.6, 0.8 𝑦 1.0. Escriba un programa en MATLAB utilizando un «bucle for» para obtener las
gráficas en dos y en tres dimensiones de la salida del sistema. La entrada es una función escalón unitario. Usar la
función mesh para graficar en 3 dimensiones.
for i=1:length(d)
num=1;
den=[1 2*d(i) 1];
G=tf(num,den);
step(G,t)
y(1:length(t),i)=step(G,t);% creación del vector y de tamaño proporcional.
hold on
s=num2str(d(i));
gtext(s)
end
Problema 5
Determine los valores de K y k del sistema en lazo cerrado, para que el sobrepaso máximo de la respuesta escalón
unitario sea de 25% y el tiempo pico sea de 2 seg. Suponga que J=1
Problema 5
Determine los valores de K y k del sistema en lazo cerrado, para que el sobrepaso máximo de la respuesta escalón
unitario sea de 25% y el tiempo pico sea de 2 seg. Suponga que J=1
%% -----------------------------------------------------------------------
clc, clear all, close all
num=[6.3223 18 12.811];
den=[1 6 11.3223 18 12.811];
G=tf(num,den);
%% -----------------Cálculo de la salida en estado estacionario yss
yss=polyval(num,0)/polyval(den,0);
%% -----------------Cálculo del máximo sobreimpulso
[y,t]=step(G);%--obtención de los vectores tiempo y "y"
[yp,pos]=max(y);
Mp=((yp-yss)/yss)*100;
tp=t(pos);
%% -----------------Cálculo del tiempo de subida
k=1;%---contador
while y(k)<0.1
k=k+1;
end
t10=t(k);%------tiempo necesario para llegar al 10%
j=1;%---contador
while y(j)<0.9
j=j+1;
end
t90=t(j);%------tiempo necesario para llegar al 90%
tr=t90-t10;%-------tiempo de subida
%% -----------------Cálculo del tiempo de establecimiento tss
s=length(t);
while y(s)>0.98 && y(s)<1.02%--criterio del 2% tss=4/swn
s=s-1;
end
tss=t(s);
fprintf('El máximo sobreimpulso es: %1f \n',Mp);
fprintf('El tiempo de pico es: %1f \n',tp);
fprintf('El tiempo de subida es: %1f \n',tr);
fprintf('El tiempo de establecimiento es: %1f \n',tss);
step (G)
EL código nos genera la siguiente respuesta en el Command Window de Matlab: