Hallo zusammen,
ich bin gerade als zeimlicher SPS-Neuling dabei eine Prüfstandssteuerung mittels Wago 750 841 aufzubauen. Um die Messwerte auch digital erfassen zu können, habe ich mir in Codesys einen FB gebastelt, in dem die ganzen DLOG-Klamotten aus der OSCAT-Bibliothek drin sind und die Werte aufnehmen udn schreiben sollen.
Die Idee bzw. der Anwendungsfall ist folgender: Mittels der geschriebenen Visu wird der Prüfstand eingestellt und überwacht. Zu unregelmäßigen Zeiten soll eine Messung der Zustandsgrößen stattfinden und zwar 60 Sekunden lang jede Sekunde.
Soweit kein Problem, ich habe in die Visu einen Auslöser gebastelt, der einen TP1 anspricht, der wiederum den ENABLE-Input am DLOG_STORE_FILE_CSV für eine Minute anspricht. Dabei ist TRIGGER_T = 1.
Bis hierher funktioniert es sehr gut, sprich, die Daten werden auf des SPS abgespeichert und können z.B. mit TotalCommander abgezogen werden.
Jetzt das Problem:
Der Dateinahme besteht aus dem Datum und einer fortlaufenden Nummer, die bei jedem Klick auf Messung um 1 hochgezählt wird. Im Prinzip will ich also für jede Messung die ich mache eine Datei haben, die aus dem Datum und einer fortlaufenden Nummer besteht. Das funktioniert aber nur genau ein mal. Bei weiteren Messungen werden immer ZWEI Dateien in den Speicher der SPS geschrieben und zwar eine mit dem aktuellen Namen und auch mit Inhalt und eine mit dem vorherigen Namen (also Index). Die mit dem vorherigen Namen überschreibt also die zuvor aufgenommene Messdatei. Der Inhalt dieser ist dann auch immer nur die Überschrift der jeweiligen Columns. Nach n Messrehen hat man also n-1 Dateien, die quasi leer sind und nur de allerletzte ist brauchbar.
Ich habe 1000 Sachen ausprobiert mit Einschaltverzögerungen am DLOG_STORE_FILE_CSV , dem Hochzählen des INDEX zu unterschiedlichen Zeitpunkten usw. usw. Mitlerweile glaube ich, dass ich etwas grundsätzlich wichtiges an der Funktionalität des DLOGS nicht verstanden habe.
Kann mir jemand einen Tipp geben, was ich falsch mache, bzw. sagen, wo ich den Fehler suchen muss? Ich wäre euch äußerst dakbar!!!
ich bin gerade als zeimlicher SPS-Neuling dabei eine Prüfstandssteuerung mittels Wago 750 841 aufzubauen. Um die Messwerte auch digital erfassen zu können, habe ich mir in Codesys einen FB gebastelt, in dem die ganzen DLOG-Klamotten aus der OSCAT-Bibliothek drin sind und die Werte aufnehmen udn schreiben sollen.
Die Idee bzw. der Anwendungsfall ist folgender: Mittels der geschriebenen Visu wird der Prüfstand eingestellt und überwacht. Zu unregelmäßigen Zeiten soll eine Messung der Zustandsgrößen stattfinden und zwar 60 Sekunden lang jede Sekunde.
Soweit kein Problem, ich habe in die Visu einen Auslöser gebastelt, der einen TP1 anspricht, der wiederum den ENABLE-Input am DLOG_STORE_FILE_CSV für eine Minute anspricht. Dabei ist TRIGGER_T = 1.
Bis hierher funktioniert es sehr gut, sprich, die Daten werden auf des SPS abgespeichert und können z.B. mit TotalCommander abgezogen werden.
Jetzt das Problem:
Der Dateinahme besteht aus dem Datum und einer fortlaufenden Nummer, die bei jedem Klick auf Messung um 1 hochgezählt wird. Im Prinzip will ich also für jede Messung die ich mache eine Datei haben, die aus dem Datum und einer fortlaufenden Nummer besteht. Das funktioniert aber nur genau ein mal. Bei weiteren Messungen werden immer ZWEI Dateien in den Speicher der SPS geschrieben und zwar eine mit dem aktuellen Namen und auch mit Inhalt und eine mit dem vorherigen Namen (also Index). Die mit dem vorherigen Namen überschreibt also die zuvor aufgenommene Messdatei. Der Inhalt dieser ist dann auch immer nur die Überschrift der jeweiligen Columns. Nach n Messrehen hat man also n-1 Dateien, die quasi leer sind und nur de allerletzte ist brauchbar.
Ich habe 1000 Sachen ausprobiert mit Einschaltverzögerungen am DLOG_STORE_FILE_CSV , dem Hochzählen des INDEX zu unterschiedlichen Zeitpunkten usw. usw. Mitlerweile glaube ich, dass ich etwas grundsätzlich wichtiges an der Funktionalität des DLOGS nicht verstanden habe.
Kann mir jemand einen Tipp geben, was ich falsch mache, bzw. sagen, wo ich den Fehler suchen muss? Ich wäre euch äußerst dakbar!!!