LGF_ActDeactDevice
implementiert eine kompakte State Maschine zur Aktivierung und Überwachung bzw. Deaktivierung von dezentralen Geräten.
Das Modul überwacht auch die Geräteverbindung und den Fehlerzustand nach der Aktivierung.
Es funktioniert für PN (S7-1200 / S7-1500) und DP (S7-1500) Geräte.
LGF_ActDeactDevice (FB) | ||||||||
---|---|---|---|---|---|---|---|---|
Bool | enable | valid | Bool | |||||
Bool | activate | busy | Bool | |||||
Bool | deactivate | error | Bool | |||||
HW_DEVICE | hwId | status | Word | |||||
LGF_typeActDeactDeviceParameter | parameter | activating | Bool | |||||
isActivated | Bool | |||||||
deactivating | Bool | |||||||
isDeactivated | Bool | |||||||
deviceStateOK | Bool | |||||||
diagnostics | LGF_typeDiagnostics | |||||||
Bezeichner | Datentyp | Default Wert | Beschreibung |
---|---|---|---|
enable | Bool | FALSE | TRUE: Aktiviert die Funktionalität des FB |
activate | Bool | FALSE | Steigende Flanke: Aktivieren des Gerätes angegeben `hwId` |
deactivate | Bool | FALSE | Steigende Flanke: Deaktivieren des Gerätes angegeben `hwId` |
hwId | HW_DEVICE | --- | Hardware-ID des Geräts, das aktiviert/deaktiviert werden soll (`Device~PnIf~IODevice`) |
parameter | LGF_typeActDeactDeviceParameter | --- | Parameterdatensatz für die Funktion `LGF_ActDeactDevice` |
Bezeichner | Datentyp | Beschreibung |
---|---|---|
valid | Bool | TRUE: Ausgabewerte am FB gültig |
busy | Bool | TRUE: FB ist aktiv und neue Ausgabewerte können erwartet werden. |
error | Bool | FALSE: Kein Fehler / TRUE: Während der Ausführung des FB ist ein Fehler aufgetreten |
status | Word | 16#0000-16#7FFF: Status des FB / 16#8000-16#FFFF: Fehleridentifikation (siehe folgende Tabelle) |
activating | Bool | TRUE: Aktivierung des Geräts aktiv |
isActivated | Bool | TRUE: Gerät aktiviert |
deactivating | Bool | TRUE: Deaktivierung des Gerätes aktiv |
isDeactivated | Bool | TRUE: Gerät deaktiviert |
deviceStateOK | Bool | TRUE: Gerät ist aktiviert und mit dem IO-System verbunden FALSE: Gerät ist defekt oder nicht verbunden, abhängig von `isActivated` |
diagnostics | LGF_typeDiagnostics | Diagnosestruktur zur Speicherung und Übertragung von Diagnoseinformationen von Blöcken über die Schnittstelle. |
Code / Wert | Bezeichner / Beschreibung |
---|---|
16#7000 | STATUS_NO_CALL Kein Auftrag wird gerade bearbeitet |
16#7001 | STATUS_FIRST_CALL Erster Aufruf nach eingehendem neuem Auftrag (steigende Flanke 'Freigabe') |
16#7002 | STATUS_SUBSEQUENT_CALL Folgeanruf bei aktiver Bearbeitung ohne weitere Angaben |
16#8600 | ERR_UNDEFINED_STATE Fehler: Aufgrund eines undefinierten Zustands im Zustandsautomaten |
16#8601 | ERR_LOG2GEO Fehler: Log2Geo, möglicherweise ist die HW ID für das Gerät falsch, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8601 | ERR_GEO2LOG Fehler: Geo2Log, möglicherweise ist die HW-ID für das Gerät falsch, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8640 | ERR_DEVICE_DEACTIVATING Fehler: Deaktivierung `D_ACT_DP` des Geräts, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8641 | ERR_DEVICE_DEACTIVATING_TIME_OUT Fehler: Deaktivierung des Gerätes - Watchdog-Timer abgelaufen |
16#8650 | ERR_READ_ACTIVATION_STATE_WHILE_DEACTIVATED Fehler: Deaktivierungsstatus (D_ACT_DP) des Geräts ist falsch, gewünscht ist `16#0000` oder `16#0002`, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8660 | ERR_DEVICE_ACTIVATING Fehler: Aktivierung `D_ACT_DP` des Geräts, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8661 | ERR_DEVICE_ACTIVATING_TIME_OUT Fehler: Aktivierung des Geräts - Watchdog-Timer abgelaufen. Kann eine unterbrochene Geräteverbindung sein |
16#8662 | ERR_READ_DEVICES_STATES_DURING_ACTIVATION Fehler: Read Device States (DeviceStates) während der aktivierung des Gerätes, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8670 | ERR_READ_DEVICES_STATES_WHILE_ACTIVE Fehler: Read Device States (DeviceStates) während das Gerät aktiv ist, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8671 | ERR_DEVICE_STATE_WHILE_ACTIVE Fehler: Gerät meldet vorliegenden Fehler und ist unerreichbar, fehlerhaftes Gerät oder IO-System |
16#8672 | ERR_READ_ACTIVATION_STATE_WHILE_ACTIVE Fehler: Aktivierungsstatus (D_ACT_DP) des Geräts ist falsch, gewünscht ist `16#0000` oder `16#0001`, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8690 | ERR_DISABLING_DEACT_DEVICE Fehler: Deaktivierung `D_ACT_DP` des Geräts führt zu einem Fehler bei der Deaktivierung, siehe `diagnostics.subFunctionStatus` für weitere Informationen |
16#8691 | ERR_DISABLING_WATCHDOG Fehler: Watchdog-Timer beim Deaktivieren abgelaufen |
Dieser UDT gehört zum Modul LGF_ActDeactDevice
und listet alle möglichen Parameter zur Konfiguration des Verhaltens auf.
Bezeichner | Datentyp | Default Wert | Beschreibung |
---|---|---|---|
timeOutActDeact | Time | T#2500ms | Die Zeit für die Überwachung der Befehle `activate` und `deactivate` sollte größer sein als die in der Hardwarekonfiguration der SPS im Abschnitt `Startup` eingestellte `Parametrierungszeit`. |
timeOutStateMonitoring | Time | T#100ms | Zeit zur Überwachung des Gerätezustandes bei aktiviertem Gerät Nach Ablauf der Zeit liegt ein Fehler vor, solange der Zustand fehlerhaft ist. |
enableAndDeactivate | Bool | TRUE | TRUE: Deaktivierung des Geräts während des Starts / der Aktivierung (vor `enableAndActive`) FALSE: Beibehaltung des aktuellen Zustands oder `enableAndActivate` |
enableAndActivate | Bool | FALSE | TRUE: Freigabe / Aktivierung des Geräts während des Starts / der Freigabe FALSE: Beibehaltung des aktuellen Zustands oder `enableAndDeactivate` |
disableAndDeactivate | Bool | TRUE | TRUE: Gerät beim Ausschalten des Moduls deaktivieren/deaktivieren FALSE: aktuellen Zustand beibehalten |
Diagnosestruktur zur Speicherung und Übertragung von Diagnoseinformationen von Blöcken über die Schnittstelle.
Bezeichner | Datentyp | Default Wert | Beschreibung |
---|---|---|---|
status | Word | 16#0000 | Status des Bausteins oder Fehleridentifikation beim Auftreten des Fehlers |
subfunctionStatus | Word | 16#0000 | Status oder Rückgabewert von aufgerufenen FB's, FC's und Systembausteinen |
stateNumber | DInt | 0 | Zustand in der Zustandsmaschine des Blocks, in dem der Fehler aufgetreten ist |
Das Modul stellt den Ablauf zum Ablauf zum Aktivieren und Deaktivieren von dezentralen IO-Devices im Profinet (PN, S7-1500 & S7-1200) sowie im Profibus (DP, S7-1500) Netzwerk zur Verfügung.
Das Aktivieren des Gerätes (definiert an hwId
) wird durch eine steigende Flanke an activate
eingeleitet, nach vollständiger Aktivierung wir dieses am Ausgang isActivated
und deviceStateOK
angezeigt. Danach wird am Ausgang deviceStateOK
der Verbindungsstatus angezeigt.
Die Verbindung wird überwacht und bei einem Ausfall dieser von mehr als der eingestellten Überwachungszeit timeOutStateMonitoring
am Ausgang und als Fehler gemeldet. Nach erfolgreicher Wiederherstellung der Verbindung durch das System wird ebenfalls die konfigurierte Zeit gewartet bis der Fehler zurückgesetzt wird zum Sicherstellen der Stabilität.
Dezentrale Peripherie
angezeigt werden, wenn sie mit dem Engineering System online sind.Das Deaktivieren des Gerätes (definiert an hwId
) wird durch eine steigende Flanke an deactivate
eingeleitet, nach vollständiger Aktivierung wir dieses am Ausgang isDeactivated
angezeigt.
Es ist möglich die Zustände für das Ein- sowie Ausschalten zu definieren, sowie die Überwachungszeiten zum Aktivieren und Deaktivieren sowie der Verbindungsüberwachung.
Alle Fehler werden automatisch zurück gesetzt sobald der fehlerhafte Zustand behoben ist.
Die Ausnahme hierzu stellen Fehler dar, welche nur durch einen Eingriff in die Software behoben werden können, wie zum Beispiel eine falsche oder nicht vorhandene Hardware ID eines nicht vorhanden dezentralen IO Devices.
timeOutActDeact
zur Überwachung der Aktivierungs- und Deaktivierungssequenz sollte immer größer eingestellt werden als der Parametrierte Wert in der Gerätekonfiguration
/ Anlauf
/ Parametrierungszeit
.Version & Datum | Änderungsbeschreibung | |
---|---|---|
01.00.00 | Simatic Systems Support | |
06.04.2023 | First released version |