WinCC Daten in aus DB abspeichern und in DB laden

test02

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo ich nutze zurzeit WinCC Advanced und habe folgendes Ziel:

Ich möchte die per VB-Skript die Daten aus einem DB lesen und in einer externen Datei abspeichern und umgekehrt, also die Daten aus der Datei lesen und in den DB schreiben.

Der DB ist aufgebaut aus einem Array of Struct [0..70] und die Strukt besteht aus verschiedenen Int Werten.

Jetzt ist meine Frage ob ich das irgendwie umsetzen kann. Im HMI Pro gibt es einfach die Funktion "CopyFileToDB" aber so etwas ähnliches konnte ich leider nicht finden.

Hoffe, dass mir jemand dabei helfen kann.
 
hier mal ein paar Anregungen :
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich möchte die per VB-Skript die Daten aus einem DB lesen und in einer externen Datei abspeichern
Das geht nicht so einfach. Garantiert aktualisiert und konsistent Daten mit dem HMI aus der PLC lesen geht nur mit Handshake, z.B. als Rezeptur. siehe die Forumssuche mit dem Suchbegriff: GetDataRecordTagsFromPLC
Besser wäre es, externe PC-Lösungen zu verwenden, wie sie z.B. hier genannt werden:

Je nachdem, was für eine PLC du hast, könntest du die Daten auch auf der Memorycard der CPU speichern.
Oder
Daten an einen Server-PC im Netz senden z.B. TCP-Fileserver für S7-Controller (keine Lizenzkosten)
oder FTP-Client Kommunikation mit S7-1200/1500

Es müsste auch was per OPC gehen. Da habe ich aber keine Erfahrung.
 
Zuletzt bearbeitet:
Also danke erstmal für die Antworten. Schade dass das scheinbar eine etwas größere Aufgabe wird.

Die Daten auf der CPU zu Speichern ist leider nicht so möglich, weil mit der Zeit zu viele Daten vorhanden sein werden.

Konkret wie ich es geplant gehabt hätte:
Im Zeitraum von einem Monat werden die Prozessdaten alle ~16 Stunden in den ersten leeren Index des DB geschrieben. Nach einem Monat soll dann dieser DB in eine Datei gespeichert und danach zurückgesetzt werden. Also wie ein Datenlogger.

Zur Anzeige der Daten hätte ich dann einen zweiten DB als Zwischenspeicher erstellt in dem dann entweder die aktuellen Daten oder die Daten aus der ausgewählten Datei gespeichert werden.
Wie gesagt wird eine neue Messreihe im Normallfall nur alle ca. 16 Stunden erzeugt, also sind es am Ende des Monats etwa 30 Einträge.
 
Das Hauptproblem ist, wie man die Daten kontrolliert aus der CPU ins WinCC Advanced HMI bekommt. Der umgekehrte Weg aus einer Datei in einen DB in der CPU ist relativ einfach in einem VBS-Skript programmierbar.

Welche SPS genau hast Du?
WinCC Advanced heißt: Du hast einen PC mit WinCC Advanced Runtime als HMI?
Welches Betriebssystem ist auf dem PC?
Um wieviele Daten geht es alle 16 Stunden und insgesamt im Monat? Wieviel ist "ein Array of Struct [0..70] und die Strukt besteht aus verschiedenen Int Werten"?

Wenn auf dem PC auch Excel vorhanden ist, dann könnte man mit dem Excel und einer Kommunikationsbibliothek wie ACCON-AGLink oder Freeware wie Libnodave oder ähnliches die Daten kontrolliert aus der CPU lesen und in Dateien speichern und auch aus Dateien in die CPU schreiben.
Oder fertige Dritt-Programme nutzen wie in #3 verlinkt.
 
Zurück
Oben