pause() function not running in realtime

3 visualizaciones (últimos 30 días)
Victor
Victor el 3 de Mzo. de 2024
Editada: Victor el 4 de Mzo. de 2024
I am working on a project that modelise the DC motor with the following state-space form:
Here is my code: ------------------------------------
------------------------ Result:
----------------------- My goal is that I want to plot the value of the velocity which is theta dot versus realtime, so I use the pause() function in each step to represent real time simulation. However, I notice that this the plot is way slower than the real time. I am aiming to use mfile only, not simulink. My questions: - I am new to state-space and transfer function. Can you check the result for me? :D - Why is the points on the plot slower than the real time? Can anyone explain for me? What should I do if I want to fix it. Thanks very much for any response. I am really appreciated :D
  1 comentario
VBBV
VBBV el 3 de Mzo. de 2024
Editada: VBBV el 3 de Mzo. de 2024
% after the for loop
hold on
yyaxis right
sys = ss(A,B,C,D)
step(sys)

Iniciar sesión para comentar.

Respuestas (1)

VBBV
VBBV el 3 de Mzo. de 2024
Editada: VBBV el 3 de Mzo. de 2024
dt = 0.05
change the timestep size and try
  2 comentarios
VBBV
VBBV el 3 de Mzo. de 2024
Editada: VBBV el 3 de Mzo. de 2024
use ss function https://in.mathworks.com/help/control/ref/ss.html to check/verify your results
Victor
Victor el 3 de Mzo. de 2024
Thank you alot! I tried 0.1 s and it is actually closed to real time.

Iniciar sesión para comentar.

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by