Hallo alle,
Leider habe ich zu dem Thema nichts gefunden, sollte es was geben bitte verlinken:)
Ich ich nutze eine Wago 750 890 , codesys 2.3 und arbeite mit cfc, fup und ein ganz kleines bisschen mit St (bin aber recht neu auf dem Gebiet)
Es sollen zwei Messsysteme für Thermoelemte Typ K aufgebaut werden, dabei hat eins 60 und das andere 200 Messtellen.
Diese sollen in einer Frequenz von 10 Hz geloggt werden und es soll jede Minute eine Datei erzeugt werden.
Das ganze klappt in langsamen Geschwindigkeiten eigentlich ganz gut indem ich über einen Puls Generator einen CTU ansteuere, der die Sensorenanzahl Ausgibt und damit die Sensoren in einem array hochzählt.
Dieser Puls wird für den manuellen Trigger benutzt, ein Zeit triggern nutze ich dabei nicht am loggerbaustein.
Der im Array geschriebene Wert wird als globale an den Logger übergeben.
Ist die maximale Sensoranzahl erreicht wird der CTU auf 0 gesetzt und der alte Wert überschrieben.
Geloggt wird dabei die Zeit, die Sensornummer und die anliegende Temperatur.
Das ganze funktioniert bei der gewünschten Sensorabtastrate von 100ms pro Sensor garnicht, bei einer Abtastrate von 100ms pro Zyklus also 22S pro Sensor etwa 1,5 Zyklen danach werden die Messwerte teilweise zusammen in eine Zelle geschrieben
Z.b :
Zeit; nr; Temperatur
Zeitnr; Temperatur
Zeit;nrTemperatur
Wenn ich mir das array anschaue werden mir die Messwerte korrekt ausgegeben.
Ich nutze neben der network.lib noch eine lib zur Zeiterfassung welche mir die Systemzeit der sps wiedergibt (Komme aber gerade nicht auf den Namen).
Bereits versucht habe ich über mehrere DLOG Real Bausteine die Temperaturen einzeln zu erfassen und mit mehreren Spalten zu arbeiten.
Leider ergibt sich dabei ein ähnliches Problem.
Ich hab ebenfalls versucht den Speicherintervall der csv zu verlängern was keinen Einfluss auf den Fehler hatte.
Ich nehme an das aufgrund der ablaufreihenfolge eine kleine Zeitverzögerung entsteht, habe aber keine Idee wie ich diese eliminieren kann
Hat jemand Erfahrungen oder eine Idee die bei der Lösung dieses Problems helfen könnten?
Liebem Gruß
Tim
Leider habe ich zu dem Thema nichts gefunden, sollte es was geben bitte verlinken:)
Ich ich nutze eine Wago 750 890 , codesys 2.3 und arbeite mit cfc, fup und ein ganz kleines bisschen mit St (bin aber recht neu auf dem Gebiet)
Es sollen zwei Messsysteme für Thermoelemte Typ K aufgebaut werden, dabei hat eins 60 und das andere 200 Messtellen.
Diese sollen in einer Frequenz von 10 Hz geloggt werden und es soll jede Minute eine Datei erzeugt werden.
Das ganze klappt in langsamen Geschwindigkeiten eigentlich ganz gut indem ich über einen Puls Generator einen CTU ansteuere, der die Sensorenanzahl Ausgibt und damit die Sensoren in einem array hochzählt.
Dieser Puls wird für den manuellen Trigger benutzt, ein Zeit triggern nutze ich dabei nicht am loggerbaustein.
Der im Array geschriebene Wert wird als globale an den Logger übergeben.
Ist die maximale Sensoranzahl erreicht wird der CTU auf 0 gesetzt und der alte Wert überschrieben.
Geloggt wird dabei die Zeit, die Sensornummer und die anliegende Temperatur.
Das ganze funktioniert bei der gewünschten Sensorabtastrate von 100ms pro Sensor garnicht, bei einer Abtastrate von 100ms pro Zyklus also 22S pro Sensor etwa 1,5 Zyklen danach werden die Messwerte teilweise zusammen in eine Zelle geschrieben
Z.b :
Zeit; nr; Temperatur
Zeitnr; Temperatur
Zeit;nrTemperatur
Wenn ich mir das array anschaue werden mir die Messwerte korrekt ausgegeben.
Ich nutze neben der network.lib noch eine lib zur Zeiterfassung welche mir die Systemzeit der sps wiedergibt (Komme aber gerade nicht auf den Namen).
Bereits versucht habe ich über mehrere DLOG Real Bausteine die Temperaturen einzeln zu erfassen und mit mehreren Spalten zu arbeiten.
Leider ergibt sich dabei ein ähnliches Problem.
Ich hab ebenfalls versucht den Speicherintervall der csv zu verlängern was keinen Einfluss auf den Fehler hatte.
Ich nehme an das aufgrund der ablaufreihenfolge eine kleine Zeitverzögerung entsteht, habe aber keine Idee wie ich diese eliminieren kann
Hat jemand Erfahrungen oder eine Idee die bei der Lösung dieses Problems helfen könnten?
Liebem Gruß
Tim