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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Zyklusszeiterhöhung bei Onlinestatus!?!

  1. #1
    Registriert seit
    23.01.2006
    Beiträge
    75
    Danke
    17
    Erhielt 7 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    hallo,

    wie schon im topic erwähnt, habe ich ein für mich unerklärliches phänomen, wenn ich mir den online-status eines bestimmten programmteils betrachte, kommt es zu einer zy-zeit-spitz von >1800ms... wie ist das zu erklären.

    am rande: ich habe keine weiteren programmteile auf der cpu am laufen. im normalfall liegt die zy-zeit bei 5-8ms. bei den code handelt es sich um eine schleife die in einen fb liegt (instanzbereich wird durch die schleife genuzt).
    Zitieren Zitieren Zyklusszeiterhöhung bei Onlinestatus!?!  

  2. #2
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Eine gewisse Zykluszeiterhöhung ist beim Status mehr oder weniger normal, aber nicht in diesem Umfang.
    Bei welcher CPU tritt dieses Phänomen so gravierend auf? Wie oft wird die Schleife durchlaufen? Wird der Status wirklich pro Schleifendurchlauf gesammelt? Wie wird die Zykluszeit beeinflusst, wenn sich die Schleifenzahl ändert?
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

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

    Standard

    Im Anhang mal den fraglichen Auszug aus dem Handbuch ...

    weitere Fragen: welche CPU? warum spricht der Watchdog nicht an?
    Angehängte Grafiken Angehängte Grafiken

  4. #4
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.719
    Danke
    729
    Erhielt 1.159 Danke für 970 Beiträge

    Standard

    Im letzten Satz von Perfektionist seinen Anhang steht ja, das Schleifen die Zykluszeit massiv erhöhen können. Wie oft durchläufst du deine Schleife denn.

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

    Standard

    Hallo!

    Man sollte hier zwei Punkte unterscheiden:



    Hardwarebasierende SPS (S7-400; S7-318; SPEED7) und
    Compilerbasierende SPS (S7-3xx ohne 318 )

    Die Compilerbasierenden brauchen zum Onlinestatus deutlich mehr Zeit als die Hardwarebasierenden, bei den 31xC kann es schon mal in den zweistelligen ms Bereich gehen (ohne Schleife).
    Die Hardwarebasierenden brauchen üblicherweise unter 250µs für einen normalen Statusbaustein (ohne Schleife).



    Prozessbetrieb und Testbetrieb:
    Im Prozessbetrieb versucht die SPS bzw. das Step7 möglichst wenig die Zykluszeit bei Status zu beeinflussen, deswegen wird der Status z.B. an manchen Sprüngen nicht angezeigt und es wird nur der ERSTE Schleifendurchgang einer Schleife angezeigt!!!

    Im Testbetrieb zeigen die S7-400 und S7-318 deutlich mehr an und
    es wird der LETZTE Schleifendurchgang einer Schleife angezeigt, hierzu ist es notwendig, dass ALLE Schleifendurchgänge mitprotokolliert werden.
    Kostet richtig viel Zeit! (SPEED7 macht es nicht, wäre möglich, war aber noch kein Bedarf, bei den S7-3xx weiß ich es nicht)


    Gruß






    Zitat Zitat von Lockenfrosch Beitrag anzeigen
    hallo,

    wie schon im topic erwähnt, habe ich ein für mich unerklärliches phänomen, wenn ich mir den online-status eines bestimmten programmteils betrachte, kommt es zu einer zy-zeit-spitz von >1800ms... wie ist das zu erklären.

    am rande: ich habe keine weiteren programmteile auf der cpu am laufen. im normalfall liegt die zy-zeit bei 5-8ms. bei den code handelt es sich um eine schleife die in einen fb liegt (instanzbereich wird durch die schleife genuzt).

  6. #6
    Registriert seit
    23.01.2006
    Beiträge
    75
    Danke
    17
    Erhielt 7 Danke für 4 Beiträge

    Standard

    cpu: 315-2AG10
    Schleifendurchläufe: 128

    die anzahl der durchläufe ist nicht wirklich hoch und offline habe ich keine zeit probs, also würde ich den punkt ausschliessen.
    allerdings finde ich longbows beitrag sehr interessant, nur habe ich mal den gesamten code in ein FC geschmissen und dann läuft alles reibungslos..

    btw: hier mal der code, vielleicht sieht ja jemand einen gravierenden fehler bzw. die ursache...

    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    //-------------------------------//Schleifendurchläufe laden =>länge Datensatz)
    L 128
    //-------------------------------//Rücksprung vom Schleifenende
    SCH1: T #loopcounter
    //-------------------------------//Adressregister Quelle laden
    L #EKS_PEB_Start //PEB Beginn Adressbereich
    +I //Rechenoperation
    L 1 //offset 1 byte
    -I //Rechenoperation
    SLW 3 //schiebe links um 3
    LAR1 //Adressregister 1
    //-------------------------------//PEB Dateninhalt wegschreiben
    L PEB [AR1,P#0.0] //PEB Dateninhalt
    T #PEB_temp //Temp Speicher
    //-------------------------------//Adressregister Ziel laden
    L 14 //Anfangsadresse Zielbereich
    L #loopcounter //Schleifenzähler
    +I //Rechenoperation
    L 1 //offset 1 byte
    -I //Rechenoperation
    SLW 3 //schiebe links um 3
    LAR1 //Adressregister 1
    //-------------------------------//Transfer PEB X -> DBB X
    L #PEB_temp //Temp Speicher
    T DIB [AR1,P#0.0] //Zieladresse
    //-------------------------------//Rücksprung zum Transfer PEBX->DBBX
    L #loopcounter
    LOOP SCH1
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Geändert von Lockenfrosch (19.02.2008 um 10:29 Uhr)

  7. #7
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.719
    Danke
    729
    Erhielt 1.159 Danke für 970 Beiträge

    Standard

    Mal eben eine andere Frage
    du schreibst hier in einen Instanzdatenbaustein,

    Code:
    ...
    T DIB [AR1,P#0.0] //Zieladresse
    ...
    dein Code liegt aber jetzt in einen FC, wo öffnest du den DB und warum immer noch DIB und nicht DB?

  8. #8
    Registriert seit
    23.01.2006
    Beiträge
    75
    Danke
    17
    Erhielt 7 Danke für 4 Beiträge

    Standard

    muh,

    das ist mein originalcode... die fc version ist natürlich angepasst um das ganze lauffähig zu machen.
    Geändert von Lockenfrosch (19.02.2008 um 10:47 Uhr)

  9. #9
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.719
    Danke
    729
    Erhielt 1.159 Danke für 970 Beiträge

    Standard

    Zitat Zitat von Lockenfrosch Beitrag anzeigen
    muh,

    das ist mein originalcode... die fc version ist natürlich angepasst um das ganze lauffähig zu machen.
    Wer soll das wissen, das schreibst du vorher nirgends

  10. #10
    Registriert seit
    24.11.2006
    Ort
    57072 Siegen
    Beiträge
    466
    Danke
    59
    Erhielt 121 Danke für 109 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Lockenfrosch Beitrag anzeigen
    cpu: 315-2AG10
    ...
    btw: hier mal der code, vielleicht sieht ja jemand einen gravierenden fehler bzw. die ursache...

    L #loopcounter
    LOOP SCH1
    Hallo Locke,

    wenn die CPU eine ältere Firmware hat (< 2.0.5 oder so),
    dann kann der LOOP Befehl Problemen mit der Zykluszeit verursachen.

    Das ist ein Firmwarebug, der mittlerweile aber schon für alle CPU
    behoben sein sollte.

    Such mal in der Simatic Customer-Support FAQ nach
    "Loop Zykluszeit", da wirst du ne Menge Infos und auch
    Firmwareupdates finden.

    CU

    Jürgen
    IBN-Service

    .

    Zur Beachtung:
    Ich distanziere mich ausdrücklich von allen Aussagen in diesem Forum
    welche nicht von mir stammen und mache mir deren Inhalte nicht zu eigen.


    www.ibn-service.com

  11. Folgender Benutzer sagt Danke zu IBN-Service für den nützlichen Beitrag:

    Harry (04.11.2008)

Ähnliche Themen

  1. Onlinestatus
    Von rnovak im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 27.04.2008, 10:02

Lesezeichen

Berechtigungen

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