Plotting Root Locus with Pole/Zero Locations
22 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Kyle Duffy
el 30 de Abr. de 2018
Comentada: Jon
el 1 de Mayo de 2018
Hello, For one of my courses I have been tasked to create a simple 6DOF for Aircraft. My code returns the locations of the Poles but I am unsure how to have my code plot the locations on a Root Locus. I do not have a transfer function so it seems as if the "rlocus" function does not help me. Does anyone know how to do this?

0 comentarios
Respuesta aceptada
Jon
el 30 de Abr. de 2018
Think about what a root locus plot actually is. It plots the locations of the roots (pole locations) in the complex plane as a function of some parameter, for example controller gain. So you can make a simple loop which varies the parameter. For each pass through the loop, solve for the n (in your case 4) eigenvalues and plot them. Note the standard plot command in MATLAB will plot a complex value with the x axis as the real part and y axis as the imaginary part. So at each pass through the loop, if your poles (eigenvalues) are given by the vector v, you could just use the command plot(v,'*'), which would put a star (asterisk) at each pole location. Use the command hold on before entering the loop, and hold off after leaving the loop so it won't get erased as you build up the plot.
2 comentarios
Jon
el 1 de Mayo de 2018
Looking at the documentation for rlocus I also see that you can directly input a system that is in state space form if you have that. So if you have the A,B,C,D matrices modeled for your system, you can set sys = ss(A,B,C,D) and then rlocus(sys). This assumes you are looking for the root locus for a negative feedback gain. If you have some more general parameter you could always use the loop I described.
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!