Hauptmenü

DLOG_STORE_FILE_CSV

Begonnen von gravieren, 24. November 2011, 20:30:12

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 2 Gäste betrachten dieses Thema.

gravieren

Hi

Kurze Frage zu o.g. Baustein.


Ich erhalte bei dem Demo-Projekt ca. 12-13 Zeilen EXCEL-Messwerte  --> O.K.

Gemessen wird alle 5 Sekunden.

Ich hätte gerne alle 10 minuten eine Messung und alle 3600 Sekunden soll eine EXCEL-Datei erzeugt werden.

TRIG_M und TRIG_T wurden angepasst jedoch ohne Erfolg.

Habe ich da irgendwo einen Denkfehler  ?



2. Z.b. DLOG_REAL --> DELTA wird im Handbuch nicht erklärt.


Danke vorab

Gruß Karl

peewit

TRIG_T = 600 macht alle 10 minuten einen aufzeichnung

wenn die aktuelle zeit (in sekunden betrachtet), durch TRIG_T ohne rest geteilt werden kann, wird ein aufzeichnung aufgelöst

TRIG_M sollte eigentlich nur dazu dienen um jederzeit nach wunsch per puls eine aufzeichnung auflösen zu können.
(wenn man z.b. keine zeit sondern event gesteuerte aufzeichnung nutzen möchte)
TRIG_T und TRIG_M funktionieren aber parallel !


damit alle 3600 sekunden (jede stunde) eine neue datei erzeugt wird
must du entweder selber jede stunde den dateinamen ändern, natürlich so das es sinn macht

aber viel intelligenter ist die automatische variante mit dem dynamischen dateinamen

FILENAME := 'LOG_DATA_#N.csv'

wenn es gerade 10:30h ist, dann würde der dateiname 'LOG_DATA_10.csv' sein
damit wird automatisch jede stunde ein neuer dateiname erzeugt, und die daten werden dahin umgeleitet


DLOG_REAL -> delta fehlt in dokumentation
du verwendest die "nicht veröffentlichte" Version 1.20 und benutzt die doku 1.12 dazu
(siehe anhang)


[gelöscht durch Administrator]

gravieren

#2
Hi peewit


Wäre natürlich schön, wenn man mit Parametern diese eigentliche Aufgabe erledigen könnte.

Wäre doch etwas "gängiges" oder ?
Also z.b. Solaranlage, alle 15 sekunden die Werte aufzeichnen.
Nach 3600 sekunden soll eine neue Datei erzeugt werden.



Gruß Karl

peewit

#3
ich muss mich leider wiederholen

es geht doch mit parametern

diese einstellungen machen das was du willst

TRIG_T = 15
FILENAME := 'LOG_DATA_#N.csv'

dann bekommst du insgesamt 24 dateien (pro tag) die immer wieder pro stunde überschrieben werden

achtung !
im filenamen steckt ein '#N' dass wird durch die aktuelle stunde ersetzt, und ergibt automatisch sich ändernde dateinamen
die kürzel kannst du bei DT_TO_STRF nachlesen

gravieren

Hallo Peewit


Das habe dann mißverstanden.

Werde gleich mal testen.


Danke vorab.

P.S.  Das PDF ist jetzt lesbar.


Gruß Karl

gravieren

Hi Peewit

Funktioniert.     :)



FILENAME := 'LOG_DATA_#A.csv'  --> Aufzeichngsdauer 1 Minute
FILENAME := 'LOG_DATA_#N.csv'  --> Aufzeichngsdauer 1 Stunde

Das könnte noch in die Dokumentation  ?


Danke

Gruß Karl

peewit

ist doch eine klasse sache oder ?

in der doku von diesen baustein ist ein verweis auf den baustein DT_TO_STRF dokumentiert
und dort sind dann auch die möglichen kürzel dokumentiert
das verhindert redundante dokumentation !

gravieren

Hi


Zitat von: peewit in 25. November 2011, 23:58:46
ist doch eine klasse sache oder ?
Ja, sogar SuperCool   :-*


Zitat von: peewit in 25. November 2011, 23:58:46
in der doku von diesen baustein ist ein verweis auf den baustein DT_TO_STRF dokumentiert
und dort sind dann auch die möglichen kürzel dokumentiert
das verhindert redundante dokumentation !
O.K.   Vom Prinzip her schon.

