FUNCTION_BLOCK FB_PN_ALARM_DIAG
Mit diesem Funktionsbaustein können Diagnose Alarme ausgelesen werden. Jede Instanz dieses Bausteins stellt einen PLC-Eingang ("PnIoBoxDiag") zur Verfügung. Dieser Eingang ist mit dem "PnIoBoxDiag" Eingang des Gerätes zu verknüpfen, welches ausgewertet werden soll. Nach erfolgreichem Auslesen der Diagnose Alarme / Warnungen, wird der Alarm-Status des Gerätes wieder zurückgesetzt. Der Baustein muss für jedes PROFINET-Gerät einmal aufgerufen werden. Ein Laufindex (iNrAlarms) gibt an, wie viele Diganosealarme aus dem Puffer gelesen wurden.
VAR_INPUT
VAR_INPUT
bEnable : BOOL;
NETID : T_AmsNetId;(* AMS Net ID from Controller *)
PORT : T_AmsPort; (* Port used by Controller to communicate with Device *)
END_VAR
bEnable: Aktivierung des Bausteins
NETID: AMS Net ID des Controllers
PORT: Port, über den der Controller mit dem Gerät kommuniziert (Port = Device ID + 1000 hex)
VAR_OUTPUT
VAR_OUTPUT
bBusy : BOOL;
stAlarmDiagData : ST_PN_AlarmDiagData;
bError : BOOL;
iErrorID : UDINT;
iNrAlarms : INT;
END_VAR
bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen.
stAlarmDiagData: Über diese Struktur werden Diagnose Messages ausgegeben. Solange das StausBit [0x0010 = At least one AlarmCR got a diagnosis alarm] am PLC Eingang ansteht, wird in jedem Zyklus ein Alarm über die Struktur ausgegeben.
bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.
iErrorID: Liefert bei einem gesetzten bError-Ausgang eine ADS Fehlernummer.
iNrAlarms: Anzahl der zuletzt ausgelesenen Alarme.
VAR
VAR
PnIoBoxDiag AT %I* : WORD; (*Hardware Input*)
END_VAR
PnIoBoxDiag : Hardware-Eingang. Diese Variable ist mit dem PROFINET-Gerät zu verknüpfen. Über eine Statusänderung dieser Variable wird dem SPS Programm mitgeteilt, dass neue Alarm Diagnose in dem verknüpften PROFINET-Gerät anstehen.
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
TwinCAT v2.11.0 R3 | PC or CX (x86, ARM) | TcProfinetDiag.Lib |