Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 4 von 4

Thema: TC3 schreiben von CSV dateien optimieren

  1. #1
    Registriert seit
    17.02.2016
    Beiträge
    24
    Danke
    1
    Erhielt 2 Danke für 2 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Forum,

    ich habe eigentliche nur eine kurze Frage an euch.
    Bevor ich mein ganzen Code um sonst Ändere möchte ich gern eine zweite Meinung wissen.

    Situation,
    ich habe ein Messsystem mit mehreren Prüflingen. Alle Prüflinge werden im 1 sekundentakt aktualisiert und berechnungen durchgeführt.
    Diese ergebnisse möchte cih nun (eigentlich gern im Sekundentakt) auch in eine CSV schreiben. Im einsatz ist eine CP6606 mit Display (schön klein und kompakt)
    Da jeder Prüfling seine eigene CSV bekommt, habe ich es bisher so gelöst.

    Im sekundentakt, nach dem die Messwerte werfasst sind, wird nun mein CSV schreiben angestoßen

    Prüfling := 0
    FB aufruf - öffne - schreibe - schließe csv - warte bis fertig
    erhöhe Prüflingum 1
    FB aufruf - öffne - schreibe - schließe CSV- warte bis fertig
    erhöhe Prüflingum 1
    FB aufruf - öffne - schreibe - schließe CSV- warte bis fertig


    Mit dieser Methode komme ich aber bei 30 Prüflingen nur auf ein intervall von 4 Sekunden.



    Meine Frage:
    ist es sinnvoll den FB zum schreiben der Datei mit jedem Prüfling zu instanzieren und bei ausführbefehl zum schreiben einer CSV mit Hilfe iener FOR Schleife alle Instanzen des FB mit einmal aufzurufen?

    FOR
    FB aufruf - öffne - schreibe - schließe csv
    ENF_FOR

    anschließend Warte bis alles Fertig ist.

    In beiden Varianten muss och warten bis die CSV geschrieben wurde, bevor ich eine Neue Datei schreiben kann.
    in der Variante mit der FOR Schleife, werden aber gleich mehrere Befehle zum schreiben an mein TWinCat System gesendet. Hier weiß ich nicht, ob es "Überfordert " werden kann und ich eine Zyklusüberschreitung bekomme?


    Bevor ich meinen Code Ändere und in ein laufendes System eingreife würde ich gern eure Meinung wissen.


    PS: zum schreiben einer CSV Datei habe ich einen FB geschrieben, welcher folgender maßen arbeitet
    1. überprüfe ob Datei vorhanden ist (3 Zyklen)
    2. öffne Datei (2 Zyklen)
    3. wandle Messwerte um (1 Zyklus)
    4. schreibe Messwerte (3 Zyklen)
    5 schließe Datei (2 Zyklen)

    ggf. kann dies auch etwas länger werden, wenn die Datennänge größer wird (aktuell 30Messwerte pro eintrag)
    Zitieren Zitieren TC3 schreiben von CSV dateien optimieren  

  2. #2
    Registriert seit
    25.11.2010
    Ort
    OWL
    Beiträge
    734
    Danke
    27
    Erhielt 161 Danke für 139 Beiträge

    Standard

    Du kannst ruhig 30 Instanzen Deines FBs gleichzeitig aufrufen. Der Dateizugriff an sich belastet den SPS-Zyklus nicht, sondern wird asynchron dazu über ADS abgewickelt. Der ADS-Server wird die Zugriffsanforderungen natürlich auch sequentiell bearbeiten, aber er muss dabei nicht mehr auf den SPS-Zyklustakt warten und wird - so hoffe ich - die Wartezeiten bis zur Beendigung eines ADS-Kommandos nutzen, um schon das/die nächste(n) zu starten. Wie schnell das Ganze tatsächlich wird, wirst Du nur durch Ausprobieren feststellen können.

  3. #3
    Minehunter ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.02.2016
    Beiträge
    24
    Danke
    1
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Vielen Dank für deine Antwort, werde nächste Woche einmal versuchen dies zu testen.

  4. #4
    Registriert seit
    21.02.2014
    Ort
    Sachsen-Anhalt
    Beiträge
    1.394
    Danke
    222
    Erhielt 226 Danke für 208 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wielang ist den der Testzyklus? Möglicherweise kannst Du das ganze in Arrays halten und die Filezugriffe danach machen. Das Array kann ja per NOVRAM ausfallsicher gepuffert werden.

    Alternativ pufferst Du die Schreibzugriffe im NOVRAM bis zu einer bestimmten Größe und schreibst dann in einem Rutsch. 1 Byte auf Flash schreiben dauert in der Regel genauso lange wie ein (Hardware)Block, wegen des vorausgehenden Löschens. Mal ganz von der Lebensdauer des Flashmediums ab...

    Ich setze jetzt rotzfrech voraus, das Dein CP die NOVRAM-Option hat.

Ähnliche Themen

  1. TC3 Strukturen in CSV Datei schreiben
    Von Minehunter im Forum CODESYS und IEC61131
    Antworten: 8
    Letzter Beitrag: 01.03.2016, 22:06
  2. Ablageort von .CSV Dateien
    Von anze im Forum HMI
    Antworten: 0
    Letzter Beitrag: 26.11.2015, 14:39
  3. Mehrere csv-Dateien kopieren
    Von Hausen im Forum HMI
    Antworten: 4
    Letzter Beitrag: 06.08.2010, 13:18
  4. Eingabemaske für csv - Dateien
    Von CrazyCat im Forum PC- und Netzwerktechnik
    Antworten: 4
    Letzter Beitrag: 16.12.2005, 08:48
  5. CSV - Dateien
    Von Mr. T im Forum HMI
    Antworten: 8
    Letzter Beitrag: 05.03.2005, 11:38

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •