Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
13
Добавлен:
11.10.2020
Размер:
3.68 Mб
Скачать

314 Die IEC Operatoren

Auswahloperatoren

Beispiel in FUP:

Beispiel in AWL:

LD 16#45

SHL 2

ST erg_byte

12.5 Auswahloperatoren

Sämtliche Auswahloperationen lassen sich auch auf Variablen durchführen. Wegen der besseren Anschaulichkeit beschränken wir uns in den folgenden Beispielen auf Konstanten als Operatoren.

12.5.1SEL

Binäre Selektion.

OUT := SEL(G, IN0, IN1)

bedeutet:

OUT := IN0 if G=FALSE;

OUT := IN1 if G=TRUE.

IN0, IN1 und OUT können jeden Typ haben, G muß vom Typ BOOL sein. Das Ergebnis der Selektion ist IN0, wenn G FALSE ist, bzw. IN1, wenn G TRUE ist.

Beispiel in AWL:

LD TRUE

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32

Die IEC Operatoren

315

Auswahloperatoren

 

 

 

SEL

3,4

(* IN0 = 3, IN1 =4 *)

ST

Var1

(* Ergebnis ist

4

*)

LD

FALSE

 

 

 

SEL

3,4

 

 

 

ST

Var1

(* Ergebnis ist

3

*)

Beispiel in ST:

Var1:=SEL(TRUE,3,4); (* Ergebnis für Var1 ist 4 *)

Beispiel in FUP:

Hinweis:

Zum Zweck der Laufzeitoptimierung wird folgendermaßen abgearbeitet: Ein Ausdruck, der IN0 vorgeschaltet ist, wird nur dann berechnet, wenn G FALSE ist. Ein Ausdruck der IN1 vorgeschaltet ist, wird nur dann berechnet, wenn G TRUE ist !

In der Simulation dagegen werden alle Zweige berechnet.

12.5.2MAX

Maximumsfunktion. Liefert von zwei Werten den größten.

OUT := MAX(IN0, IN1)

IN0, IN1 und OUT können von beliebigem Typ sein.

Beispiel in AWL:

LD

90

MAX

30

MAX

40

MAX

77

ST

Var1 (* Ergebnis ist 90 *)

Beispiel in ST:

Var1:=MAX(30,40); (* Ergebnis ist 40 *)

Var1:=MAX(40,MAX(90,30)); (* Ergebnis ist 90 *)

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32

316 Die IEC Operatoren

Auswahloperatoren

Beispiel in FUP:

12.5.3MIN

Minimumsfunktion. Liefert von zwei Werten den kleinsten.

OUT := MIN(IN0, IN1)

IN0, IN1 und OUT können von beliebigem Typ sein.

Beispiel in AWL:

LD

90

MIN

30

MIN

40

MIN

77

ST

Var1 (* Ergebnis ist 30 *)

Beispiel in ST:

Var1:=MIN(90,30); (* Ergebnis ist 30 *);

Var1:=MIN(MIN(90,30),40); (* Ergebnis ist 30 *);

Beispiel in FUP:

12.5.4LIMIT

Limitierung

OUT := LIMIT(Min, IN, Max) bedeutet:

OUT := MIN (MAX (IN, Min), Max)

Max ist die obere, Min die untere Schranke für das Ergebnis. Wenn der Wert IN die obere Grenze Max überschreitet, dann liefert LIMIT Max. Wenn IN Min unterschreitet, dann ist das Ergebnis Min.

IN und OUT können von beliebigem Typ sein.

Beispiel in AWL:

LD 90

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32

Соседние файлы в папке 759-332