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

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 件のコメント

Mathieu NOE
Mathieu NOE 2021 年 12 月 13 日
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

サインインしてコメントする。

回答 (0 件)

タグ

質問済み:

2021 年 12 月 10 日

コメント済み:

2021 年 12 月 13 日

Community Treasure Hunt

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

Start Hunting!

Translated by