FB_BA_PrioSwi_XX

Die Prioritätenschalter existieren für verschiedene Variablentypen ( BOOL, INT, LREAL, REAL, USINT, UINT, UDINT und DINT) und in verschiedenen Ausgangsgrößen (4, 8, 12 und 16 bzw. 24), haben jedoch alle die gleiche Funktionalität.
Exemplarisch wird hier der Funktionsbaustein FB_BA_PrioSwi_LR08 beschrieben.
Zur Selektion verschiedener Werte stehen Prioritätenschalter zur Verfügung. Zum Ausgang fVal wird derjenige Wert mit der höchsten Priorität durchgeschaltet dessen Eingang bEnxx TRUE ist.
Beispiel:
Eingänge | Ausgänge | ||||
---|---|---|---|---|---|
bEn01 | FALSE |
| bQ | TRUE |
|
fVal01 |
| 32.5 | fVal |
| 5.84 |
bEn02 | FALSE |
| nActvPrio |
| 3 |
fVal02 |
| 17.4 |
|
|
|
bEn03 | TRUE |
|
|
|
|
fVal03 |
| 5.84 |
|
|
|
bEn04 | TRUE |
|
|
|
|
fVal04 |
| 9.56 |
|
|
|
bEn05 | FALSE |
|
|
|
|
fVal05 |
| 16.5 |
|
|
|
bEn06 | TRUE |
|
|
|
|
fVal06 |
| 32.781 |
|
|
|
bEn07 | FALSE |
|
|
|
|
fVal07 |
| 25.4 |
|
|
|
bEn08 | TRUE |
|
|
|
|
fVal08 |
| 44.5 |
|
|
|
Ist keine der Prioritäten freigegeben, so fällt der Ausgang bQ auf FALSE. An den Ausgängen fVal und nActvPrio wird jeweils 0 ausgegeben. Bei einem booleschen Prioritätenschalter wird an dem Ausgang bVal dann FALSE ausgegeben.
Eingänge | Ausgänge | ||||
---|---|---|---|---|---|
bEn01 | FALSE |
| bQ | FALSE |
|
fVal01 |
| 32.5 | fVal |
| 0.0 |
bEn02 | FALSE |
| nActvPrio |
| 0 |
fVal02 |
| 17.4 |
|
|
|
bEn03 | FALSE |
|
|
|
|
fVal03 |
| 5.84 |
|
|
|
bEn04 | FALSE |
|
|
|
|
fVal04 |
| 9.56 |
|
|
|
bEn05 | FALSE |
|
|
|
|
fVal05 |
| 16.5 |
|
|
|
bEn06 | FALSE |
|
|
|
|
fVal06 |
| 32.781 |
|
|
|
bEn07 | FALSE |
|
|
|
|
fVal07 |
| 25.4 |
|
|
|
bEn08 | FALSE |
|
|
|
|
fVal08 |
| 44.5 |
|
|
|
Wenn keine aktive Priorität ansteht, dann wird am Ausgang nActvPrio der Wert der globalen Konstanten nNoActivePrio ausgegeben.
Eingänge
VAR_INPUT
bEn01 : BOOL;
fVal01 : LREAL;
bEn02 : BOOL;
fVal02 : LREAL;
bEn03 : BOOL;
fVal03 : LREAL;
bEn04 : BOOL;
fVal04 : LREAL;
bEn05 : BOOL;
fVal05 : LREAL;
bEn06 : BOOL;
fVal06 : LREAL;
bEn07 : BOOL;
fVal07 : LREAL;
bEn08 : BOOL;
fVal08 : LREAL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bEn01...bEn08 | BOOL | Freigabe des Prioritätswertes |
fVal01...fVal08 | LREAL | Prioritätswert |
Ausgänge
VAR_OUTPUT
bQ : BOOL;
fVal : LREAL;
nActvPrio : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bQ | BOOL | Ausgabe, ob überhaupt eine Priorität freigegeben ist. |
fVal | LREAL | Ausgabe des Wertes der aktuellen (höchsten) Priorität, die freigegeben ist. |
nActvPrio | UDINT | Aktuelle (höchste) Priorität, die freigegeben ist. |
Voraussetzungen
Entwicklungsumgebung | Erforderliche SPS-Bibliothek |
---|---|
TwinCAT ab v3.1.4024.22 | Tc3_BA2 ab v5.2.5.0 |