Error while using function block in simulink
Infos
Cette question est clôturée. Rouvrir pour modifier ou répondre.
Afficher commentaires plus anciens
Hi, For a large system i'm trying to simulate i had to write specific code as block in simulink. for simplicity i first tried to do the following simple task (the real function is more complicated but as a sainity check):

But i get the following error:

I would really appriciate any help.
Réponses (1)
Sebastian Castro
le 25 Fév 2016
This is an algebraic loop, which means that the output of the block depends directly on the input.
In this case, y cannot be computed without knowledge of u -- both of which refer to the same signal. As the error messages say, this is not valid.
If it makes sense given your modeling requirements, I would recommend using a Unit Delay block in the loop. This delay will change the equations from:
y = u (AT THE CURRENT TIME STEP) + randn(1,2); % Does not work
to:
y = u (AT THE PREVIOUS TIME STEP) + randn(1,2); % Will work
Just make sure the Unit Delay block is sampled at the rate you want by setting its sample time parameter.
- Sebastian
1 commentaire
shahar lutati
le 26 Fév 2016
Cette question est clôturée.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!