stateflow "if else if else" structure not working properly

18 views (last 30 days)
hi,
I am trying to make a stateflow chart using the if-else-if-else pattern in the tool panel but somehow the conditions aren't followed and it keeps executing the first condition's action even if the that ain't true.
how can I make it consider other conditions as well?
below attached is the screenshot of the same
the output is always "snow and haze" even if the input changes.

Accepted Answer

Les Beckham
Les Beckham on 22 May 2024
Edited: Les Beckham on 22 May 2024
I don't have access to Stateflow so I can't test this, but I know that the compound comparisons that you have shown are not allowed in Matlab, so I suspect that they aren't allowed in Stateflow either. The comparisons have to be done separately, then anded together. So, for example, change 0.90 < y < 0.91 to 0.90 < y & y < 0.91.
An example of why this might not be working for you, using Matlab code:
y = 0.1;
tf = 0.9 < y < 0.91
tf = logical
1
tf2 = 0.9 < y & y < 0.91
tf2 = logical
0

More Answers (0)

Categories

Find more on Simulink Functions in Help Center and File Exchange

Products


Release

R2024a

Community Treasure Hunt

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

Start Hunting!