Simulink if/else block

4 visualizzazioni (ultimi 30 giorni)
Steven
Steven il 23 Nov 2011
Hi,
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
else
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).
thx

Risposta accettata

Steven
Steven il 8 Dic 2011
the block I was looking for was index vector

Più risposte (1)

Kaustubha Govind
Kaustubha Govind il 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 Commento
Steven
Steven il 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

Accedi per commentare.

Categorie

Scopri di più su Simulink Functions in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by