Está en la página 1de 3

Verificamos haciendo uso del plano w y del plano z

Plano w

A la izquierda, para k positivo, y a la derecha, para k negativo

Se observa que los intervalos de k son los esperados

Plano z
Código usado para las correcciones:
clear all
close all
clc
%% codigo correcciones 5to punto
%plano w
sys=tf([-0.02036 0.28532 -0.35 -1.37232 2.18784],[2.918 13.812 20.328 8.752 0])
rlocus(sys)
figure
rlocus(-sys)
%plano z
sys=tf([0.05458 0.07855 0.00361],[1 -1.456 0.459 -0.003 0],0.1)
figure
rlocus(sys)
figure
rlocus(-sys)
%% codigo para encontrar rango de k para bo b3
k=-100:0.0001:100;
bo=(0.00361^2)*(k.^2)-1;
b3=0.003-0.08380616*k;
figure
plot(k,abs(bo))
hold on
plot(k,abs(b3))
legend('abs(bo)','abs(b3)')
xlim([-40 40])
ylim([0 2])
%% codigo para encontrar rango para c0 y c2
c0=(1.69836e-10)*(k.^4)-0.00704*k.^2+0.0005*k+0.999991;
c2=(2.56776e-9)*(k.^4)+0.00002*(k.^3)-0.0002*(k.^2)+0.17494*k+0.454632;
figure
plot(k,abs(c0))
hold on
plot(k,abs(c2))
legend('abs(co)','abs(c2)')
xlim([-40 40])
ylim([0 2])
%% verificaciones en el plano w para segundo punto
%% comprobación plano w
T=1;
A=10*((1-exp(-0.3*T))/(1+exp(-0.3*T)));
B=((1-exp(-0.3*T))/(1+exp(-0.3*T)))
sysc=A*tf([-T 2],[T 2*B])
figure
rlocus(sysc,0.6:0.001:0.7)
figure
rlocus(-sysc)
T=0.1;
A=10*((1-exp(-0.3*T))/(1+exp(-0.3*T)));
B=((1-exp(-0.3*T))/(1+exp(-0.3*T)))
sysc=A*tf([-T 2],[T 2*B])
figure
rlocus(sysc,6:7)
figure
rlocus(-sysc)
T=0.01;
A=10*((1-exp(-0.3*T))/(1+exp(-0.3*T)));
B=((1-exp(-0.3*T))/(1+exp(-0.3*T)))
sysc=A*tf([-T 2],[T 2*B])
figure
rlocus(sysc,60:70)
figure
rlocus(-sysc)
%% comprobación plano z, desde la ecuación caracteristica
T=1
sysd1_2=tf([10*(1-exp(-0.3*T))],[1 -exp(-0.3*T)],1)
figure
rlocus(sysd1_2)
figure
rlocus(-sysd1_2)
T=0.1
sysd1_2=tf([10*(1-exp(-0.3*T))],[1 -exp(-0.3*T)],1)
figure
rlocus(sysd1_2)
figure
rlocus(-sysd1_2)
T=0.01
sysd1_2=tf([10*(1-exp(-0.3*T))],[1 -exp(-0.3*T)],1)
figure
rlocus(sysd1_2)
figure
rlocus(-sysd1_2)

También podría gustarte