SEL

Der IEC-Operator dient der bitweisen Auswahl.

Syntax:

OUT := SEL(G, IN0, IN1) bedeutet:

OUT := IN0; wenn G = FALSE

OUT := IN1; wenn G = TRUE

Erlaubte Datentypen:

IN0, ..., INn und OUT: Beliebiger, identischer Datentyp. Achten Sie speziell bei der Verwendung von benutzerdefinierten Datentypen darauf, dass an allen drei Positionen Variablen mit identischem Typ verwendet werden. Der Compiler prüft die Typgleichheit und gibt Übersetzungsfehler aus. Insbesondere die Zuweisung von Instanzen eines Funktionsbausteins an Schnittstellen(variablen) wird nicht unterstützt.

G: BOOL

SEL 1:

TwinCAT berechnet einen Ausdruck, der IN0 vorgeschaltet ist, nicht, wenn G = TRUE. TwinCAT berechnet einen Ausdruck, der IN1 vorgeschaltet ist, nicht, wenn G = FALSE.

Bei grafischen Programmiersprachen werden unabhängig vom Eingang G die Ausdrücke an IN0 und IN1 berechnet, wenn ein Baustein, ein Sprung, ein Return, eine Leitungsverzweigung oder eine Flankenerkennung vorgeschaltet ist.

Beispiele:

ST:

nVar1 := SEL(TRUE,3,4); (*Result: 4*) 

FUP:

SEL 2: