Schreiben von Messdaten in eine Textdatei

Anonymous
2005-11-06
2009-07-18
  • Anonymous - 2005-11-06

    Originally created by: Gast

    Hallo Zusammen!

    Ich würde gerne Daten, die ich in einem Array sammle als Textfile ausgeben.

    Gibt es für diesen Fall schon eine vorgefertigte Routine oder muss man die Umsetzung, der verschiedenen Formate (wie Real,Dword, etc.) selbst vornehmen, um sie dann mit Hilfe der Routinen FILEOPEN, FILEWRITE, FILECLOSE auszugeben?

    Da ich gerade meine ersten Programmiererfahrungen in ST sammle, sehe ich mich noch nicht recht in der Lage so etwas selbst zu schreiben.

    Ich habe z.Z. die Bibliotheken von TwinCat PLC zur Verfügung.

    Vielen Dank im vorraus!

    Björn Wieschendorf

     
  • Anonymous - 2005-11-07

    Originally created by: Frank Hailer

    Hallo Björn

    Ich habe dieser Antwort zwei Beispiele zum Download angefügt, in denen beispielhaft in eine Datei geschrieben wird (einmalig erzeugen + anfügen). Die Einträge in der erzeugten Datei sind kommagetrennt (CSV) und können somit einfach in MS Excel geöffnet und bearbeitet werden. Die vorherige Konvertierung der zu schreibenden Werte in einen String geschieht darin ebenfalls.

    MfG Frank Hailer

    CSV Datei einmalig.zip [4.99 KiB]

    CSV Datei Anfügen.zip [5.16 KiB]

     
  • B.wieschendorf - 2005-11-07

    Vielen Dank!

    Die Beispiel Dateien haben mir sehr weiter geholfen, allerdings habe ich festgestellt, daß CoDeSys und TwinCAT syntaktisch nicht immer ganz übereinstimmen. Das Forum finde aber klasse!

    Gruß Björn

     
  • Auwaddel - 2006-04-25

    Hallo,

    ich habe ein ähnliches Problem:

    Meine Wago-Steuerung soll irgenwo im Netzwerk hängen, Messwerte aufnehmen und diese in eine Datei schreiben.

    Kann ich intern auf dem 841-Controller eine Datei anlegen u. beschreiben oder noch besser mit dem 841 auf eine Datei auf einem Netzlaufwerk zugreifen?

    vielen Dank im Vorraus!

    Fabian Lebherz

     
  • Oberchefe - 2006-04-27

    Einfacher wäre vielleicht die Werte in der SPS temporär abzulegen und dort regelmäßig abzuholen (Visual Basic + DLL).

     
  • Harzer - 2006-04-30

    Frank Hailer hat geschrieben:
    Hallo Björn
    Ich habe dieser Antwort zwei Beispiele zum Download angefügt, in denen beispielhaft in eine Datei geschrieben wird (einmalig erzeugen + anfügen). Die Einträge in der erzeugten Datei sind kommagetrennt (CSV) und können somit einfach in MS Excel geöffnet und bearbeitet werden. Die vorherige Konvertierung der zu schreibenden Werte in einen String geschieht darin ebenfalls.
    MfG Frank Hailer

     
  • Sir Wane - 2008-11-12

    Oberchefe hat geschrieben:
    Einfacher wäre vielleicht die Werte in der SPS temporär abzulegen und dort regelmäßig abzuholen (Visual Basic + DLL).

    Hallo Obercheffe,

    hast Du dafür ein Beispiel? Ich schreibe gerade an meiner Abschlussarbeit.

    Die Messwerterfassung würde 24h 7 Tage die Woche laufen. Ich arbeite mit mehreren WAGO 750-841 welche über einen Switch mit einem Server kommunizieren. Ich habe das ganze so realisiert das die Messwerte alle 300ms gesammelt und auf der Steuerung gespeichert werden und dann alle 15min mit dem Beispiel von WAGO (WAGO LIB FTP) an den FTP Server gesendet und dort abgespeichert werden.

    Was wäre denn der Vorteil einer DLL und hast Du dafür ein Beispiel?

    Danke für die Hilfe

    Sir Wane

     
  • gravieren - 2008-11-12

    Die Messwerterfassung würde 24h 7 Tage die Woche laufen. Ich arbeite mit mehreren WAGO 750-841 welche über einen Switch mit einem Server kommunizieren.

    Ich habe das ganze so realisiert das die Messwerte alle 300ms >gesammelt und auf der Steuerung gespeichert werden

    Ist der Schreibvorgang ausreichend schnell ?

    Wago 750-841 --> Ist KEIN PC mit schneller Festplatte !

    und dann alle 15min mit dem Beispiel von WAGO (WAGO LIB FTP) an >den FTP Server gesendet und dort abgespeichert werden.

    Kein Problem.

     
  • Sir Wane - 2008-11-14

    Hm muss ich checken.

    Ich lasse mir einen Zeitstempel schreiben, leider ohne ms sondern nur sec.. Allerdings werden mir pro sec. 3 bzw 4 Werte angezeigt, was ja an sich stimmen würde.

     
  • Speicherzelle - 2008-11-14

    Sir Wane hat geschrieben:
    Hm muss ich checken.
    Ich lasse mir einen Zeitstempel schreiben, leider ohne ms sondern nur sec.. Allerdings werden mir pro sec. 3 bzw 4 Werte angezeigt, was ja an sich stimmen würde.

    Hallo,

    habe so ein Beispiel mal im I-Net

    URL : http://wagobuero.dyndns.org

    dort speicher ich die Daten in eineer CSV Datei auf der CPU ab.

    Mann braucht sie dann nur noch per FTP an eine beliege Addi schicken.

    mfg

    Speicherzelle

     
  • Sir Wane - 2008-12-01

    Hallo,

    ich hab jetzt ein bisschen rum probiert und bekomme es aber leider nicht hin meine Messwerte nicht als String (ASCII Formatiert) sondern als BYTE zu schreiben.

    Rein aus Platzgründen wäre das ganz nett, da ich einen WORD Wert habe und so anstatt der 2 BYTE 5 BYTE brauche.

    Hat jemand eine Idee wie ich sowas realisieren kann?

     
  • Anonymous - 2009-07-18

    Originally created by: nym-J 3x 1,5

    Hallo habe die beiden Dateien CSV Datei ... .zip herutergeladen und mal angeschaut ich bin noch ST-Neuling vermute aber das ich das soweit verstanden habe. Aber welchen Pfad muss ich angeben wenn ich direkt auf dem Flash meiner Wago 750-841 speichern möchte.

     
  • Matze001 - 2009-07-18

    oder bei so großen Datenmengen (alle 300ms) auf eine Mysql-Datenbank auf den Server zurückgreifen.

    Siehe hier:

    l viewtopic.php?t=1914 l

    ich habe es erfolgreich im Einsatz, schreibe aber nur alle 10min meine Daten da sich diese nicht besonders ändern.

    Habe aber bis zu nem 1sekunden Takt runter getestet, 300ms hab ich noch nicht probiert.

    MfG

    Marcel

     
  • Anonymous - 2009-07-18

    Originally created by: nym-J 3x 1,5

    Hallo,

    ich habe es mal mit der SysLibFile.lib und der WagoLibFTP.lib und den Beispielprojekten probiert. Das Funktioniert ist auch so wie ich mir das vorstell. Also zumindestens das ablegen der txt. File im Flash.

    Ich habe vor 2 REAL Werte ,in diesem Fall Temperaturen, mit Zeitstempel alle halbe Stunde aufzuzeichen und nach Bedarf herunter zu laden und dann mit EXCEL zu betrachten bzw. auszuwerten. Aber da stoß ich doch schnell an die grenzen meines Wissens über ST. Lernen in der Berufschule leider fast ausschließlich FUP und auch nur mit dem SIMATIC Manager. Ein leicht nachzuvollziehendes Beispiel wäre natürlich super. Datenverarbeitung.pro von Wago versteh ich noch nicht ganz.

    PS.: Danke für die schnellen Antworten

     

Log in to post a comment.