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
ICmpEventCallbackmit der MethodeEventCallback. Nachdem der Funktionsbaustein erstellt wurde, wird die MethodeEventCallbackund die EreignisseStartundStopin der MethodeFB_Initregistriert. Wenn der Funktionsbaustein gelöscht wird, wird die MethodeFB_Exitaufgerufen, 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
EventCallbackFunctionabgefangen 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