
how to make bode plot in simulink system
199 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Kyungmin
il 4 Set 2023
Risposto: Drew Davis
il 14 Nov 2025 alle 19:13
Hello,
I have one question about how to make a bode-plot in simulink system.
I made one simulink system using PMSM.
and I want to check system margin using bode-plot.
I tried example simulink system from help desk.
but it was different .
Aslo I know that if there are transfer function, it's possible to make bodeplot easily.
but I don't know the transfer function.
So I ask you.
please let me know.
best regards,
Kim
0 Commenti
Risposta accettata
Sam Chak
il 7 Set 2023
Hi @Kyungmin
You can insert the Bode Plot block in the Simulink model and follow the steps described in this link for visualizing the Bode response of the Model during simulation as shown in the following example. However, your PMSM is a little complicated to me. Generally, you need to mark the signals (right-click the signal and select Linear Analysis Points) to identify the open-loop Input and the open-loop Output. And then on the Linearization Tab (double-click the Bode Plot block), you need to check on the 'Show plot on block open'.

7 Commenti
Più risposte (2)
Tianyu
il 6 Set 2023
Hi Kim,
Not sure if this is the best way but you can use "Control System Designer" under Simulink app tab.
Click "New plot" and select "New Bode". Then "Add Signal" > "Select signal from model".
Select the input/output signal in your model and plot.
For more information, check Design single-input, single-output (SISO) controllers - MATLAB (mathworks.com)
Drew Davis
il 14 Nov 2025 alle 19:13
In addition to the answers already provided, this can be done from the command line as follows:
If the model is linearize-able, you can use the linearize command to generate a state-space model, then use the bode command to visualize the linear system's frequency response.
% linearize the model about its initial conditions.
sys = linearize("mymodel",io);
% plot the frequency response
bode(sys);
If the model is not linearize-able, which is common for many PMSM models due to hard switching electrical elements (e.g. PWM), you can use the frestimate command to generate a frequency response of the model, which can then be plotted using the bode command.
% create a perturbation specification
In = frest.PRBS();
% estimate the FRD
est_sys = frestimate("mymodel",io,in);
% plot the frequency response
bode(est_sys);
0 Commenti
Vedere anche
Categorie
Scopri di più su Plot Customization in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

