How do I plot time vs. velocity with a matrix in Simulink ?

4 vues (au cours des 30 derniers jours)
Nuri Efe TATLI
Nuri Efe TATLI le 27 Mai 2022
Modifié(e) : Sam Chak le 27 Mai 2022
Hi everyone.
I have a 1370x2 matrix where the first column is the time and second column is velocity.
I want to plot Time vs Velocity in x and y axis respectively.
Is there any block in Simulink that can help me with that ?
Thanks.

Réponse acceptée

Sam Chak
Sam Chak le 27 Mai 2022
In MATLAB, if a matrix M is given, then this would be:
t = M(:,1); % 1st column
V = M(:,2); % 2nd column
plot(t, V) % plotting V vs. t
However, in Simulink, it's a little complicated. Luckily, you can use a MATLAB Function block to do wonders.
Double-click the block and enter this code:
function plotfcn(u)
t = u(:,1);
V = u(:,2);
coder.extrinsic('plot')
plot(t, V, 'linewidth', 1.5)
grid on
xlabel('t')
ylabel('V')
  2 commentaires
Nuri Efe TATLI
Nuri Efe TATLI le 27 Mai 2022
Modifié(e) : Nuri Efe TATLI le 27 Mai 2022
This is superb thank you very much.
Also can i create more than 1 figures with this on Simulink ?
Because only 1 figure appears when i run my simulation.
Sam Chak
Sam Chak le 27 Mai 2022
Modifié(e) : Sam Chak le 27 Mai 2022
Yes you can.
function plotfcn(u)
t = u(:,1);
V = u(:,2);
coder.extrinsic('plot')
figure(1)
plot(t, V, 'linewidth', 1.5)
figure(2)
plot(t, sqrt(V), 'linewidth', 1.5)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur General Applications dans Help Center et File Exchange

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by