Why do I receive an error message about output arguments for my Embedded MATLAB Function in Simulink?

2 visualizaciones (últimos 30 días)
I have if-else statements in my code to output different results in different situations. When I start the simulation I get the following error message.. I hope you can help me. Thank you
Output argument 'D' is not assigned on some execution paths.
Function 'MPPT /IC Algo' (#182.9.10), line 1, column 10: "D"
function D = InCon(V,I,T)
  2 comentarios
Honglei Chen
Honglei Chen el 6 de Jun. de 2018
The error message suggests that your D is not assigned for certain input combination. without the code itself, it would be hard for people to provide useful suggestions.

Iniciar sesión para comentar.

Respuestas (2)

Birdman
Birdman el 8 de Jun. de 2018
Simulink wants to know the initial value and size of your output at the very beginning of the simulation. Therefore, add
D=0;
statement to your function at the very beginning. Then, it should work without error.
  3 comentarios
Birdman
Birdman el 9 de Jun. de 2018
Then check your if-else statements and make sure that they are being entered because your value should have changed.

Iniciar sesión para comentar.


Honglei Chen
Honglei Chen el 8 de Jun. de 2018
Your D is undefined for the cases where T<=n*0.005
You can consider add that by adding the else branch to the code, for example,
if T>n*0.005
... % what you have now
else
D = Dold;
end
HTH

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by