Need help on fixing Stateflow model.

1 visualización (últimos 30 días)
Jung Sunghun
Jung Sunghun el 20 de En. de 2023
Respondida: Fangjun Jiang el 20 de En. de 2023
Hello, I would appreciate if you help me on fixing my Stateflow model.
I am currently building a Stateflow model to control the amount of charging current flowing into a battery pack and control logic can be found in the following figure.
To achieve objective, I decided to use a Stateflow based model built as follows, but I contronted an error message shown below.
Variables used are listed and defined as below.
The model file is attached in here. I do appreciate your time on considering this issue.
PS: MATLAB R2021b

Respuesta aceptada

Fangjun Jiang
Fangjun Jiang el 20 de En. de 2023
First, "d" is not a parameter. You need to change it to be a "local data" and give an initial value, e.g. 0.
The error message regarding "default transition" is puzzling. To me, it seems to be a new type of error related to a "default transition". My guess is this. The chart contains states, thus it is a "state chart", not a pure "flow chart". The "default transition" has to be guaranteed to reach a state. Your logic has various conditions and it is not guaranteed, thus the error.
The easiest fix is to insert a blank state between your default transion and your top junction. The model then simulates. Obviously, this blank state is reduntant. You might want to change your implementation. For example, move the condition for "Bat_cur" outside of the chart.
One more improvement, there is no need to fill the "[Bat_vol>=Bat_vol_max]" condition. Leave it empty.
You don't need to write this code
if a>0
...
elseif a<=0
...
end
Instead, you can write
if a>0
...
else
...
end

Más respuestas (0)

Categorías

Más información sobre Complex Logic en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by