Struct contents reference from a non-struct array object.
16 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Eugen Gamentzy
am 31 Mär. 2018
Kommentiert: Eugen Gamentzy
am 1 Apr. 2018
I need to make a function that showes me the state space model for a circuit and i need to overlap the simulink graph to the workspace one. I used this:
t=0:0.1:15;
u=(t>=0);
c=1;
L=1;
R=1;
x0=[0.59 1.71];
A=[0 1/c ; -1/L -R/L];
B=[0 ; 1/L];
C=[-1 -R];
D=[1];
sistem=ss(A,B,C,D);
[y,t,x]=lsim(sistem,u,t,x0);
figure;
plot(t,y); hold;
plot(ScopeData.time,ScopeData.signals.values,'x');
but for the last plot it said 'Struct contents reference from a non-struct array object.'
What's wrong?
1 Kommentar
Stephen23
am 1 Apr. 2018
At first it worked, but when I came back to the program it said that error.
Akzeptierte Antwort
Walter Roberson
am 31 Mär. 2018
ScopeData is only created by the Simulink Scope Block https://www.mathworks.com/help/sldrt/ug/set-scope-parameters-for-logging-to-workspace.html or equivalent for Simulink Real Time. Apart from that ScopeData does not exist.
2 Kommentare
Stephen23
am 1 Apr. 2018
I've made the Simulink ciruit as well, and logged the data from the scope as an array.
Weitere Antworten (1)
Eugen Gamentzy
am 1 Apr. 2018
1 Kommentar
Walter Roberson
am 1 Apr. 2018
If ScopeData were initialized as the empty array and later expected to be overwritten with the struct but was not overwritten then you could get that error. You should look at size() and class() of the variable.
Siehe auch
Kategorien
Mehr zu Schedule Model Components finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!