Zeitstempel auslesen

Maldito

Level-1
Beiträge
31
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

wir würden gerne den Zeitstempel von WinCC Variablen auslesen.
In der WinCC Hilfe und auf den Support Seiten habe ich leider keine Funktion dafür gefunden. Im Variablenlhaushalt wird ja bei jeder Variablen der Yeitpunkt der letzten Änderung angezeigt. Für einige kritischen Werte müssten wir diesen interpretieren.
Kennt jemand eine Möglichkeit darauf zuzugreifen?

Danke für eure Hilfe
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke schön, hatte ich auch mit der Suche Funktion nicht gefunden.
Leider bin ich absolut unbewandert in VB.
Mache alles in C Funktionen.
Gibt es was vergleichbares in C?
Ansonsten muss ich mir mal den VB Editor anschauen.
 
Wie Du das in C gestalten kannst weis ich nicht. Mit VB bist du in manchen Dingen besser bedient. Beides hat seine Vor- und Nachteile. Bei der Performance sieht es genauso aus. Das Eine kannst Du besser mit C das Andere besser mit VBS realisieren.

Zu den Zeitstempeln:

Nachdem ich mich nun einige Zeit mit dem Thema beschäftigt habe kann ich dazu folgendes konstatieren:

In der WinCC Runtime bekommst Du keinen direkten Zugriff auf die verschiedenen Properties der Variablen auf dem OPC Server(habe bisher nur mit OPC getestet). Als gutes Beispiel nehmen wir das Alarm Contral. Wenn du es im Graphicsdesigner projektierst dauert es einen Kleinen Moment bis es sich vollständig initialisert hat (jawohl es initialisiert sich) und greift auf die SQL WinCC Instanz zu um alle bisher aufgelaufen Alarme anzuzeigen. Genau so wird es auch in der Runtime funktionieren. Es entsteht allerdings dadurch der Eindruck, dass das Control selbst mit dem OPC kommuniziert. Das ganze wird natürlich dadurch gestärkt, dass dir Millisekunden Werte angezeigt werden. Tatsächlich bekommt das Control vermutlich nur eine Aktualislierungsmeldung von dem Prozess, der einen aufgelaufenen Alarm loggt und in die Datenbank schreibt. Dadurch wird das Control veranlasst einen Refresh durchzuführen. Dasselbe dürfte auch für das Table Control mit den TagLoggingFast Werten gelten.
Wenn Dir die Zeitangeben Sekundengenau reichen kannst du also sehr gut mittels VB dein Ziel erreichen, musst du es genauer haben hilft nach meinem derzeitigen Kenntnisstand nur der externe Zugriff auf OPC gebunden an ein DataChange Ereignis. Ich bin derzeit dabei ein Script zu schreiben, dass die opcdaauto.dll instanziert und den timestamp direkt vom OPC für die gewünschte variable abholt, wird aber noch ein wenig dauern.


regards
 
Hab es jetzt mal ausprobiert mit dem VB Skript.
Die Millisekunden Umsetzung bringt mir einen Überlauffehler in APDiag.
Aber mit der Sekundenanzeige bin ich schon zufrieden und die funktioniert.
Wenn ich mal die Zeit und Muße habe schau ich mir mal VB an.
Falls du dein Skript fertigbekommst und es dir nichts ausmacht es zu posten wäre ich sehr daran interessiert.

Danke auf jeden Fall mal, war eine grosse Hilfe
 
Zurück
Oben