Embedded Matlab function, simulink loop
Ältere Kommentare anzeigen
Hello.
I have been working with the matlab Embedded function in simulink and I have a problem. I am doing an on-off controller by adding many if statements like this:
if a>10
a=-1;
else
a=9;
end
In this case, a is an input and an output, so I need to feedback it. I have tried to feedback it by conect them directly, by using the workspace and using a Memory block, however I always get this warning:
"Found algebraic loop containing..."
The result is the simulation runs for some seconds but suddently it stops without a reason.
How can I solve this problem?
Thanks
Antworten (1)
Kaustubha Govind
am 11 Jun. 2012
0 Stimmen
How about if you insert a Unit Delay block in the feedback loop?
3 Kommentare
Robinson Medina
am 11 Jun. 2012
Nicholas
am 11 Jun. 2012
Have you considered using a persistent variable type?
http://www.mathworks.com/help/techdoc/ref/persistent.html
Kaustubha Govind
am 13 Jun. 2012
Robinson: Could you explain what you mean by "unstable" - did you mean in the context of controller dynamics? Did the error about algebraic loops go away though?
Nicholas' comment answers the rest of your question.
Kategorien
Mehr zu Simulink finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!