TIA Grossen DB vor Verlusten schützen

Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo René,

hier ein ganz rudimentäres Script das immer eine neue Zeile an eine CSV Datei anhängt:

Code:
Sub DATENLOGGING_MESSWERTE(ByRef Text, ByRef Variable1_Text, ByRef Variable1_Wert, ByRef Variable2_Text, ByRef Variable2_Wert, ByRef Variable3_Text, ByRef Variable3_Wert)
Dim fs
Dim f
Dim mode
Dim pfad



' pfad festlegen
pfad = "Storage Card SD\Logs\"

' Objekt fuer Filehandling erstellen
Set fs = CreateObject("filectl.filesystem")
Set f= CreateObject("filectl.file")
    
' Pruefen ob Verzeichnis existiert und sonst erstellen
If fs.dir(pfad) = "" Then fs.mkdir(pfad)
                            
' Daten in Datei schreiben
' Format in etwa: 2016.06.05 14:53:31, Dies ist ein Beispieltext, Variable 1, Variable 2
f.open pfad + "messwerte.csv", 8
f.LinePrint CStr(Now) & ";" & Text & ";" & Variable1_Text  & ";" & Variable1_Wert  & ";" & Variable2_Text  & ";" & Variable2_Wert  & ";" & Variable3_Text  & ";" & Variable3_Wert  & ";"
f.Close

End Sub

Die 3 Variablen können am Script-Eingang bestimmt werden (String, INT oder Smart-Tag).
z.B. sieht eine Zeile mit einem Messwert bei mir so aus: 2016.06.05 14:53:31, Messwert 1, 3.1415, Messwert 2, 42

Hoffe das ist eine kleine Hilfe!

Jetzt noch einen FIFO in der SPS bauen aus dem das Panel die Daten abholt... und deine Archivierung ist fertig.
Die Auswertung ist so ganz schlimm auch nicht, man kann Daten aus ner CSV Datei auch per script lesen und dort verrechnen,
nur wenn die CSV Datei sehr groß ist dauert das lange und blockiert natürlich andere Scripte. Daher ggf. Tageweise oder Wochenweise
CSV Dateien anlegen.

Grüße

Marcel
 
Dann verstehe ich die Hilfe nicht.

Wenn ich DBs die im Ladespeicher erzeugt werden nur als remanent oder nicht remanent auswählen kann. wozu dann einen im Ladespeicher erzeugen. Ich war der meinung dbs im Ladespeicher können eh nur mit writedb geschrieben werden und diese werte sind sowieso nur so veränderlich also müssen keinen Remanenzspeicher haben da sie ja im Ladespeicher also auf der Speicherkarte fest geschrieben also unveränderlich sind.

mfG René

Ja, die Hilfe ist hier (nur bei DBs, die im Ladespeicher erzeugt werden) unglücklich formuliert. Hier ist sicherlich gemeint "nur bei DBs, die im Ladespeicher und im Arbeitsspeicher erzeugt werden".

Remanenz macht ja nur Sinn, wenn ein DB Arbeitsspeicherinhalte hat, die bei Netz Aus gesichert werden und bei Netz Ein wieder restauriert werden. Bei DBs, die nur im Ladespeicher liegen gibt es nichts zu sichern. Bei DBs, die nur im Arbeitsspeicher liegen gibt es nichts zu restaurieren, weil diese im Netz Ein nicht mehr da sind.

Mir hätte die CSV-Lösung auch besser gefallen, aber wie Du auch schon festgestellt hast kann man damit Rezepte wohl nur 1:1 exportieren bzw. importieren:rolleyes:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo René,
ich würde wie von Marcel das Script nutzen, die Bedenken mit Nicht eingeschalteten Panel
oder zweiten Panel würde ich nicht betrachten. Zum einen könnte auch genauso gut die Steuerung
tot sein zum anderen kannst du die Hoheit des Scriptes auf einen Panel verlagern.

Was mir gerade wieder auffällt, wie rückständig Siemens mit der neuen Steuerungsgeneration ist,
das da keine einfachr File Zugriffe auf einen externen Speichermedium möglich ist wie bei
den Panel's per Script, OPC ist da keine Option, es muss auch einfach gehen.

So sind die für mich noch lange nicht reif für die Industrie 4.0.
 
Zurück
Oben