vector if statement in stateflow

1 view (last 30 days)
Luhur
Luhur on 1 Jun 2011
Hi
i just wanna ask,I wan't to make an if statement from vector data, let say vector(1x20) in stateflow, for example if the value vector(1 to 10) > 100 then y=2000 and vector(10 to 20) > 100 then y=4000 ,, so the input is vector from simulink,, can i??? how was the script on stateflow?? or any suggestion???
thanks

Accepted Answer

Luhur
Luhur on 2 Jun 2011
i have found the problem, correct me if it were wrong, its enough to wrote it like this:
condition: [V[0]>100 && V[9]>100] action: {y=2000;}

More Answers (1)

Fangjun Jiang
Fangjun Jiang on 1 Jun 2011
You can use Stateflow to construct a simple flow chart to do that. I assume you know Stateflow "transition", "condition", "action", etc.
condition: [V[0]>100 && V[1]>100 && ... && V[9]>100]
action: {y=2000;}
You see this is rather tedious. I suggest you not to do it using Stateflow. You can do it using the Matlab function block combined with a switch block. Use the Matlab function block to check the condition.
double(all(u(1:10)>100))
  2 Comments
Luhur
Luhur on 2 Jun 2011
why my stateflow always said syntax error and its pointed (^)to the end of syntax?? ex: [V[0]>100 && V[1]>100 && ... && V[9]>100]{y=2000;}
_____________________________^
if we talking about tedious, which one more faster acording to matlab run the block??? asume we have a lot of statement like this
Luhur
Luhur on 3 Jun 2011
anyway,, thanks Fangjun Jiang... :)

Sign in to comment.

Categories

Find more on Complex Logic in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!