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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 26

Thema: nicht genügend Timer in der SPS

  1. #11
    Registriert seit
    08.11.2006
    Ort
    Uckermark
    Beiträge
    903
    Danke
    201
    Erhielt 256 Danke für 208 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von zotos Beitrag anzeigen
    Das mit den Taktmerkern die ein ein Merker- oder Datenwort hochzählen funktioniert zwas wird aber dem System S7 nicht gerecht. Dann Programmiert doch lieber weiter S5!
    Ich z.B. würde das gern, aber was soll ich machen wenn doch die S5 als Neuware nicht mehr erhältlich ist.

    Also ich finde das gut dass sich die S7 wenigstens noch so annähernd im S5-Stil programmieren lässt.
    Neue Ideen begeistern jene am meisten, die auch mit den alten nichts anzufangen wussten.
    Karl Heinrich Waggerl (1897-1973)

  2. #12
    Registriert seit
    04.09.2007
    Beiträge
    128
    Danke
    20
    Erhielt 8 Danke für 8 Beiträge

    Standard

    Zitat Zitat von zotos Beitrag anzeigen

    Und wenn schon aufaddieren dann den OB1_Prev_Cycle (und kein schwulen Taktmerker).
    Wie soll das funktionieren ? Laut Siemens bedeutet diese Funktion "Zeit des vorherigen Zyklus feststellen".
    Das wird dann ja eine beliebige Zeit sein, die sich sicherlich auch je nach Programmabarbeitung verändern kann.

    Ich finde die Taktmerker gar nicht so "schwul". Man kann je nach Anwendungsfall mal eben schnell die Takt ändern.

    Ganz wichtig ist auch, das ein "0815" Elektriker mit S7-Grundkenntnissen das Programm halbwegs auch versteht.
    Denn nachdem die Programmierer ihre Anlage abgeliefert haben, müssen die Betriebselektriker damit klar kommen. Ich habe keine Lust Nachts um 3Uhr auf der Matte zu stehen, nur weil die Anlage nicht mehr läuft und der Schichtelektriker eine Funktion nicht versteht.
    Deshalb versuche ich alles möglichst Anwenderfreundlich in FUP zu programmieren.

  3. #13
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    Zitat Zitat von moeins Beitrag anzeigen
    Wie soll das funktionieren ? Laut Siemens bedeutet diese Funktion "Zeit des vorherigen Zyklus feststellen".
    Das wird dann ja eine beliebige Zeit sein, die sich sicherlich auch je nach Programmabarbeitung verändern kann.

    Ich finde die Taktmerker gar nicht so "schwul". Man kann je nach Anwendungsfall mal eben schnell die Takt ändern.

    Ganz wichtig ist auch, das ein "0815" Elektriker mit S7-Grundkenntnissen das Programm halbwegs auch versteht.
    Denn nachdem die Programmierer ihre Anlage abgeliefert haben, müssen die Betriebselektriker damit klar kommen. Ich habe keine Lust Nachts um 3Uhr auf der Matte zu stehen, nur weil die Anlage nicht mehr läuft und der Schichtelektriker eine Funktion nicht versteht.
    Deshalb versuche ich alles möglichst Anwenderfreundlich in FUP zu programmieren.
    Schau Dir mal den TONR(FC80 aus der TI-S7 Lib) an. Der ist von Siemens und macht das so.

    Ob man sich jetzt einen Baustein baut der einen Taktmerker zählt und diesen Wert dann auswertet. Oder die Dauer des letzten OB1 Zyklus aufaddiert ist ja vom Aufwand her vergleichbar.

    Das aufaddieren der OB1 Zykluszeit ist dabei viel Genauer und auch an eine Zeiteinheit gebunden und keinen gewählten Takt. Wenn ich so was lese: "Man kann je nach Anwendungsfall mal eben schnell die Takt ändern.", frag ich mich ob Du das wirklich für einfacher empfindest. IMHO wäre es doch viel einfacher eine andere Zeit als Sollwert anzugeben.

    Am besten verwendet man Standard Bausteine die eh schon in der Hilfe erklärt sind.

    Zitat von Ralle: "Es ist nie zu früh, sich einen sauberen Programmierstil anzugewöhnen".
    Geändert von zotos (20.11.2007 um 13:58 Uhr)
    If you open your Mind too much, your Brain will fall out.

  4. #14
    Registriert seit
    14.06.2005
    Beiträge
    17
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Andy

    Die S7 kennt Weckalarme. Diese werden z.B. alle 100ms (Intervall je nach Weckalarm OB30..3. Darin kannst du die Zustände der zu überwachenden Ausgaben z.B. mittels einem FB bzw. im IDB auswerten und Wort-Zähler im IDB hochzählen.

    Ich mache dies bei einer SPS-Fernsteuerung, um Kommandos die über eine Serielle Schnittstelle empfangen werden, sowie deren Ausgänge an den Prozess, zeitlich zu begrenzen. Die Ausgaben werden mittels 100ms Weckalarm auf ein max von 3 sec. begrenzt. Bleibt ein Ausgang hängen, wird dieser auf ein vordefinierbaren (aus einem Konfig-DB) Wert gesetzt. Ein nicht ausgeführtes Kommando wird aus dem Kommando-Stack gelöscht.

    Dieses Verfahren ist für mich ausreichend genau und man kann eigentlich beliebig viele Timer (bzw. 100ms-Zähler) realisieren. Wenn man den FB geschickt ausprogrammiert, ist dieser auch Anwendungsunabhänig verwendbar (z.B. ohne Merker)

    Gruss Hansruedi
    Zitieren Zitieren Timer mittels Weckalarm  

  5. #15
    Registriert seit
    16.05.2007
    Ort
    im Stahlwerk...
    Beiträge
    1.178
    Danke
    120
    Erhielt 429 Danke für 236 Beiträge

    Rotes Gesicht

    Schöner Mist!
    Hab heute den ganzen Tag im schwülwarmen Schalthaus vor der S5 (155U) gehockt und nu gehen mir die Ideen aus.
    Es geht um folgendes:
    Eine Filteranlage mit 36 Filterkammern á 12 Abreinigungsventilen (=432 Ventile) macht grad etwas Zicken mit der Druckluftversorgung. Die CPU (945) ist ziemlich ausgelutscht, was Merker und Zeiten angeht. Zeiten hab ich gar keine mehr frei. Die Ventile werden mittels S-Merker angesteuert, die dann über eine IM308B an die Peripherie geschaufelt werden.
    Es steht die Vermutung im Raum, das einige Abreinigungsventile zu lange angesteuert werden und die Druckluft somit entweichen kann. Dies kann man auch anhand der Druckluft-Durchflussmessung der Anlage sehen.
    Alle Abreinigungsventile einer Filterkammer sind in einem S-Merkerwort zusammengefasst.
    Nu hab ich gedacht, vergleiche ich fix die entsprechenden 36 Stück S-Merkerworte auf >< 0 und gucke, wie lange der Zustand ansteht.
    Und nun stehe ich da mit meinem kurzen Hemd.... Ohne Timer weiß ich grad nich weiter...

    Für Tipps / Ideen bin ich euch dankbar!
    Greez Appro
    Nihil est in cpu, quod non fuerit in intellectu" - Nichts ist in der CPU, was nicht (zuvor) im Verstand war.
    Zitieren Zitieren Jetzt hats mich wohl erwischt!  

  6. #16
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Dann haben wir früher Zähler eingesetzt, die wir mit einem 100ms-Impuls hochgezählt oder von einem festen Wert (max. Laufzeit z.Bsp.) runtergezählt haben. Davon hat ja die S5 auch noch einmal eine ganze Menge.
    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

  7. #17
    Registriert seit
    16.05.2007
    Ort
    im Stahlwerk...
    Beiträge
    1.178
    Danke
    120
    Erhielt 429 Danke für 236 Beiträge

    Standard

    Ja, das mit dem Zählen hab ich in diesem Thread auch schon gelesen. Das Prob ist ja, daß ich mir ne Einschaltverzögerung (SE) wünsche... Muss ich wohl mal sehen, wie ich das mit ner Zählerei hinbekomme. Das Runterzählen einer "Max-Zeit" ist ein Ansatz...
    Wobei die 'normale' Ansteuerungszeit eines Ventils nur je 0,25s beträgt.


    Vielleicht so (nicht so genau auf den Syntax schauen):

    Code:
    L KC 20    // Zähler mit 2 Sekunden vorbelegen
    S Z1
    U(
    L SW123   //Mein S-Merkerwort
    L KF+0
    ><F
    )
    U 100msTakt  //mal sehen ob es den gibt
    ZR Z1
     
    UN Z1
    blabla
    Problem wird sein, das der Zähler auch bei normaler Ansteuerung der Ventile runterzählt.
    Gruß Approx
    Nihil est in cpu, quod non fuerit in intellectu" - Nichts ist in der CPU, was nicht (zuvor) im Verstand war.

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

    Standard

    oder dw hochzählen
    hier was fertiges von mir
    http://lischis-home.dyndns.org/files...e/dirindex.php
    datei: timese.rar
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  9. Folgender Benutzer sagt Danke zu volker für den nützlichen Beitrag:

    Approx (02.07.2009)

  10. #19
    Registriert seit
    19.12.2006
    Beiträge
    185
    Danke
    25
    Erhielt 26 Danke für 21 Beiträge

    Standard

    @ zotos:

    Schau Dir mal den TONR(FC80 aus der TI-S7 Lib) an. Der ist von Siemens und macht das so.
    Super Tipp!

    Wo rufst du den FC80 denn dann auf? Im OB1 oder irgendwo in einem anderen Baustein? Man müsste ja dann die temp Variable
    Code:
    OB1_PREV_CYCLE
    im OB1 in eine Lokale speichern um diese dann am FC80 benutzen zu können?

    Sehe ich das so richtig?

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von mkd Beitrag anzeigen
    @ zotos:


    Super Tipp!

    Wo rufst du den FC80 denn dann auf? Im OB1 oder irgendwo in einem anderen Baustein? Man müsste ja dann die temp Variable
    Code:
    OB1_PREV_CYCLE
    im OB1 in eine Lokale speichern um diese dann am FC80 benutzen zu können?

    Sehe ich das so richtig?
    aufgeregt? - na, na, na, cool bleiben ...

    und ja: natürlich! OB1_PREV_CYCLE wird bei mir z.B. im OB1 in ein Merkerbyte verfrachtet und dann überall in meinem Programm verwendet.

    Auch OB1_SCAN_1 wird bei mir im OB1 ausgewertet und als Globalvariable sämtlichen Prozessen zur Initialisierung zur Verfügung gestellt. Die Anlauf-OB benutze ich dafür nicht, um die Maschine beim Netzwiederkehr in einen definierten Zustand zu bringen.

Ähnliche Themen

  1. Timer läuft nicht, TIA-Portal
    Von pinolino im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 12.07.2011, 14:51
  2. Timer in SCL funktioniert nicht
    Von karlm44 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 03.05.2010, 22:47
  3. S5 Timer laufen nicht ab
    Von LPW2000 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 05.04.2010, 20:39
  4. Timer srartet nicht...!?!
    Von GigaPitty im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 12.08.2009, 00:49
  5. Timer läuft einfach nicht...
    Von slma im Forum Simatic
    Antworten: 42
    Letzter Beitrag: 16.07.2007, 08:21

Lesezeichen

Berechtigungen

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