I want to find where the root locus branches cross the y axis.
50 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Alexandra Weever
el 14 de Mzo. de 2021
I would like to find where the root locus branches cross the y axis. I have used the following code to plot the root locus and I am unsure how to continue. I am quite new to matlab and mathworks so I am not sure how to frame my questions properly.
%Numerically calculate the roots of the characteristic equation for various values of K
clear
close all
%variables
m=0.0005;
tau=2.705;
f=0.0034;
kfan=0.00338;
figure
hold on
for K=0.5:0.0:8.0
Delta = [m*tau (f*tau+m) f K*kfan*f];
poles = roots(Delta);
plot(real(poles), imag(poles), 'rx')
title([ 'K = ',num2str(K) ])
axis([-8 8 -5 5])
grid on
end
% kfan*f
%G1(s) = ------------------
% s(ms+f)(1+taus)
G1_num = [kfan*f];
G1_den = [m*tau (f*tau+m) f 0]
G1 = tf(G1_num,G1_den)
figure
rlocus(G1)
0 comentarios
Respuesta aceptada
Paul
el 14 de Mzo. de 2021
Editada: Paul
el 14 de Mzo. de 2021
One option would be to use the return values of rlocus:
[r,K]=rlocus(G1)
to get a coarse idea of the value of K that results in the real(r) == 0. Then refine by using a user-specified value of K
r = rlocus(G1,K)
until you narrow in as close as you want.
More precisely, the answer is determined by solving:
G1_den(1j*w) + K*G1_num(1j*w) = 0 for K and w, i.e., both real and imaginary parts of the lhs are equal to 0, so two equations in two unknowns, which might not be so bad to solve by hand for this problem, and would be a bit easier is you're allowed to use the Symbolic Math Toolbox.
There are other ways to attack the problem as well depending on how much you're allowed to use Matlab to help.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Classical Control Design en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!