Event HMI

Die TcEventViewer.dll stellt den Beckhoff TcEventViewer zur Verfügung. Der EventViewer ist ein ActiveX Control, das sich im HMI Baustein des TcEvent Loggers befindet. Durch das Eintragen in Form1und der Konfiguration einiger Eigenschaften kann es verwendet werden, um in weniger als 5 Minuten den sichtbaren Teil des TcEvent Loggers zu implementieren.

Der nächste Screenshot zeigt ein Visual Basic Programm, das den TcEventLogger zur Anzeige der logged Alarms verwendet.

Event HMI 1:

Der TcEventViewer kann Aktive und logged Alarme anzeigen. Die Spalten des TcEventViewers können aus dem Code ausgeblendet und in der Größe verändert werden.
Alle Eventstrings werden in der ausgesuchten Sprache dargestellt, da die Sprachumschaltung durch den Formatter erfolgt.

Ab Version 2.9.0.56 ist der EventViewer in zwei Komponenten aufgeteilt: TcEventview und TcEventviewLight. Die Light Version des Viewers ist auf Performance optiemiert, während der TcEventviewer eine vielzahl von Methoden zur Steuerung der Darstellung bietet.

Interfaces

Der TcEventViewer kommuniziert über seine Schnittstelle mit anderen Komponenten.

Die nächste Abbildung zeigt eine Übersicht der Hauptschnittstelle des TcEventViewers:

Event HMI 2:

 

Schnittstelle

Beschreibung

ITcEventView

Hauptschnittstelle des TcEventViewer zu COM Clients wie das HMI. Hauptfeatures: Das Auftreten des ActiveX ist zu kontrollieren.

ITcEventViewLight

Auf Performance optimierte Version des EventViewers.

ITcEventLogEvents

Die Event Schnittstelle wird vom TcEventLogger zur Verfügung gestellt. Wenn das TcEvent gestartet ist, bekommt es eine Liste der logged und aktiven Events durch einen Aufruf der Methoden ITcEventLog::EnumActiveEvents oder ITcEventLog::EnumLoggedEvents derTcEventLog Klasse und zeigt die Events an. Danach meldet der TcEventLogger den TcEventViewer an die ITcEventLogEvents Schnittstelle. Diese Meldung wird zur Synchronisierung der Liste der angezeigten Events mit dem Server verwendet.

Klassen

Der TcEventViewer unterstützt nur eine Klasse nach außen: TcEventView

Client Server

Der TcEventLogger stellt eine Client Server Architektur zur Verfügung. Der TcEventLogger ist der Server, der alle Informationen über aktive und logged Events enthält, selbst derer, die nicht auf einem Display zu sehen sind. Der TcEventViewer ist ein Client des TcEventLoggers. Wenn der EventViewer gestartet ist, bekommt er zuerst die Liste der aktiven und logged Events, zeigt sie an und synchronisiert die Liste durch das Event, dass durch die implementierte Schnittstelle ITcEventLoggEvents ausgegeben wird.

Der TcEventViewer kann mit drei verschiedene Client Server Konfigurationen verwendet werden.

  1. Ein TcEventViewer zeigt das Event eines TcEventLoggers an. In diesem Fall befindet sich das HMI mit dem TcEvenViewer und dem TcEventLogger auf der gleichen Maschine.
  2. Ein TcEventViewer zeigt die Alarme auf verschiedenen TcEventLoggers an, die sich auf unterschiedlichen Maschinen PCs befinden. Die Remoteverbindung ist über *DCOM hergestellt.
  3. Mehrere TcEventViewer zeigen die Events auf TcEventLoggern an. Die Remoteverbindung ist über *DCOM hergestellt.

*DCOM DCOM muss mit Hilfe von dcomcnfg.exe richtig auf dem Client und den Maschinen PC Server konfiguriert werden. Weitere Informationen über DCOM finden Sie in der MSDN Library. 

Da DCOM sehr lange timeout Zeiten benutzt, sollte es nur in sehr stabilen Netzwerkverbindungen verwendet werden. Ein weiteres Problem ist die Tatsache, dass der EventLogger nicht multithreaded ist, der TcEventViewer blockiert also den TcEventLogger.  Wenn die 2. Konfiguration verwendet wird, blockiert die Anzeige der Events eines TcEventLoggers den anderen.