WinCC & Uhrzeiten

jackjones

Level-1
Beiträge
214
Reaktionspunkte
9
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe ein Bild in Wincc in dem man einige Zähler sieht (Statistiken).
Auf dem Bild gibt es auch die Möglichkeit die Zähler auf 0 zu setzen.
Nun möchte ich noch eine Zeile mit einbinden, in welcher der letzte Reset angegeben ist.
Ich habe für das Zurücksetzen der Zähler einen Button programmiert, welcher 5s lang ein Bit in einem DB auf 1 setzt.
Mit welchem befehl bekomme ich die aktuelle Uhrzeit? Diese würde ich dann in eine Lokale Variable ablegen und diese anzeigen lassen.

Andernfalls könnte ich auch die Uhrzeit in der CPU übertragen, aber das sehe ich nicht als Vorteilhaft an.

Grüße aus Bremen
 
Hier mal ein Programmbeispiel, um in WinCC das aktuelle Datum und die aktuelle Uhrzeit des Computers in zwei internen Variablen zu speichern:

Du legst zunächst zwei interne Variablen vom Datentyp "Textvariable 16-Bit Zeichensatz" an.

Dann projektierst Du an einem Button das folgendes VBScript, welches beim Drücken einer Maustaste ausgeführt wird:

Code:
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)  
 
' Funktion Date()
'
' Liefert das aktuelle Datum des Computers
 
' Funktion Time()
'
' Liefert die aktuelle Uhrzeit des Computers
 
Dim Datum, Uhrzeit
 
Set Datum = HMIRuntime.Tags("Datum")
 
Set Uhrzeit = HMIRuntime.Tags("Uhrzeit")
 
Datum.Write Date()
 
Uhrzeit.Write Time()
 
End Sub

Gruß Kai
 

Anhänge

  • Variablen.jpg
    Variablen.jpg
    359,8 KB · Aufrufe: 136
  • Button.jpg
    Button.jpg
    131,3 KB · Aufrufe: 99
  • VBScript.jpg
    VBScript.jpg
    177,1 KB · Aufrufe: 111
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke Kai!
Nun habe ich natürlich noch ein Problem mit der Ausgabe.
Ich habe ein EA-Feld angelegt und es als Ausgabe deklariert. Variable ist Datum und Ausgabeformat ist String. Ist das richtig?
ich bekomme keinen Wert angezeigt.auf den Button habe ich bereits geklickt.
Oder muss die Ausgabe als Textfeld erfolgen?

Vielen Dank, für deine Hilfe! Echt super Strukturiert.


Grüße aus Bremen
 
Nachfolgend noch mal zwei Beispiele für die Projektierung der EA-Felder für die Ausgabe des Datums und der Uhrzeit.

Gruß Kai
 

Anhänge

  • Datum.jpg
    Datum.jpg
    148,4 KB · Aufrufe: 92
  • Uhrzeit.jpg
    Uhrzeit.jpg
    148,6 KB · Aufrufe: 82
  • Runtime.jpg
    Runtime.jpg
    53,9 KB · Aufrufe: 83
Ich habe es exakt so projektiert, auch vorher schon. Aber es funktioniert nicht. Ich bekomme keine Ausgabe.
Ist das Script richtig?
Ist der write Befehl wirklich richtig so?


Danke...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Im MS VBScript Sprachverzeichnis werden die Date-Funktion und die Time-Funktion ohne Klammer geschrieben.

Du könntest also mal folgendes VBScript ausprobieren:

Code:
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y) 
 
' Date-Funktion
'
' Gibt das aktuelle Systemdatum zurück
 
' Time-Funktion
'
' Gibt die aktuelle Systemzeit zurück
 
Dim Datum, Uhrzeit
 
Set Datum = HMIRuntime.Tags("Datum")
 
Set Uhrzeit = HMIRuntime.Tags("Uhrzeit")
 
Datum.Write Date
 
Uhrzeit.Write Time
 
End Sub

Gruß Kai
 

Anhänge

  • Date-Funktion.jpg
    Date-Funktion.jpg
    369,2 KB · Aufrufe: 65
Ich versuch es morgen früh, wenn ich wieder in der Firma bin.
Ist ja zum Glück nichts wichtiges. Danke für deine Bemühungen. Ich gebe morgen sofort bescheid. Denke das wird es aber sein.

Danke Danke Danke ;) Und gute NAcht
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das verstehe ich nicht, bei mir funktionieren beide VBScripte ohne Probleme.

Welche Versionen von Windows, WinCC und WSH (Windows Script Host) sind denn auf Deinem Rechner installiert?

Auf meinem Rechner sind Windows 2000 SP4, WinCC V6.0 SP3 und WSH V5.6.0.8225 installiert.

Gruß Kai
 
Um zu überprüfen, welche WSH-Version und welche VBScript-Version auf Deinem Rechner installiert sind, und ob die Date-Funktion und die Time-Funktion funktionieren, kannst Du folgendes machen:

- Die Datei WSH.txt auf den Desktop von Deinem Rechner kopieren.

- Die Datei WSH.txt umbenennen in WSH.vbs .

- Mit einem Doppelklick auf die Datei WSH.vbs das folgende VBScript ausführen:

Code:
WScript.Echo WScript.Name & " Version " & WScript.Version
 
WScript.Echo ScriptEngine & " Version " & ScriptEngineMajorVersion & "." & _ 
ScriptEngineMinorVersion & "." & ScriptEngineBuildVersion
 
WScript.Echo "Datum " & Date & "  Uhrzeit " & Time

Es werden die auf Deinem Rechner installierte WSH-Version und VBS-Version, sowie das aktuelle Systemdatum und die aktuelle Systemzeit ausgegeben.

Gruß Kai
 

Anhänge

  • WSH.txt
    253 Bytes · Aufrufe: 12
  • WSH1.jpg
    WSH1.jpg
    117,2 KB · Aufrufe: 43
  • WSH2.jpg
    WSH2.jpg
    116,1 KB · Aufrufe: 30
  • WSH3.jpg
    WSH3.jpg
    118,3 KB · Aufrufe: 29
Zurück
Oben