WinCC Zeit Stempel erstellen

Ibrah

Level-2
Beiträge
13
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

Ich möchte verfolgen, wann diese beiden Signale auf dem Panel (TP700 Comfort) wahr sind und wann sie falsch sind, bzw. ich möchte sie in einer externen Datei aufzeichnen, wie kann ich dafür ein VB-Skript schreiben oder einen Zeit Stempel erstellen.
Vielen dank im Voraus
 

Anhänge

  • bild_1.jpg
    bild_1.jpg
    12,7 KB · Aufrufe: 19
Welche Aktualisierungszeit hast du denn für die Variablen eingestellt? Standard sind ja 500ms bis 1s.

Da wäre es sinnvoller die Zeitstempel auf der SPS zu erstellen und ans HMI zu übergeben.


Hier mal Links für dich:

Unterschiede zwischen den VB Skript-Funktionen von Windows und WinCE​


Wie greifen Sie mit SIMATIC WinCC (TIA Portal) auf einem Panel über ein Skript auf Prozessdaten in einer Datei zu?​



Wie speichern Sie mit der WinCC (TIA Portal) PC Runtime Informationen mit einem Skript in eine Datei?​


Welche VBS-Informationen und VBS-Programmierhilfen gibt es in WinCC (TIA Portal)?​


Wie können an einem windows-basierten Panel mit WinCC flexible Informationen in einer Textdatei mit Hilfe eines Skripts gespeichert und ausgelesen werden?​

 
Zuviel Werbung?
-> Hier kostenlos registrieren
Einfachste Möglichkeit, du legst ein Archiv mit den beiden Variablen an und legst es auf der SD-Card im TP ab.
Dann hast du einen Zeitstempel und siehst ob das Bit high oder low ist.
Frage ist, wie schon DCDCDC schrieb, wie schnell ändert sich der Zustand der Variablen bzw. wie genau muss denn deine Aufzeichnung sein und was soll hinterher damit gemacht werden?
 
Einfachste Möglichkeit, du legst ein Archiv mit den beiden Variablen an und legst es auf der SD-Card im TP ab.
Dann hast du einen Zeitstempel und siehst ob das Bit high oder low ist.
Frage ist, wie schon DCDCDC schrieb, wie schnell ändert sich der Zustand der Variablen bzw. wie genau muss denn deine Aufzeichnung sein und was soll hinterher damit gemacht werden?
verstehe ich das richtig, ich werde erstmal ein Archiv erstellen dann werde ich SD Karte Speichen, könnten sie mir bitte Foto schicken, wie kann ich die Zeit Stempel auf der SPS für diese Bit (db2.Dbx5.7) erstellen.

Aktualisierungszeit hast 1s für die Variablen eingestellt. Könnten sie mir schritt für schritt Foto schicken?
 

Anhänge

  • Bild 2.PNG
    Bild 2.PNG
    60,2 KB · Aufrufe: 9
Nicht ganz, du legst ihm TIA in der Projektierung deines TP900 ein Variablen-Archiv an, Speicherort ist dann die SD-Card (die must du natürlich kaufen und stecken) oder ein USB-Stick am TP (falls du keine SD-Card zur Hand hast). Wie du ein Archiv erstellst und was die unterschiedlichen Erfassungsarten sind weißt du aber?
In diesem Fall brauchst du keinen Zeitstempel in der SPS, allerdings musst du klären ob diese Variante genau genug für deine spätere Auswertung ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
verstehe ich das richtig, ich werde erstmal ein Archiv erstellen dann werde ich SD Karte Speichen, könnten sie mir bitte Foto schicken, wie kann ich die Zeit Stempel auf der SPS für diese Bit (db2.Dbx5.7) erstellen.
Zeitstempel musst du nicht erstellen, das macht das Archiv selber, wenn es Werte in das Archiv schreibt.
Du musst nur dafür sorgen, daß das Panel mit der korrekten Uhrzeit arbeitet, d.h. die Uhr auf die korrekte Uhrzeit gestellt ist.

Aktualisierungszeit hast 1s für die Variablen eingestellt. Könnten sie mir schritt für schritt Foto schicken?
siehe TIA Hilfe: Arbeiten mit Archiven, Arbeiten mit Variablenarchiven
Welche TIA-Version verwendest du?

Vielleicht erzählst du mal, was du dir aus dem aufzeichnen der Zustände der zwei Ventile erhoffst.
Wie schnell können sich die Zustände ändern? Wie schnell müsste daher der Wert der Variablen erfasst und archiviert werden?

Was für eine SPS-CPU hast du? Eventuell kann ja die CPU das viel besser aufzeichnen/archivieren?
Da es BOOL-Variablen sind: möglicherweise ist es besser, wenn man nur archiviert, wenn sich der Wert der Variable ändert, anstatt ständig den selben Wert ins Archiv zu schreiben.
 
