simulink is giving unexpected simulation answer

2 visualizaciones (últimos 30 días)
abdo salm
abdo salm el 6 de Sept. de 2024
Comentada: Sam Chak el 7 de Sept. de 2024
I am trying to simulate the following block diagram
which simulates the equation : with the second integrator having the initial condition of 1.
where this equation can have the solution :
but upon simulation I got the following result:
I can notice the mathematical solution doesn't follow actual simulation where the simulation will always produce sinusoidal trying to reach stability state which is the oscillation between (inital_condition / 2) and (-inital_condition / 2). so why doesn't the mathematical solution match the simulation.
  5 comentarios
Sam Chak
Sam Chak el 6 de Sept. de 2024
Can you you show us the scope when wo is set to 1?
abdo salm
abdo salm el 6 de Sept. de 2024
@Sam Chak, I set wo to 1 and I got a nearly stable cosine wave

Iniciar sesión para comentar.

Respuesta aceptada

Sam Chak
Sam Chak el 6 de Sept. de 2024
Nope, not stable. The reason you got the high oscillations exponential decay response is because there are not enough samples for the scope to plot it out correctly.
Solution: Use a smaller time step, preferably (2π/wo)/100.
  1 comentario
Sam Chak
Sam Chak el 7 de Sept. de 2024
You set the time step at the Model Configuration Parameters > Solver Pane. The simulation time step size is specified using the Max step size parameter, if the variable-step solver is selected.
Or, you can set the value from the Command Window. In the following example, the Simulink model 'vdp.slx' is opened. Use the 'get_param()' command check the current value, and then the 'set_param()' command to set the desired value.
openExample('simulink_general/VanDerPolOscillatorExample');
% Check the Maximum time step size for variable-step solver
get_param('vdp', 'MaxStep')
ans = 'auto'
% Set the Maximum time step size to 0.01, preferably using this formula (2π/wo)/100
set_param('vdp', 'MaxStep', '0.01')
% Check the Maximum time step size again
get_param('vdp', 'MaxStep')
ans = '0.01'

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre General Applications en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by