Info

La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.

Error while using function block in simulink

5 visualizaciones (últimos 30 días)
shahar lutati
shahar lutati el 25 de Feb. de 2016
Cerrada: MATLAB Answer Bot el 20 de Ag. de 2021
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.

Respuestas (1)

Sebastian Castro
Sebastian Castro el 25 de Feb. de 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

La pregunta está cerrada.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by