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

Ergebnis 1 bis 6 von 6

Thema: S5 wird immer träger?

  1. #1
    Registriert seit
    11.07.2005
    Beiträge
    13
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Gemeinde,

    ich bin dabei mit ner S5 115U CPU943 ne Haussteuerung aufzubauen. Es sind 4 DI (à32) und 3DA (à32) Baugruppen gesteckt. So nun habe ich mir einen FB für die Steuerung der Rollos gebastelt, den ich nun für jedes Rollo aufrufe und parametriere. In dem FB schaffe ich mir temporäre Variablen indem ich die benutzten MW's in den zum Baustein gehörenden DB speichere. Ich habe 21 Rollos und rufe somit den Rollo-FB 21 mal auf. Mein immer größer werdendes Problem besteht nun darin, dass die S5 auf sich ändernde Eingänge nicht mehr jedesmal reagiert (ich werte meist Flanken aus). Manchmal muss ich zwei, drei mal probieren eh sich was tut.
    Bin ich an der Grenze der Zykluszeit? Wie bekomme ich das Problem in den Griff? Es scheint mit jedem FB-Aufruf schlimmer zu werden obwohl der Speicher gerade mal zu 10% belegt ist.

    Wäre für jeden Tipp dankbar!!
    Bite my shiny metal ASS!!!
    Zitieren Zitieren S5 wird immer träger?  

  2. #2
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.850
    Danke
    78
    Erhielt 800 Danke für 543 Beiträge

    Standard

    indirekte aufrufe kosten sehr viel zeit.

    z.b.
    L EB 10 // 0,8 ys

    L =EB10 // 147 ys

    das ist ungefähr 180 mal langsamer.

    eventuelle abhilfe
    1. code optimieren
    2. den baustein nicht parametrierbar machen sondern mehrere kopien direkt adressiert benutzen. ist natürlich viel mehr progaufwand.
    3. in dem fb keine wenig indirekten aufrufe nutzen. alle parameter in mw's ablegen (netzwerk 1) und diese im fb direkt ansprechen. erst am ande des fb diese an die ausgangsvariablen übergeben.

    oder cpu durch eine z.b. 944 ersetzen (L =EB10 // 3,6 ys)

    die ausführungszeiten der befehle findest du in der operationsliste.
    Geändert von volker (03.10.2006 um 10:46 Uhr)
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  3. #3
    burner ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    11.07.2005
    Beiträge
    13
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ach Mist, hab ich schon geahnt. Vielen Dank erst mal! Muss ich wohl die Sache "etwas" umschreiben .
    Bite my shiny metal ASS!!!

  4. #4
    Registriert seit
    06.10.2003
    Beiträge
    3.412
    Danke
    451
    Erhielt 506 Danke für 408 Beiträge

    Standard

    Hallo burner,

    Zitat Zitat von volker Beitrag anzeigen
    ..den baustein nicht parametrierbar machen sondern mehrere kopien direkt adressiert benutzen. ist natürlich viel mehr progaufwand..
    Das würde zwar helfen, wäre jedoch irgendwie ein Rückschritt.

    Ich frage mich, wie 21 Jalousien eine S5CPU943 zur Schnecke machen können. Wieviele Parameter hast du denn an dem Baustein? Es würde u.U. helfen, diverse Signale wie Taster, Rückmeldungen etc. bausteinextern in enem Schmiermerkerbyte oder -wort zu belegen, und dieses als einen Parameter zu übergeben. Das gilt natürlich ebenso für die Ausgänge. Oder einen kompletten Speicherbeich mit DB-Nummer und Offset als Parameter übergeben.

    Bausteinparameter kosten sehr viel Zykluszeit, glaube, erst bei der 945 wird es (dank Coprozessor?) deutlich besser.


    Gruß, Onkel
    Geändert von Onkel Dagobert (04.10.2006 um 00:52 Uhr)
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  5. #5
    burner ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    11.07.2005
    Beiträge
    13
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Das liegt wohl an der Programmierstrategie die damals wohl noch nich so aktuell war. Hätt ich auch nich gedacht
    Hab 9 Parameter für den Rollo-Baustein und jetzt erst mal Volkers Vorschlag umgesetzt und die Parameter am Anfang Merkern zugewiesen. Dadurch bin ich schon auf eine überwältigende Verbesserung gekommen. Vielen Dank! Und die Idee mit dem byteweisen Übergeben der In und Out hört sich sehr vielversprechend an, werd das mal testen.
    Bite my shiny metal ASS!!!

  6. #6
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.850
    Danke
    78
    Erhielt 800 Danke für 543 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von burner Beitrag anzeigen
    Und die Idee mit dem byteweisen Übergeben der In und Out hört sich sehr vielversprechend an, werd das mal testen.
    wird dir sicherlich noch einen kleinen schub geben. aber nicht wirklich viel, da du die ja jetzt schon einzeln einem merker zuweist.
    U =IN //160 ys
    U Ex.y //0,8 ys

    bei 8 parameten sind das gerade mal 8 * 160ys = 1,28 ms

    aber kleinvieh macht auch mist.
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 15.07.2011, 11:47
  2. Antworten: 2
    Letzter Beitrag: 14.11.2008, 13:42
  3. Antworten: 0
    Letzter Beitrag: 09.09.2008, 11:39
  4. Träger TeleProf II ans Hausnetztwerk ? Wie?
    Von SPS-Manager im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 17.06.2006, 17:49
  5. Träger PID Regler
    Von Anonymous im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 11.06.2004, 20:27

Lesezeichen

Berechtigungen

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