the `margin` command gives incorrect gain when comparing to the actual Bode plot

3 views (last 30 days)
I have a continuous-time tranfser function with delay , and I printed the gain and phase margin as following:
[Gm0,Pm0] = margin(sys*C_pidf_fast);
where C_pidf_fast is a PIDF controller. The gain margin is returned as 73.4 However, when I plotted the bode plot
bode(sys*C_pidf_fast)
Apparently, the phase margin shown on the plot is different from the value I found by using the margin command. What is going on here?
  1 Comment
Mathieu NOE
Mathieu NOE on 13 Dec 2021
hello
I believe 73.4 is not the phase but the gain margin
this is expressed in dB when you do bode
as 20*log10(73.4) = 37.3 which is what is displayed in the bode plot

Sign in to comment.

Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!