
how to make bode plot in simulink system
194 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Kyungmin
el 4 de Sept. de 2023
Respondida: Drew Davis
el 14 de Nov. de 2025 a las 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 comentarios
Respuesta aceptada
Sam Chak
el 7 de Sept. de 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 comentarios
Más respuestas (2)
Tianyu
el 6 de Sept. de 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
el 14 de Nov. de 2025 a las 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 comentarios
Ver también
Categorías
Más información sobre Plot Customization en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

