Struct contents reference from a non-struct array object.
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Eugen Gamentzy
le 31 Mar 2018
Commenté : Eugen Gamentzy
le 1 Avr 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 commentaire
Réponse acceptée
Walter Roberson
le 31 Mar 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 commentaires
Stephen23
le 1 Avr 2018
I've made the Simulink ciruit as well, and logged the data from the scope as an array.
Plus de réponses (1)
Eugen Gamentzy
le 1 Avr 2018
1 commentaire
Walter Roberson
le 1 Avr 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.
Voir également
Catégories
En savoir plus sur Schedule Model Components dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!