FB_KL8528Ex

FB_KL8528Ex 1:
Funktionsbaustein FB_KL8528Ex

Anwendung

Dieser Baustein dient zum Konfigurieren der KL8528, zum Auslesen der digitalen Signale und zum Setzen der Ausgänge/ LEDs.

Der Baustein muss einmal pro Zyklus aufgerufen werden.

Mit einer positiven Flanke von bExecCfg werden die Parameter zur Klemme übertragen.

Die Variable byDisCh schaltet die Standardfunktion der LEDs aus. Die LEDs können jetzt unabhängig vom digitalen Eingangssignal über die PLC geschaltet werden, mit den Variablen byLEDGn oder byLEDYe. Hier kann jede LED einzeln verändert werden.

Mit byKBusOff kann bei K-Bus Fehler (oder Plc gestoppt) und Schalterstellung "auto" der jeweilige Ausgang auf "TRUE" gesetzt werden. Bit 0..7 für die Ausgänge 1..8. Ist das Flag in byKBusOff nicht gesetzt geht der Ausgang bei K-Bus Fehler (oder PLC gestoppt) auf "FALSE".

VAR_INPUT

bEn           : BOOL;
bExecCfg      : BOOL;
byDisCh       : BYTE;
byKBusOff     : BYTE;
byOut         : BYTE;
byLEDGn       : BYTE;
byLEDYe       : BYTE;
bDisManMode   : BOOL;
dwOpt         : DWORD;

bEn: Mit bEn = TRUE wird der Baustein vom SPS-Programm freigegeben. Mit bEn = FALSE wird die Abarbeitung des Bausteins gestoppt und alle Ausgänge werden zurückgesetzt.

bExecCfg: Die Konfigurationen byDisCh und byKBusOff werden auf positiver Flanke in die Klemmen geschrieben. bBusy wird TRUE. Es ist zu beachten, dass in dieser Zeit die Ein-/Ausgänge nicht aktualisiert werden.

byDisCh: Konfiguration: Abwahl der Standardfunktion der LEDs. Die LEDs können von der Plc gesetzt werden. Bit 0 = LED 1, ... , Bit 7 = LED 8. Mit 255dez (FFhex) wird bei allen LEDs die Standardfunktion deaktiviert. Diese können dann über byLEDGn oder byLEDYe von der Plc aus gesetzt werden.

byKBusOff: Konfiguration: Reaktion der Ausgänge bei K-Bus Fehler. Mit Bit 0 = Ausgang 1, ... , Bit 7 =Ausgang 8 wird im K-Bus Fehlerfall (oder PLC gestoppt) der jeweilige Ausgang gesetzt, vorausgesetzt, der Schalter steht auf "auto".

byOut: Bit 0 = true, ... , Bit 7 = true setzt den jeweiligen Ausgang, vorausgesetzt, der Schalter steht auf "auto". Mit 255dez (FFhex) werden alle Ausgänge gesetzt. Für die grafischen Programmiersprachen steht der Baustein FB_KL85xx8BitToByte zum Aufbereiten der Signale zur Verfügung.

byLEDGn: Bit 0 = true, ... , Bit 7 = true setzt die grünen LEDs, vorausgesetzt, die Standardfunktion der LEDs wurde mit byDisCh abgewählt. Mit 255dez (FFhex) werden alle grünen LEDs gesetzt. Für die grafischen Programmiersprachen steht der Baustein FB_KL85xx8BitToByte zum Aufbereiten der Signale zur Verfügung.

byLEDYe: Bit 0 = true, ... , Bit 7 = true setzt die gelben LEDs, vorausgesetzt, die Standardfunktion der LEDs wurde mit byDisCh abgewählt. Mit 255dez (FFhex) werden alle gelben LEDs gesetzt. Für die grafischen Programmiersprachen steht der Baustein FB_KL85xx8BitToByte zum Aufbereiten der Signale zur Verfügung.

bDisManMode: Sperren des Handbedienmodus.

dwOpt: Für zukünftige Optionen.

VAR_OUPUT

bBusy           : BOOL;
byStaSwiAuto    : BYTE;
byStatOut       : BYTE;
bManModelsDis   : BOOL;
wFirmVer        : WORD;
bErr            : BOOL;
udiErrID        : UDINT;

bBusy: bBusy ist TRUE, solange die Konfiguration geschrieben wird (Start mit bExecCfg). Es ist zu beachten, dass in dieser Zeit die Eingänge nicht aktualisiert werden.

byStaSwiAuto: Status der Schalter "auto". Bit 0 = Schalter 1, ... , Bit 7 Schalter 8. Für die grafischen Programmiersprachen steht der Baustein FB_KL85xxByteTo8Bit zum Aufbereiten der Signale zur Verfügung.

byStatOut: Status der digitalen Ausgangssignale. Bit 0 = Ausgang 1, ... , Bit 7 Ausgang 8. Für die grafischen Programmiersprachen steht der Baustein FB_KL85xxByteTo8Bit zum Aufbereiten der Signale zur Verfügung.

bManModelsDis: Handbedienmodus gesperrt.

wFirmVer: Gibt die Firmware Version aus.

bErr: Der bErr Ausgang wird TRUE sobald ein Fehler auftritt. Dieser Fehler wird über die Variable udiErrID beschrieben.

udiErrID: Der Ausgang gibt im Fehlerfall einen Fehlercode aus (siehe Fehlercodes). Gleichzeitig wird bError TRUE.

VAR_IN_OUT

stInData      : ST_KL8528InData;
stOutData     : ST_KL8528OutData;

stInData: Prozessabbild der Eingänge (siehe ST_KL8528InData).

stOutData: Prozessabbild der Ausgänge (siehe ST_KL8528OutData).