FB_BA_LightingTgmSel8 / FB_BA_LightingTgmSel4

Die Funktion der Bausteine ist stellvertretend am FB_BA_LightingTgmSel8 erläutert
Die Funktionsbausteine dienen zur Prioritätssteuerung für bis zu 4 bzw. bis zu 8 Lichtsteuertelegramme (stLighting_Prio1 … stLighting_Prio4, bzw. stLighting_Prio1 … stLighting_Prio8) des Typs ST_BA_Lighting.
Das aktive Telegramm der höchsten Priorität wird am Ausgang stLighting ausgegeben. "Aktiv" bedeutet, dass innerhalb der Struktur des Positioniertelegramms die Variable bActv gesetzt ist. Die Priorität ist dabei innerhalb der Telegrammstruktur als ePrio hinterlegt, wobei die Priorität als höher gilt, je geringer der Wert von ePrio ist.
Bei Telegrammen gleicher Priorität gilt das zuletzt veränderte (last writer wins), ermittelt durch die Variable nEvtInc.
Dieser Baustein ist so zu programmieren, dass immer eines der angelegten Telegramme aktiv ist. Falls ein Telegramm nicht aktiv ist, wird am Ausgang ein Leertelegramm ausgegeben, d.h. fLgtVal = 0, fLgtT = 0, bDimUp = FALSE, bDimDwn = FALSE, bDimMod = FALSE, bActv = FALSE.
Eingänge
VAR_INPUT
stLightingTgm_1 : ST_BA_Lighting;
stLightingTgm_2 : ST_BA_Lighting;
stLightingTgm_3 : ST_BA_Lighting;
stLightingTgm_4 : ST_BA_Lighting;
stLightingTgm_5 : ST_BA_Lighting;
stLightingTgm_6 : ST_BA_Lighting;
stLightingTgm_7 : ST_BA_Lighting;
stLightingTgm_8 : ST_BA_Lighting;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
stLightingTgm_N | Telegrammeingänge |
Ausgänge
VAR_OUTPUT
stLighting : ST_BA_Lighting;
nNumActvTgm : UINT;
ePrioActvTgm : E_BA_LightingPrio;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
stLighting | Resulierendes Telegramm | |
nNumActvTgm | UINT | Zeigt an, welcher Eingang resultiert, wenn z.B. stLightingTgm_3 durchgereicht wird, ist nNumActvTgm = 3. Ist nNumActvTgm = 0, so ist kein Telegramm aktiv. |
ePrioActvTgm | Dieser Ausgang gibt die Priorität des aktiven Telegrammes an. |
Voraussetzungen
Entwicklungsumgebung | Erforderliche SPS-Bibliothek |
---|---|
TwinCAT ab v3.1.4024.22 | Tc3_BA2 ab v5.2.5.0 |