Anleitung:
Nachfolgend wird an Hand von zwei unterschiedlichen Beispielen gezeigt, wie Sie STRING-Variablen archivieren können.
Archivierung von STRING-Variablen mit Hilfe von einem Script
Archivierung von STRING-Variablen mit Hilfe von einem Meldearchiv
Am Ende des Beitrages finden Sie ein Beispielprojekt, in dem beide Varianten umgesetzt worden sind. Als Bediengerät wurden ein MP277 Touch sowie eine PC-Runtime eingesetzt.
| Nr. |
Archivierung von STRING-Variablen mit Hilfe von einem Script |
| 1 |
In diesem Programmbeispiel wird gezeigt, wie STRING-Variablen mit Hilfe von einem Script in eine CSV-Datei archiviert werden können.
Die in dem Projekt verwendeten Scripte haben jeweils die gleiche Funktionalität
(Archivierung von STRING-Variablen).
Die Scripte unterscheiden sich im wesentlichen in der Darstellung der erstellten CSV-Datei.
(Siehe im weiteren Verlauf "Bild 04" und "Bild 05").
Hinweis:
Beachten Sie die unterschiedliche VBS-Syntax bei den Windowsbasierten CE-Geräten und einer PC-Runtime. Die Befehle sind bei diesen Betriebssystemen teilweise unterschiedlich.
Das hinterlegte Script im MP277 Touch kann somit nicht in der RT-Simulation getestet werden. |
| 2 |
Funktionsbeschreibung/Aufbau der Skripte: Über das Script wird eine Archivdatei erzeugt, bzw. falls schon vorhanden, die Archivdatei geöffnet und die Variablenwerte hinzugefügt.
Der Name der Datei setzt sich aus dem Monat und dem Jahr zusammen, in dem die Werte der Variablen gespeichert wurden.
Über einer Wertänderung der Variablen wird jeweils das Script ausgeführt.
Script_01:
Das "Script_01" hat zwei Parameter.
Über diese Parameter kann der Ablagepfad vorgegeben werden (z.B. "Laufwerk C:\" bzw. "\Storage Card MMC\") sowie der Name der zu archivierenden Variablen.
Script_02:
Das "Script_02" hat einen Parameter.
Über diesen Parameter kann der Ablagepfad vorgegeben werden (z.B. Laufwerk C:\).
Die zu archivierenden Variablen sind in diesem Script fest vorgegeben.
Hinweis: Durch die VBS-Funktionalität haben Sie eine vielseitige Einflussmöglichkeit auf die Darstellung und Parametrierung der einzelnen Scripte.
Sie können die Scripte beliebig Ihren Anforderungen anpassen.
Informationen zu den verwendeten Funktionen und Befehle entnehmen Sie bitte der WinCC flexible Onlinehilfe bzw. der einschlägigen Fachliteratur. |
| 3 |
Variablendeklaration: Zur besseren Übersicht wurden...
- dem "Script_01" die Variablen "Tag_01 bis Tag_03" zugewiesen.
- dem "Script_02" die Variablen "Tag_10 bis Tag_12" zugewiesen.
  Bild 01
Unter den Eigenschaften der Variablen "Eigenschaften > Ereignisse > Wertänderung" wird jeweils das entsprechende Script aufgerufen.
Wichtiger Hinweis:
Eingabe/Vorgabe des Ablagepfades und des Variablennamens.
Die Eingabe des Ablagepfades und des Variablennamens z.B. beim Parameter "TagName" muss per "Hand" erfolgen. Verwenden Sie hier nicht das "Auswahlfenster" bzw. die "automatische Vervollständigung".
Tipp:
- Der eingegebene "Text" darf nach der Eingabe nicht "fett" erscheinen.
- Kopieren Sie den kompletten Variablennamen aus dem "Variablen Editor" und fügen Sie den "Text" ein.
Hintergrund: Wird der Name der Variablen z.B. über das "Auswahlfenster" übernommen, wird dem Parameter nicht der Wert des Objektes übergeben sondern nur die "Referenz" zu diesem Objekt (ähnlich einem Link).
Für andere Anwendungsfälle kann dieses wiederum erforderlich sein.
  Bild 02
|
| 4 |
Bild "Screen_1":
Über das Bild "Screen_1" können Sie die hinterlegten Funktionen testen.
Geben Sie in den entsprechenden EA-Feldern einen Text vor und übernehmen Sie die Eingabe mir der Enter-Taste.
  Bild 03
|
| 5 |
Ansicht Excel Dateien:
Script_01:
"Archiv_01_1_2008.csv" (Archiv_01, Januar 2008)
Die zu archivierenden String-Variablen werden nacheinander aufgelistet.
  Bild 04
Script_02:
"Archiv_02_1_2008.csv" (Archiv_02, Januar 2008)
Die zu archivierenden String-Variablen werden in einer separaten Spalte aufgelistet.
  Bild 05
|
| Nr. |
Archivierung von STRING-Variablen mit Hilfe von einem Meldearchiv |
| 1 |
In diesem Programmbeispiel wird gezeigt, wie STRING-Variablen mit Hilfe von einem Meldearchiv in eine CSV-Datei archiviert werden können. |
| 2 |
Kurzbeschreibung: Die zu archivierenden String Variablen werden als "Bitmeldungen" projektiert - anstelle eines Meldetextes wird nur die zu Archivierende "String Variable" in die Zeile des Meldetextes eingefügt.
Bei "Aufruf" einer dieser "Bitmeldungen" (über die Trigger Variablen), werden diese in einem Meldearchiv gespeichert. |
| 3 |
Variablendeklaration:
In dieser Beispielanwendung werden die Variablen Tag_20; Tag_21 und Tag_22 in einem Meldearchiv gespeichert.
An den Variablen wurde unter "Eigenschaften > Ereignisse > Wertänderung" die Funktion "InvertiereBitInVariable" projektiert.
Die parametrierte Variable "Trigger_Tag_Log_File" ist die Variable, über die später auch die "Bitmeldungen" ausgelöst werden. Das "Bit" entspricht der Nummer des "Trigger Bits".
  Bild 06
Funktionshinweis:
-> siehe im weiteren Verlauf Punkt 6 |
| 4 |
Bitmeldung projektieren:
- Meldeklasse
Für ein besseres Handling wurde eine eigene Meldeklasse angelegt. Dadurch kann den projektierten "Bitmeldungen" gezielt eine eigene Meldeklasse zugewiesen werden.
  Bild 07
- Bitmeldung
Nachfolgend wird die Vorgehensweise zum Anlegen der "Bitmeldung" gezeigt.
  Bild 08
- Punkt 1:
In die Textzeile wird anstelle eines Textes nur die String-Variable eingefügt.
Unter dem Punkt "Eigenschaft > Allgemein > Einstellungen > Meldetext" können Sie Felder zur Ausgabe von Variablenwerten einfügen.
- Punkt 2:
Unter dem Punkt "Meldeklasse" wählen Sie die neu erstelle Meldeklasse "String_Log_File_Class".
- Punkt 3:
Als "Trigger Variable" wird die Variable "Trigger_Tag_Log_File" verwendet.
Wird das entsprechende Bit gesetzt, wird die dazugehörige "Meldung" angezeigt. |
| 5 |
Ansicht Bild_2:
  Bild 09
- Punkt 1:
Unter dem Punkt 1 sind drei EA-Felder projektiert, über die später die Texte eingegeben werden können.
- Punkt 2:
Über diese Meldeanzeige werden die archivierten Meldetexte ausgegeben.
- Punkt 3:
Anwahl des Parameters "Meldearchiv" und Auswahl des Meldearchivs "String_log_01".
- Punkt 4:
Anwahl der Meldeklasse "String_Log_File_Class".
- Punkt 5:
Um die Anzeige des Meldearchivs zu aktualisieren, kann über diese Schaltfläche das "Bild_2" erneut aufgerufen werden. |
| 6 |
Handling und Arbeitsweise:
  Bild 10
Über die EA-Felder (1) können Texte eingegeben werden.
Durch die Eingabe erfolgt eine "Wertänderung" in der hinterlegten Variablen und die an der Variablen hinterlegte Funktion wird ausgeführt - das Bit der Variable "Trigger_Tag_Log_File" wird invertiert. Änderung von 0->1 bzw. 1-> 0 (siehe auch Pkt. 3 - Variablendeklaration).
Durch diese Wertänderung der Variablen "Trigger_Tag_Log_File", wird das entsprechende Meldebit gesetzt bzw. zurückgesetzt und eine Meldung automatisch ausgelöst/zurückgesetzt (siehe auch Pkt. 4 - Bitmeldung).
Für diese Anwendung wird die "Meldung" nicht direkt als "Fehlermeldung" in einer Meldeanzeige angezeigt, sondern die "Meldung" dient lediglich dazu, den Text der Variablen in eine CSV-Datei zu speichern.
Das Meldearchiv (2) dient in dieser Anwendung lediglich dazu, den Inhalt der gespeicherten Texte in der CSV-Datei auszugeben. Das Zurückschreiben der Daten/Texte aus der CSV-Datei ist nicht möglich.
Über die Schaltfläche (3) kann die Anzeige des Meldearchivs aktualisiert werden. |
Der beigefügte Download enthält das archivierte WinCC flexible Projekt mit dem oben beschriebenen Funktionsbeispielen.
Anlage 1: Project_01.zip ( 3416 KB )
Ablauffähigkeit und Testumgebung: In folgender Tabelle sind die Komponenten aufgeführt, mit denen dieser Beitrag erstellt und die beschriebene Funktionsweise verifiziert wurde:
| Komponente |
Produkt- und Versionsbezeichnung |
| PC-Betriebssystem |
Microsoft Windows XP SP2 |
| Standard Tools |
-- |
| Engineering Tools |
-- |
| HMI Software |
WinCC flexible 2007 HF3 |
| Bedien- & Beobachtungsgeräte |
MP277 Touch
PC-Runtime |
| Steuerungen |
-- |
Tabelle 1: Erstellumgebung des beigefügten Downloads
|