how to plot multiple bode plots in one figure ?

116 ビュー (過去 30 日間)
Aniket
Aniket 2013 年 4 月 25 日
編集済み: Bal Krishna Poudel 2015 年 5 月 3 日
Hi,
I am using matlab/simulink 2012. Is there any way to plotting several bode diagrams into same figure. For example i have system with parameters and i am using generating gain in matlab file and using this gain in simulink model. I do a bode plot for parameters and then i changes some parameters in matlab file again generating gain and again do bode plot using bode block in simulink.
but for comparison reasons i would like those two plots in same figure. how should i do this ?
Thank you
  1 件のコメント
Bal Krishna Poudel
Bal Krishna Poudel 2015 年 5 月 3 日
編集済み: Bal Krishna Poudel 2015 年 5 月 3 日
Hi Aniket,
Each time when you simulate the frequency response in simulink using linearization tool, systems named linsys1, linsys2, linsys3 etc. will be created in the linear analysis workspace. Simply drag these systems in to the MATLAB workspace located just above the linear analysis tool. Then, go to the command window and write;
bode(linsys1); hold on; bode(linsys2); hold on; bode(linsys3); and so on.
you will get bode plot of all the systems(linsys1, linsys2, linsys3 etc.) in the same axes.

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

採用された回答

Arkadiy Turevskiy
Arkadiy Turevskiy 2013 年 4 月 25 日
When you open the dialog for Bode Plot block, the third tab, called "logging" lets you save the linear system into MATLAB workspace.
Once you have the system in MATLAB workspace you can just use bode command to plot multiple systems on the same plot, i.e.,
bode(sys1),
hold on;
bode(sys2,'r');
  2 件のコメント
Aniket
Aniket 2013 年 4 月 25 日
I have done as you are saying but its showing me error of "not enough arguments" and the at matlab workspace when i am saving data its saving in structure format and it contains time , values and block name.
for error i have tried to give arguments like frequency ,
so i declare frequency
w = 2*pi*(0:500)
bode (sys1,w)
but this also gives me error
""Invalid syntax for the "tf" command. Type "help tf" for more information.
Error in bode (line 96) sys = tf(a,b);""
my model is follwing blocks
Arkadiy Turevskiy
Arkadiy Turevskiy 2013 年 4 月 26 日
For the model you get from Simulink you need to do
bode(sys.values)

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangePlot Customization についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by