Simulink if/else block

8 views (last 30 days)
Steven on 23 Nov 2011
I'm looking for the right way to set a conditional statement in Simulink. That's the pseudo-code I wish to have:
if x < 6
y = 0
elseif x > 20
y = 2
y = 1
The block if is not really what I'm looking for, I just want a small controller with one input (x) and one output (y).

Accepted Answer

Steven on 8 Dec 2011
the block I was looking for was index vector

More Answers (1)

Kaustubha Govind
Kaustubha Govind on 23 Nov 2011
There's at least two ways that I can think of:
  1. Use a 1-D Lookup Table with [0 1 1 2] as the table data and [6-eps 6 20 20+eps] as the breakpoints
  2. Use a combination of Logic and Bit Operations (Compare to Constant and AND blocks).
  1 Comment
Steven on 24 Nov 2011
but all logical block send 0 or 1 as output. What's the block to use to take some value if 0, some other if 1

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!