Code Error When Trying to Plot Scope to Matlab Graph

조회 수: 8 (최근 30일)
Kassandra Krinke
Kassandra Krinke 2020년 3월 14일
댓글: Kassandra Krinke 2020년 3월 18일
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
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.
Kassandra Krinke
Kassandra Krinke 2020년 3월 17일
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개)

카테고리

Help CenterFile 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