Sie müssen keinen Zeitstempel erstellen, das Archiv erledigt dies selbst, wenn Werte in das Archiv geschrieben werden.
Alles, was Sie tun müssen, ist, sicherzustellen, dass das Panel zur richtigen Zeit funktioniert, dh die Uhr auf die richtige Zeit eingestellt ist.


Siehe TIA-Hilfe: Arbeiten mit Archiven, Arbeiten mit Variablenarchiven
Welche Version von TIA verwenden Sie?

Vielleicht können Sie uns sagen, was Sie sich von der Aufzeichnung der Zustände der beiden Ventile erhoffen.
Wie schnell können sich die Bedingungen ändern? Wie schnell muss also der Wert der Variablen erfasst und archiviert werden?

Welche Art von SPS-CPU haben Sie? Vielleicht könnte die CPU das viel besser aufzeichnen/archivieren?
Da es sich um BOOL-Variablen handelt, kann es besser sein, nur dann zu archivieren, wenn sich der Wert der Variablen ändert, anstatt ständig denselben Wert in das Archiv zu schreiben.

Aktuell ist die Laufzeitüberwachung der Abluftklappen für 90 Sekunden bis zur bevorstehenden Fehlermeldung "Die Absperrklappe an der Auslassabluftanlage schließt nicht" programmiert. Diese Rückmeldung wird von einer externen Steuerung an die Paketeinheit übertragen.
In der Vergangenheit wurde die Laufzeitüberwachung von Abluftklappen nach der Lüftungsphase häufig überschritten.
Zu diesem Zeitpunkt benötigen die Abluftklappen mehr als die vorgesehenen 90 Sekunden zum Schließen, was den oben genannten Alarm auslöst.​
Ich muss feststellen, wann die Absperrklappen geöffnet sind und wann die Absperrklappen geschlossen und archiviert sind oder sich in einer externen Datei befinden. So lässt sich feststellen, wie lange die Abluftklappen tatsächlich schließen müssen. (siehe Bild)



 

Anhänge

  • Bild 4.PNG
    Bild 4.PNG
    54,2 KB · Aufrufe: 6
Zuletzt bearbeitet:
Nicht ganz, du legst ihm TIA in der Projektierung deines TP900 ein Variablen-Archiv an, Speicherort ist dann die SD-Card (die must du natürlich kaufen und stecken) oder ein USB-Stick am TP (falls du keine SD-Card zur Hand hast). Wie du ein Archiv erstellst und was die unterschiedlichen Erfassungsarten sind weißt du aber?
In diesem Fall brauchst du keinen Zeitstempel in der SPS, allerdings musst du klären ob diese Variante genau genug für deine spätere Auswertung ist.
Ist das richtig? ich habe noch eine frage kann ich diese aufgezeichneten Daten auf dem Panel ansehen oder kann ich verfolgen ?
 

Anhänge

  • Bild _3.PNG
    Bild _3.PNG
    104,7 KB · Aufrufe: 3
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich muss feststellen, wann die Absperrklappen geöffnet sind und wann die Absperrklappen geschlossen und archiviert sind oder sich in einer externen Datei befinden. So lässt sich feststellen, wie lange die Abluftklappen tatsächlich schließen müssen. (siehe Bild)
Die Zeitmessung würde ich mir vermutlich in der SPS programmieren. Willst du die Zeit nur mal ermitteln oder musst du tatsächlich die genauen Zeiten von wie vielen Vorgängen aufzeichnen? Wie lange muss die Aufzeichnung laufen? Wie lange soll die Aufzeichnung einsehbar/auswertbar sein?
 
Die Zeitmessung würde ich mir vermutlich in der SPS programmieren. Willst du die Zeit nur mal ermitteln oder musst du tatsächlich die genauen Zeiten von wie vielen Vorgängen aufzeichnen? Wie lange muss die Aufzeichnung laufen? Wie lange soll die Aufzeichnung einsehbar/auswertbar sein?
Ich will die genauen Zeiten (geöffnet und geschlossen )aufzeichnen. Ich bin sehr dankbar für schnelle Antwort.
 
Wenn du die Datei mit Excel öffnen möchtest, solltest du CSV-Datei (ASCII) als Ablageort wählen. Diese Datei kannst du nicht so ohne weiteres ansehen. Du könntest allerdings auch ein Linien(Kurven)diagram mit den Variablen erstellen, dann kannst du es dir live ansehen. Kommt halt drauf an was genau du machen willst. Siehe #9 von PN/DP
 
Ich habe Traces nicht gefunden
Bei deiner CPU (313C) klappt es mit dem Trace auch nicht. Deshalb hatte dich @PB/DP in #6 ja auch nach deiner CPU gefragt.

