Code Error When Trying to Plot Scope to Matlab Graph

What would cause the code "plot(ScopeData.time,ScopeData.signals.values,'or')" to have an error and how to fix it. This is my code:
x0 = -1;
A = -2;
B = 1;
C = 1;
D = 0;
t = linspace(0,10);
u = 2 +3*sin(3*t);
[y,~]=lsim(A,B,C,D,u,t,x0);
plot(t,y);
hold on
plot(ScopeData.time,ScopeData.signals.values,'or');
xlabel('time(s)');
ylabel('x(t)');
legend('lsim','simulink','Location','northwest');
This is my Simulink

댓글 수: 4

Your code does not assign to ScopeData and does not call sim() so we have no expectation that something in the model might have assigned to ScopeData .
How do I fix that? I don't know Matlab or Simulink well.
Aghamarsh Varanasi
Aghamarsh Varanasi 2020년 3월 17일
편집: Aghamarsh Varanasi 2020년 3월 17일
Hi Kassandra,
You are trying to plot ScopeData. ScopeData, which seems to be a structure, doesn't seem to be defined in the current scope. Could you please share your Simulink (.slx) file, pertaining to your model.
I have attached my Simulink and MatlabCode

댓글을 달려면 로그인하십시오.

 채택된 답변

Aghamarsh Varanasi
Aghamarsh Varanasi 2020년 3월 18일
Hi Kassandra,
It seems that you want to plot the Simulink Scope Data in MATLAB. Data Import/Export from Simulink can be set using the Configuration Parameters dialogue box. You could open the dialogue box from Simulation > Model Configuration Parameters, or press Ctrl+E. In the Data Import/Export Tab, you can select the variable in which you want to export the Simulink data. By default, the data is exported into a variable named ‘out’.
Hence your matlab code would be,
x0 = -1;
A = -2;
B = 1;
C = 1;
D = 0;
t = linspace(0,10);
u = 2 +3*sin(3*t);
[y,~]=lsim(A,B,C,D,u,t,x0);
plot(t,y);
hold on
xlabel('time(s)');
ylabel('x(t)');
legend('lsim','simulink','Location','northwest');
%The output of simulink is stored in a variable 'out'
%Access Scope data from out variable
time = out.ScopeData.time;
signals = out.ScopeData.signals.values;
plot(time, signals, '*g');
Make sure that you simulate the Simulink model before running the MATLAB Code.
Hope this helps.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 View and Analyze Simulation Results에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by