Feedback loop using MATLAB function block in Simulink gives wrong answers
Afficher commentaires plus anciens
Hi, I am just implementing a very basic simulink function block to use a feed back loop as a test for its application in a larger project. According to the code the result should be 10 always. However I am getting -10 most of the time with some vague results initially of order 10^(-16). This is my function block code
function y = fcn(u,v)
%#codegen
y = 2*v+u;
disp(y);
This is the simulink diagram

What could be off here?
Réponses (1)
Abel Babu
le 2 Juin 2017
0 votes
Hi Amol,
The issue that you are facing might be due to the formation of algebraic loops, i.e a direct feed through, more about the same can be read here: https://in.mathworks.com/help/simulink/ug/algebraic-loops.html
Hence, a way out of this would be to introduce a delay. If you are using continuous time, use the Transport Delay else use the Delay (Simulink/discrete)
Abel
Catégories
En savoir plus sur General Applications dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!