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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 28

Thema: Optimierung Zykluszeit

  1. #1
    Registriert seit
    08.09.2009
    Beiträge
    7
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    kann mir jemand sagen wie ich die Zykluszeit meiner SPS optimieren kann? Welche Grundsätze und Regel sollten eingehalten werden um die Zykluszeit nicht unnötig zu erhöhen.

    Danke
    Zitieren Zitieren Optimierung Zykluszeit  

  2. #2
    Registriert seit
    05.03.2007
    Ort
    Lindlar
    Beiträge
    112
    Danke
    19
    Erhielt 20 Danke für 18 Beiträge

    Standard

    1. Wenig Code
    2. Wenig Gleitkommaoperationen
    3. Wenig Schleifen
    4. FCs oder FBs nur bei Bedarf aufrufen - aber Achtung!! der Zustand vom letzten Aufruf bleibt erhalten!
    5. Im Zweifel eine schnellere CPU

    Gruß Matthias
    IF Time < '09:00:00' THEN
    SELECT finger from right hand where ID=3
    END IF

  3. Folgender Benutzer sagt Danke zu Panzerknacker für den nützlichen Beitrag:

    schaltanlagen (08.09.2009)

  4. #3
    Registriert seit
    16.07.2007
    Ort
    Weyhe b. Bremen
    Beiträge
    214
    Danke
    23
    Erhielt 10 Danke für 10 Beiträge

    Standard

    Möglichst keine "Deadlock" Schleifen programmieren

    Externe Kommunikation auf mehrere Zyklen aufteilen... etc...
    Nur mit Wlan hat man Élan!

  5. Folgender Benutzer sagt Danke zu jackjones für den nützlichen Beitrag:

    schaltanlagen (08.09.2009)

  6. #4
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.252
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Programmteile, die keine schnelle Bearbeitung benötigen nicht zyklisch aufrufen, sondern zB in einem WeckOB oder zeitgesteuert- zB ein Analogwert wird i.A. reichen alle Sekunden einzulesen, ein (normaler) Temperaturregler wird alle 5s auch keinen Verlust der Regelgüte haben.

    Dies hat allerdings den Nachteil, dass die Zykluszeit nicht konstant ist.
    Ich denke das hängt sehr vom jeweiligen Programm und die Anforderung an dieses ab.

    Im Allgemeinen kümmer ich mich nur soweit darum, dass ich keine anderen Systeme plattmache: ZB Daten senden am Bus nur bei Änderung oder alle 10s. Normalerweise sind die SPSn ohnehin sehr schnell.
    Hast Du einen konkreten Anwendungsfall, dh ein fertiges Programm?

    lG
    Karl

  7. #5
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.220
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Mal so einige Sachen:

    1. Keine Schleifen oder zumindest nur kurze Schleifendurchläufe.
    2. Abhängig von der CPU können bestimmte Berechnungen sehr lange dauern, z.Bsp. bei älteren 315 Berechnungen mit Realzahlen. Wenn das häufig gemacht wird, unbedingt mal die Bearbeitungszeiten der einzelnen Operationen und Befehle ansehen.
    3. Stringoperationen arbeiten i.d.R. mit 255 Byte-Strings, das kann sich ebenfalls summieren.
    4. Zugriffe auf extrem verschachtelte DB-Variablen benötigen wohl auch sehr viel Zeit. Wenn möglich DB mit "flachen" Strukturen verwenden, außerdem benötigen solche DB sehr viel mehr Ladespeicher.
    5. Im Notfall kann man natürlich auch eine schnellere SPS einsetzen z.Bsp die VIPA Speed7.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  8. Folgende 2 Benutzer sagen Danke zu Ralle für den nützlichen Beitrag:

    Panzerknacker (08.09.2009),schaltanlagen (08.09.2009)

  9. #6
    schaltanlagen ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.09.2009
    Beiträge
    7
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke schonmal,

    Ja habe ein fertiges Programm, sollte aber aufgrund von Datenaufzeichnung etwas schneller sein. Kann ich was erreichen wenn ich die Profibusadressen und oder die FB/FC/DB - Nr. niedrig halte?

    MFG

  10. #7
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.220
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Zitat Zitat von schaltanlagen Beitrag anzeigen
    Danke schonmal,

    Ja habe ein fertiges Programm, sollte aber aufgrund von Datenaufzeichnung etwas schneller sein. Kann ich was erreichen wenn ich die Profibusadressen und oder die FB/FC/DB - Nr. niedrig halte?

    MFG
    Nein, glaub ich nicht!
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  11. #8
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.718
    Danke
    729
    Erhielt 1.158 Danke für 969 Beiträge

    Standard

    Zitat Zitat von schaltanlagen Beitrag anzeigen
    Danke schonmal,

    Ja habe ein fertiges Programm, sollte aber aufgrund von Datenaufzeichnung etwas schneller sein. Kann ich was erreichen wenn ich die Profibusadressen und oder die FB/FC/DB - Nr. niedrig halte?

    MFG
    Die FC/FB/DB-Nummern bzw. die Profibusadresse haben nichts mit der Zykluszeit zu tun
    wenn, dann höchstens die Anzahl derer

  12. #9
    Registriert seit
    05.03.2007
    Ort
    Lindlar
    Beiträge
    112
    Danke
    19
    Erhielt 20 Danke für 18 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    Mal so einige Sachen:
    4. Zugriffe auf extrem verschachtelte DB-Variablen benötigen wohl auch sehr viel Zeit. Wenn möglich DB mit "flachen" Strukturen verwenden, außerdem benötigen solche DB sehr viel mehr Ladespeicher.
    Hallo Ralle,
    was verstehst du unter extrem verschachtelt? Ist mir noch garnicht aufgefallen das der Zugriff darauf mehr Zeit braucht und es auch mehr Ladespeicher kostet!? Wie bekommt man denn offline die Größe für den benötigten Ladespeicher heraus? angezeigt wird ja nur der Arbeitsspeicher. Habe gerade mal zwei DBs angelegt. Einen mit 6x array[1..10] of int je eine ebene tiefer mit STRUCT verschachtelt und einen mit einem array [1..60] of int - laut SIMATIC Manager sollen die beiden gleich groß im Arbeitsspeicher sein.
    Aber auch ich lasse mich natürlich gerne eines besseren belehren

    Gruß,
    Matthias
    IF Time < '09:00:00' THEN
    SELECT finger from right hand where ID=3
    END IF

  13. #10
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.718
    Danke
    729
    Erhielt 1.158 Danke für 969 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Panzerknacker Beitrag anzeigen
    ... Wie bekommt man denn offline die Größe für den benötigten Ladespeicher heraus? ...
    Wie können Sie die Größe des Lade- und Arbeitsspeichers ermitteln?

Ähnliche Themen

  1. Zykluszeit
    Von Maurice im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 17.09.2011, 15:19
  2. Energie-Optimierung
    Von david.ka im Forum Programmierstrategien
    Antworten: 1
    Letzter Beitrag: 27.04.2011, 21:05
  3. Zusammenhang Zykluszeit Profibus Zykluszeit SPS
    Von Peltzerserbe im Forum Feldbusse
    Antworten: 1
    Letzter Beitrag: 28.04.2008, 22:09
  4. S7-317 2-DP Zykluszeit
    Von gustave im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 23.06.2007, 10:19
  5. Zykluszeit in S5
    Von PeterPan im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 04.05.2006, 17:12

Stichworte

Lesezeichen

Berechtigungen

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