Wie schnell geht denn dein Ventil auf / zu? Dein Archiv schreibt alle Sekunde einen Eintrag und dein Screenshot zeigt nicht mal eine Minute.
Besser wäre vielleicht das Archiv nur auf Anforderung zu schreiben, z.B. wenn es an- bzw. umgesteuert wird bis es wieder in Endlage ist.
 
Es wäre wirklich vorteilhaft, wenn du mal genauer erklärst, was du da machen willst, und Fragen zu Details beantwortest.
Wie oft am Tag öffnen/schliessen die Ventile?

Deine SPS weiß ganz genau, wann die Ventilstellungen sich ändern. Die SPS könnte bei jeder Stellungsänderung einen Eintrag in ein Protokoll (Array, Ringpuffer, ...) machen mit Zeitstempel, und daraus Daten für das HMI berechnen, wie Dauer der letzten x Öffnung(en) und Uhrzeit der letzten (paar) Öffnung(en).
Man muss nicht stupide 50.000 Archiv-Einträge am Tag erstellen lassen, weil da vielleicht 50 mal eine Änderung dabei ist, und dann fragen, ob man das irgendwie am HMI anzeigen kann.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
hier mal ein beispiel wie du das machen kannst per script

1. erstelle ein script z_ventil1_write und z_ventil2_write (erst mal leer lassen. script weiter unten)
2a. erstelle eine var im hmi mit dem ausgang (ventil) (im beispiel "A0.0_Ventil_1") (oder eine var die diesen zustand abbildet).
in den einstellungen der var stellst du bei erfassung 'zyklisch fortlaufend' z.B. 500ms ein.
unter ereignis rufst du bei wertänderung das script z_ventil1_write auf.
2b. erstelle eine var im hmi mit dem ausgang (ventil) (im beispiel "A0.1_Ventil_2") (oder eine var die diesen zustand abbildet).
in den einstellungen der var stellst du bei erfassung 'zyklisch fortlaufend' ein.
unter ereignis rufst du bei wertänderung das script z_ventil2_write auf.

scripte ungetestet. sollte aber ungefähr passen

Code:
Sub z_Ventil1_write()
Dim fso,fs,ziel_medium,ziel_datei,t_datei_pfad_plus_name
On Error Resume Next

'init
ziel_medium = "\storage card usb\"
ziel_datei = "VentilLog.csv"
t_datei_pfad_plus_name = ziel_medium & ziel_datei

'datei erzeugen falls nicht vorhanden
If fs.dir (t_datei_pfad_plus_name) = "" Then
    fso.open t_datei_pfad_plus_name, 2
    fso.lineprint "Datum;Zeit;Aktion"
    fso.close
End If

'daten in datei schreiben
fso.open t_datei_pfad_plus_name, 8 '8 = anhängen
If SmartTags("A0.0_Ventil_1") Then 'Ventil wurde eingeschaltet
    fso.lineprint Date & ";" & Time & ";" & "Ventil 1 ein"
End If
If Not SmartTags("A0.0_Ventil_1") Then 'Ventil wurde ausgeschaltet
    fso.lineprint Date & ";" & Time & ";" & "Ventil 1 aus"
End If
fso.close
  
End Sub
Code:
Sub z_Ventil2_write()

Dim fso,fs,ziel_medium,ziel_datei,t_datei_pfad_plus_name
On Error Resume Next

'init
ziel_medium = "\storage card usb\"
ziel_datei = "VentilLog.csv"
t_datei_pfad_plus_name = ziel_medium & ziel_datei

'datei erzeugen falls nicht vorhanden
If fs.dir (t_datei_pfad_plus_name) = "" Then
    fso.open t_datei_pfad_plus_name, 2
    fso.lineprint "Datum;Zeit;Aktion"
    fso.close
End If

'daten in datei schreiben
fso.open t_datei_pfad_plus_name, 8 '8 = anhängen
If SmartTags("A0.1_Ventil_2") Then 'Ventil wurde eingeschaltet
    fso.lineprint Date & ";" & Time & ";" & "Ventil 2 ein"
End If
If Not SmartTags("A0.1_Ventil_2") Then 'Ventil wurde ausgeschaltet
    fso.lineprint Date & ";" & Time & ";" & "Ventil 2 aus"
End If
fso.close
  
End Sub

Die Datei ansehen kannst du dir nicht z.B. durch einen doppelklick im explorer.
Aber
Öffen den IExplorer
Menüzeile File\open dort browse
Pfad anwählen
bei Typ 'all files' wählen.
datei auswählen und öffnen
1706810953463.png
 
Zuletzt bearbeitet:
Zurück
Oben