Change rlocus() axis units to Hz?

20 vues (au cours des 30 derniers jours)
John
John le 24 Mar 2023
Commenté : Star Strider le 28 Mar 2023
How can I change the plotted rlocus() real axis units to Hz, vs rad/s?
I tried Property Editor --> clicking on X axis --> More Properties --> Units --> Frequency field --> Hz, but didn't seem to change the plot.
I tested with a single pole at -10, plotting 1/(s+10), and the pole remained at -10 regardless of Hz or Rad/s setting.

Réponse acceptée

Star Strider
Star Strider le 24 Mar 2023
Modifié(e) : Star Strider le 25 Mar 2023
First, use rlocusplot since it allows options —
sys = tf([2 5 1],[1 2 3]);
hrlp = rlocusplot(sys);
opts = getoptions(hrlp)
opts = FreqUnits: 'rad/s' TimeUnits: 'seconds' ConfidenceRegionNumberSD: 1 IOGrouping: 'none' InputLabels: [1×1 struct] OutputLabels: [1×1 struct] InputVisible: {0×1 cell} OutputVisible: {0×1 cell} Title: [1×1 struct] XLabel: [1×1 struct] YLabel: [1×1 struct] TickLabel: [1×1 struct] Grid: 'off' GridColor: [0.1500 0.1500 0.1500] XLim: {[-2.5000 0.5000]} YLim: {[-1.5000 1.5000]} XLimMode: {'auto'} YLimMode: {'auto'}
setoptions(hrlp, 'FreqUnits','Hz')
Second, it doesn’t display frequency values or units, although you can certainly set them. (The same options are available on other plot functions. For a full list of the available plot functions, see the setoptions documentation section p.)
EDIT — (25 Mar 2023 at 10:48)
Clarified code. No substantive changes.
.
  3 commentaires
John
John le 28 Mar 2023
Thanks @Star Strider and @Paul. That helped.
Star Strider
Star Strider le 28 Mar 2023
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Produits


Version

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by