How can I use allmargin() with non-unity feedback?

Hello!
I have a (MIMO) feedback system of which I would like to estimate the stability margins using allmargin(). Looking at the documentation of this function, it takes as input the loop gain L and assumes unity feedback, such that the system can be modelled as the figure below:
However, my system has some controller in the negative feedback path, such that the system looks as follows:
Is it possible to compute the stability margins of such a system using allmargin()?

 Accepted Answer

Hi Erik,
What's the loop transfer function, L(s), from which one could compute the stability margins (having already determined the closed-loop system is stable)?
In other words, are you asking about the math? Or do you know the math and are just asking how implement the math in Matlab?

4 Comments

Hi Paul,
Thanks for your response! I suppose I'm asking about a bit of both... it's been a while since I've looked at control systems. Let me try to rephrase.
The two systems sketched above have different closed-loop transfer functions; for system (1) and for system (2). However, since they both see the same loop gain , the stability margins for both systems seem to be equivalent. Is this correct?
Yes, that's correct.
Perfect, thanks! Sorry for the (ultimately) trivial question.
Personally, I have a preference for system (1), where the compensator is positioned on the feedback path. However, I acknowledge that system (2) may be more intuitive for most designers who prioritize driving the error to zero.

Sign in to comment.

More Answers (0)

Categories

Find more on Control System Toolbox in Help Center and File Exchange

Products

Release

R2021b

Asked:

on 22 Mar 2024

Commented:

on 29 Mar 2024

Community Treasure Hunt

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

Start Hunting!