Beispiel: Event Manager
Produkt: CODESYS Control
Dieses Beispiel zeigt, wie Sie Systemereignisse wie Start, Stop, Login oder Logout empfangen und senden können.
Beschreibung
Es gibt zwei Arten der Registrierung. Die eine ist die Registrierung einer Schnittstellenfunktion und die andere ist die Registrierung einer normalen Funktion. Die Registrierung erfolgt innerhalb der Methode FB_Init
.
EventCallbackFB
:Der Funktionsbaustein implementiert die Schnittstelle
ICmpEventCallback
mit der MethodeEventCallback
. Nachdem der Funktionsbaustein erstellt wurde, wird die MethodeEventCallback
und die EreignisseStart
undStop
in der MethodeFB_Init
registriert. Wenn der Funktionsbaustein gelöscht wird, wird die MethodeFB_Exit
aufgerufen, die die Registrierung des Ereignisses aufhebt. Wenn das Stop-Ereignis eintritt, speichert die Methode die Ursache des Ereignisses in der Variableng_ulStopReason
.EventCallbackFunctionFB
:Dieser Funktionsbaustein registriert Login- und Logout-Ereignisse mit der Funktion
EventCallbackFunction
. Jedes Mal, wenn eines der beiden Ereignisse eintritt, wird die Funktion aufgerufen.EventCallbackFunction
:Die Funktion zählt die aufgetretenen Ereignisse.
Main
:In dem Programm wird manuell ein Logout-Ereignis erzeugt. Dieses Ereignis wird ebenfalls von der Funktion
EventCallbackFunction
abgefangen und erhöht den Zähler um eins.
Systemvoraussetzungen und Einschränkungen
Programmiersystem | CODESYS Development System Version 3.5.14.0 oder höher |
Laufzeitsystem | CODESYS Control Win Version 3.5.14.0 |
Zusatzkomponenten | - |
Hinweis
DOWNLOAD Projekt