How to plot the phase margin?

55 views (last 30 days)
Hardik
Hardik on 22 Dec 2022
Edited: Hardik on 23 Dec 2022
Hello I have one tricky question where I am struck.I know how to plot the bode diagtam using the margin command but i am not sure how can i implement more than 30% margin part. my system and requirement is below. Please help me to understand how can i do this.

Accepted Answer

Bora Eryilmaz
Bora Eryilmaz on 22 Dec 2022
Edited: Bora Eryilmaz on 22 Dec 2022
The transfer function 20/(s+1) is your controller. As it is, it does not give you a 50-degree phase margin. You need to modify this controller to achieve the desired phase margin. There are couple ways of doing this:
  • Either reduce the gain of the controller to achieve a larger phase margin, but at a lower frequency.
  • Or add additional phase using controller terms such as lead-lags.
% Initial compensator
C = zpk([], -1, 20);
% The plant
G = zpk(-20, [-2 -5], 1);
% Phase and gain margin of the open-loop transfer function with initial
% compensator
L = C*G;
margin(L)
% Modify the compensator C to obtain the desired phase margin (this part is
% up to you, since this seems like a homework question).
C = zpk([], -2, 10) % This is my trivial change, will not give 50 degrees phase margin.
C = 10 ----- (s+2) Continuous-time zero/pole/gain model.
L = C*G;
margin(L)
% Bode plot of the compentator
bode(C)
% Closed-loop system
T = L / (1 + L);
bode(T)
step(T)
  6 Comments
Hardik
Hardik on 22 Dec 2022
Okay Sir. I understand. thank you for all your help.
Hardik
Hardik on 22 Dec 2022
Edited: Hardik on 22 Dec 2022
Hello Sir, in my next part of problem I have to use the Feedback command in Matlab to find the closed loop transfer function of the compensated system. Provide the overall closed loop transfer function.
I have done the coding part but I am bit confused here that Do i have to use feedback command on original given system or the output TF i get from this part i have to use?
And if i have to use new obtanined TF then do i also have to use the plant value (s+20) and multiply them and then use the feedback command ?

Sign in to comment.

More Answers (0)

Categories

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

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!