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

Ergebnis 1 bis 6 von 6

Thema: Geschwindigkeitsvergleich S7-300/400

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Morgen allerseits,

    ich beschäftige mich gerade mit einem Vergleich der verschiedenen CPUs der S7-300/400er Reihe und hätte eine Frage theoretischer Natur.
    Mein Ziel ist es auszurechnen wie lange ein Zyklus der SPS dauert, abhängig davon welche Hardware eingesetzt wird. Im Prinzip wird der Rechenweg ja sehr gut von Siemens in den technischen Daten der CPUs im Kapitel 6.4 dargestellt.
    Was mir jetzt fehlt ist die unterschiedliche Bearbeitungszeit des Anwenderprogramms, abhängig von der CPU. Die Frage wäre, wie viel mal schneller wird ein Programm auf einer CPU 319 abgearbeitet dass, zum Beispiel, auf einer CPU 312 10ms dauert?

    Da mir leider die Technik fehlt um es einfach auszuprobieren, war mein Denkansatz folgender:
    Laut Datenblatt der CPUs haben die CPUs unterschiedliche Bearbeitungszeiten für Bit-, Wortoperationen und so weiter.
    Kann ich dann, in guter Näherung, davon ausgehen, dass wenn zB eine CPU 319 im Mittel 27mal (Mittelwert im Vergleich der 4 angegebenen Bearbeitungszeiten) schneller arbeitet als eine CPU 312, auch ein Programm 27mal schneller auf der CPU 319 abgearbeitet wird, oder ist dieser Ansatz zu naiv?

    Ich stecke leider nicht tief genug in der Programmierung um abzuschätzen wieviele Bausteine etc. zum Einsatz kommen, sondern stelle mir eher vor, dass man die Zykluszeit eines Programm auf einer vorhandenen Test-CPU auslesen und dann eine Abschätzung machen kann, wieviel mal schneller oder langsamer das selbe Programm auf einer anderen CPU abläuft.

    Hoffentlich konnte ich das Problem gut beschreiben, da ich noch neu in der SPS-Materie bin, bin ich für alle Anregungen dankbar.

    Grüße
    Zitieren Zitieren Geschwindigkeitsvergleich S7-300/400  

  2. #2
    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

    Im Mittel kannst du das sicherlich so machen. Abweichen werden die Werte immer, denn ja nach Anwendung kommt es darauf an welche Operationen am häufigsten verwendet werden. Manche Maschinen brauchen hauptsächlich Bitverarbeitung (UND, ODER etc.) andere, wie z.Bsp. in der Chemie werden Regelungen verwenden und wesentlich mehr Rechnen (Gleitkommazahlen, Festpunktzahlen multiplizieren usw.) Ich würde einmal den Mittelwert nutzen, wie du vorschlägst und noch in einem "worst case"-Szenario von der langsameren SPS den schnellsten und von der schnelleren SPS den langsamsten Wert.
    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

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

    cpunkts (12.05.2011)

  4. #3
    Registriert seit
    01.10.2007
    Ort
    Waiblingen
    Beiträge
    3.317
    Danke
    767
    Erhielt 536 Danke für 419 Beiträge

    Standard

    was in den Datenblättern der älteren CPUs drin steht, mag noch so einigermassen stimmen. Bei den neueren CPUs habe ich den Eindruck, dass die Datenblattangaben eher Richt- oder Garantiewerte sind. Meinem Gefühl nach sind die Dinger schneller, als das Datenblatt angibt.

  5. #4
    cpunkts ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    03.05.2011
    Beiträge
    3
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Dankeschön für die schnellen Antworten und die Bestätigung.
    Ich hab mich an der beschriebenen Lösung orientiert um erstmal ein paar "grobe" Richtwerte auszurechnen, hoffe in absehbarer Zeit kann ich die berechneten Werte auch mal auf verschiedener Hardware testen.

    Eine Abschätzung des "worst case" ist ne gute Idee, mal schauen was man da nochmal für Unterschiede erhält.

    Hat jemand schonmal in diese Richtung überlegt, gerechnet oder getestet und könnte ein paar Erfahrungen teilen?

  6. #5
    Registriert seit
    08.09.2006
    Beiträge
    170
    Danke
    4
    Erhielt 26 Danke für 16 Beiträge

    Standard

    Zitat Zitat von cpunkts Beitrag anzeigen
    Guten Morgen allerseits,

    ich beschäftige mich gerade mit einem Vergleich der verschiedenen CPUs der S7-300/400er Reihe und hätte eine Frage theoretischer Natur.
    Mein Ziel ist es auszurechnen wie lange ein Zyklus der SPS dauert, abhängig davon welche Hardware eingesetzt wird. Im Prinzip wird der Rechenweg ja sehr gut von Siemens in den technischen Daten der CPUs im Kapitel 6.4 dargestellt.
    Was mir jetzt fehlt ist die unterschiedliche Bearbeitungszeit des Anwenderprogramms, abhängig von der CPU. Die Frage wäre, wie viel mal schneller wird ein Programm auf einer CPU 319 abgearbeitet dass, zum Beispiel, auf einer CPU 312 10ms dauert?

    Da mir leider die Technik fehlt um es einfach auszuprobieren, war mein Denkansatz folgender:
    Laut Datenblatt der CPUs haben die CPUs unterschiedliche Bearbeitungszeiten für Bit-, Wortoperationen und so weiter.
    Kann ich dann, in guter Näherung, davon ausgehen, dass wenn zB eine CPU 319 im Mittel 27mal (Mittelwert im Vergleich der 4 angegebenen Bearbeitungszeiten) schneller arbeitet als eine CPU 312, auch ein Programm 27mal schneller auf der CPU 319 abgearbeitet wird, oder ist dieser Ansatz zu naiv?

    Ich stecke leider nicht tief genug in der Programmierung um abzuschätzen wieviele Bausteine etc. zum Einsatz kommen, sondern stelle mir eher vor, dass man die Zykluszeit eines Programm auf einer vorhandenen Test-CPU auslesen und dann eine Abschätzung machen kann, wieviel mal schneller oder langsamer das selbe Programm auf einer anderen CPU abläuft.

    Hoffentlich konnte ich das Problem gut beschreiben, da ich noch neu in der SPS-Materie bin, bin ich für alle Anregungen dankbar.

    Grüße
    Die Komplexität der aktuellen CPUs ist derart hoch, dass es nicht nur riesige Unterschiede zwischen den ca. 1400 Befehlen gibt, die eine S7 ausführen kann, sondern die Anordnung mehrere Befehle hintereinander Auswirkung auf die Geschwindigkeit hat.
    Unsere Messergebnisse zeigen folgendes:
    Als Referenz (Basiswert 1) eine
    SIEMENS 313C-2 PtP [6BF03] V2.6.11

    Inklusive Floating Point (Trigonometrie):
    SIEMENS 314C-2PN/DP [6EH04] V3.3.0 ist ca. 7.1 mal so schnell wie die Referenz
    SIEMENS 319-3PN/DP [3EL01] V3.2.1 ist ca. 78 mal so schnell wie die Referenz

    Ohne Floating Point (Trigonometrie):
    SIEMENS 314C-2PN/DP [6EH04] V3.3.0 ist ca. 4.3 mal so schnell wie die Referenz
    SIEMENS 319-3PN/DP [3EL01] V3.2.1 ist ca. 47 mal so schnell wie die Referenz

    Dieser Vergleich deckt keine Systemfunktionen ab.
    Es werden ein PID Regler, Komplexe Bit und Wortoperation (ein Großteil der Operationsliste), Funktionsaufrufe, Trigonometrische Funktionen und Kopierschleifen getestet.

  7. Folgender Benutzer sagt Danke zu Longbow für den nützlichen Beitrag:

    rostiger Nagel (12.05.2011)

  8. #6
    cpunkts ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    03.05.2011
    Beiträge
    3
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke dir für die Werte Longbow, das sind ja doch recht ordentliche Abweichungen von dem was man theoretisch erwarten würde.
    Aber solange man in der Praxis wenn dann schneller und nicht langsamer ist, sollte das bei der Abschätzung nicht stören.

    Die Zykluszeitberechnung ist ja nur ein Teil, inzwischen bin ich zur Reaktionszeitberechnung vorgestoßen und hab dort eine Frage, ich hoffe der kleine Themenwechsel ist ok.


    Und zwar ist laut wieder laut Datenblatt der CPUs zur Berechnung der Reaktionszeit (Seite 170 Tabelle 6-11) die Eingangs/Ausgangsverzögerung zu beachten.
    Im Beispiel auf Seite 176 wird hierfür die Wandlungszeit für einen Kanal einfach mit der Anzahl der aktiven Kanäle multipliziert. Soweit so gut.

    Jedoch steht im Datenblatt der Analogeingabegruppe AI 8x14 SM 331 (6ES7331-7HF0x-0AB0) nun etwas von einer Grundwandlungszeit pro Kanal und etwas von einer Grundausführungszeit der Baugruppe.

    Nun stellt sich mir die Frage: Was ist die Grundausführungszeit?
    Wenn ich für die genannte Baugruppe (Baugruppendaten Seite 328) die Grundwandlungszeit für alle Kanäle addiere würden etwa die angegebenen 0,42ms Grundausführungszeit herauskommen. Für eine andere Störspannungsunterdrückung ergäbe sich aber eine andere Grundausführungszeit der Baugruppe. Das macht auf mich den Eindruck als wäre die Wandlungszeit der Kanäle egal und nur die Ausführungszeit wäre relevant, davon ist in der Beispielrechnung aber nichts zu sehen.

    Wenn ich nun also die E/A-Verzögerund ausrechnen möchte, wie hängen Grundausführungszeit und Wandlungszeit zusammen.

    Entweder ich bin blind oder die Dokumentation von Siemens ist nicht ganz so konsistent..

Lesezeichen

Berechtigungen

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