Nur man ahnt eigentlich nicht, dass durch ändern des Filenamen die Aufzeichnungslänge verändert.
(Ich zumindest nicht  :)  )


Danke Gruß Karl

gravieren

Hi

Ich arbeite nun mit der DELTA   und  TRIG_M FALSE.


Die Aufzeichnungen funktionieren anscheinend, jedoch die CT+LF hinter den Sätzen fehlen.

(Mache ich was falsch)


Danke Karl

[gelöscht durch Administrator]

peewit

kontrolle doch mal die baustein aufrufreihenfolge
sollte die passen, dann gib mir bitte ein möglichst einfaches test-projekt wo das problem weiterhin besteht
dann werde ich sicherlich auch den grund finden ...


gravieren

#10
Hi

Reihenfolge nach Datenfluß.   -->  !


Grundsätzlich nur ein paar REAL Variablen.


Zeit wird separat ausgelesen.


P.S:   750-881  --> Dein Example läuft jedoch richtig.



P.P.S:  Reicht dieses Example, oder soll ich dir ein komplette Beispiel machen  ?


Danke

Gruß Karl

[gelöscht durch Administrator]

peewit

#11
hallo

wenn ich dein programm nehme funktioniert es auch, jedoch hast du nicht die gleichen bedingungen wie ich.
da dein beispiel werte von aussen benötigt (uhrzeit und prozesswerte)

problem ist eben solange es bei mir funktioniert , kann ich auch keinem problem nachgehen

du müsstest das original-demo programm nehmen, und so anpassen das der fehler wieder passiert

aber alle variablen müssen lokal im programm produziert werden selbst du uhrzeit solltest du nicht von extern holen
ansonsten haben wir nicht die gleichen bedingungen, darum verwende ich immer die RTC2 softclock

tritt der fehler nur auf wenn du delta benutzt ?
entferne mal alle delta und teste
dann gibst du einen delta hinzu usw....

irgendwann muss es dann doch anders werden ....


meine test-textdatei ist im anhang, da habe ich einen realwert zyklisch um 0.01 erhöht, damit das delta öfters auflöst
und leider ist kein problem erkannbar

-------------------------
kannst du mal online bei dir folgendes nachsehen

welchen wert hat X.ID_MAX
und eventuell mal von der variable "n" im DLOG_STORE_FILE_CSV eine traceaufzeichnung machen

meiner vermuting ist das der interne X.ID_MAX zähler nicht stimmt
dieser zähler wird im ersten zyklus automatisch aktiviert

hast du eventuell online programmänderungen gemacht
mach mal einen sps-reset und download + start  und teste nochmal


[gelöscht durch Administrator]

gravieren

Hi


>hast du eventuell online programmänderungen gemacht
>mach mal einen sps-reset und download + start  und teste nochmal

Ja, etliche Programmänderungen und mit "Online-Change".


Bereinigen und komplett neu erzeugen und Reset der Baugruppe.


Jetzt läuft es.   :)

:'( Sorry, wieder umsonst Rabatz gemacht.  :'(


Nochmals großen Dank.


Gruß Karl

peewit

#13
hallo

hauptsache es funktioniert jetzt, und es war ja nicht umsonst
ich habe erkannt das dies bei onlineänderungen passieren kann

somit werde den baustein etwas optimieren so das sich dieses problem nach dem online änderungen von selber wieder repariert.
und eventuell noch einen hinweis in die doku geben .....

wenn du ideen anregungen dazu hast, bitte mitteilen

X-User

Hallo liebe Oscat-User,


nun muss ich mich auch zu diesem Thema austauschen.
Möglicherweise stehe ich etwas auf dem Schlauch...
Ich würde gerne alle 15min eine CSV-Datei erstellen und per FTP versenden.
In dieser CSV soll auch nur alle 15min ein Wert eingetragen werden.
Für den 15min Eintrag gebe ich die TRIG_T 900 vor.
Was aber gebe ich für die 15min CSV im Filename ein?

Vielen Dank für Eure Hilfe

Gruß

PS: FTP-Versand funktioniert wunderbar aber die CSV alle 15min leider nicht.