Zum Inhalt

EC_SET_EVT

EC_SET_EVT


Einleitung

Der EC_SET_EVT Funktionsblock dient zum Setzen von Ereignis-Ein- oder -Ausgängen einer Funktionsblock-Instanz. Er ermöglicht die gezielte Auslösung von Ereignissen in anderen Funktionsblöcken und kann beispielsweise als Ereignis-Sniffer eingesetzt werden. Der Baustein gehört zur Kategorie der Rekonfigurationsdienste gemäß IEC 61499-1 Standard.

EC_SET_EVT

Schnittstellenstruktur

Ereignis-Eingänge

  • REQ: Service-Anfrage - löst die Ausführung des Setzvorgangs aus

Ereignis-Ausgänge

  • CNF: Bestätigung der angeforderten Service-Operation

Daten-Eingänge

  • QI (BOOL): Ereignis-Eingangs-Qualifier - aktiviert/deaktiviert den Service
  • FB_NAME (WSTRING): Name der Funktionsblock-Instanz
  • FB_EVENT_IO (WSTRING): Name des zu setzenden Ereignisses
  • DST (WSTRING): Zielort, an dem das Ereignis gesetzt werden soll (Syntax: ResourceName)

Daten-Ausgänge

  • QO (BOOL): Ereignis-Ausgangs-Qualifier - zeigt den Status der Service-Ausführung
  • STATUS (WSTRING): Service-Status (RDY, NO_SUCH_OBJECT, INVALID_STATE)

Adapter

Keine Adapter-Schnittstellen vorhanden.

Funktionsweise

Der EC_SET_EVT Funktionsblock empfängt über das REQ-Ereignis eine Anfrage zum Setzen eines spezifischen Ereignisses in einer anderen Funktionsblock-Instanz. Über die Eingangsdaten werden die Ziel-Funktionsblock-Instanz (FB_NAME), das zu setzende Ereignis (FB_EVENT_IO) und der Zielort (DST) spezifiziert. Nach erfolgreicher Ausführung wird das CNF-Ereignis mit entsprechendem Status zurückgemeldet.

Technische Besonderheiten

  • Implementierung in C++ für GCC-Compiler ab Version 3.0
  • Unterstützt Wide-String-Datentypen für internationale Zeichensätze
  • Bietet detaillierte Statusrückmeldungen für Fehlerdiagnose
  • Arbeitet als Rekonfigurationsdienst zwischen Anwendung und Ressource

Zustandsübersicht

Der Funktionsblock unterstützt mehrere Service-Sequenzen: - normal_establishment: Erfolgreiche Initialisierung - unsuccessful_establishment: Fehlgeschlagene Initialisierung - request_confirm: Erfolgreiche Service-Ausführung - request_inhibited: Unterdrückte Service-Anfrage - request_error: Fehlerhafte Service-Ausführung - application_initiated_termination: Anwendungsseitige Beendigung - resource_initiated_termination: Ressourcenseitige Beendigung

Anwendungsszenarien

  • Debugging und Monitoring von Ereignisflüssen
  • Automatisierte Testumgebungen
  • Dynamische Rekonfiguration von Steuerungssystemen
  • Ereignis-basierte Diagnosefunktionen
  • Simulation von externen Ereignissen

⚖️ Vergleich mit ähnlichen Bausteinen

Im Vergleich zu Standard-Funktionsblöcken bietet EC_SET_EVT spezielle Rekonfigurationsfähigkeiten, die über normale Ereignisverarbeitung hinausgehen. Er ermöglicht externen Zugriff auf Ereignisse anderer Funktionsblöcke, was für Diagnose- und Testzwecke besonders wertvoll ist.

Fazit

Der EC_SET_EVT Funktionsblock stellt ein leistungsfähiges Werkzeug für erweiterte Steuerungsanwendungen dar, insbesondere für Debugging, Testing und dynamische Rekonfiguration. Seine Fähigkeit, gezielt Ereignisse in anderen Funktionsblock-Instanzen zu setzen, macht ihn zu einem wertvollen Baustein für komplexe Automatisierungssysteme.