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

Ergebnis 1 bis 6 von 6

Thema: IEC Timer TON im Simatic S7

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    Habe in meinem S7 Projekt IEC Timer TON eingebaut.
    Diese werden außerhalb eines Zustandautomatens aufgerufen. Im Automatik Modus funktioniert dieser.
    Wechsel ich in den Stop Modus, möchte ich, dass die Zeitfunktion "eingefriert" wird (kein Weiterzählen).
    Hierfür setze ich den EN-Eingang des TON (programmier in FUP) auf FALSE. Sobald ein Wechsel in den Automatik Modus erfolgt wird der EN-Eingang wieder auf TRUE gesetzt. Die Zeit läuft jedoch trotzdem weiter, obwohl das EN auf FALSE ist/war.
    Hat jmd schonmal ein ähnliches Problem gehabt?

    Habe das Programm auch beobachtet, wo man sehen kann, dass EN auf FALSE wechselt.

    Danke
    Zitieren Zitieren IEC Timer TON im Simatic S7  

  2. #2
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard

    Der Timer läuft weiter, weil er vermutlich intern auf die Systemuhr zugreift. Nur der Ausgang wird erst bei erneutem aktivieren gesetzt.

    IEC- und S5-Timer lassen sich nicht anhalten, benötigst Du eine solche Funktion, dann würde ich empfehlen einen eigenen Timer zu bauen auf Basis eines Zählers (vorzugsweise im DINT) und diesen von außen mit einem Zähltakt (z. B. Taktmerkerbyte) zu belegen! Da ein IEC-Timer mit dem TIME-Format arbeitet kannst Du den Wert einfach in einen DINT-Wert kopieren. Der Wert ist dann in ms dargestellt.
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

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

    spovi1 (22.12.2011)

  4. #3
    Registriert seit
    20.10.2011
    Beiträge
    22
    Danke
    4
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Anderer Lösungsansatz ist ein aufaddieren der letzten Zykluszeit. Diese wird im OB1 in der Variable OB1_PREV_CYCLE hingerlegt.

  5. #4
    Registriert seit
    26.05.2009
    Beiträge
    541
    Danke
    35
    Erhielt 78 Danke für 69 Beiträge

    Standard

    Beim wegnehmen des EN-Eingangs bleibt ja die vergangene Zeit (TON) bzw. die noch verbleibene Zeit an den Ausgängen stehen.
    Wenn du den EN-Eingang von dem TON wegnimmst, dann hast du die abgelaufene Zeit an dem Ausgang ET stehen.

    Beim erneuten Starten müsstest du dann die Zeit von der vorher angegebenen Zeit abziehen und den Timer damit neu starten.
    Ist sehr umständlich, aber müsste prinzipiell gehen.

    Wobei mir die Lösung von Sprungmarke besser gefallen würde.

    Gruß wolder
    Wenn du denkst du denkst, dann denkst du nur, dass du denkst, denn beim Denken der Gedanken, kommt dir der Gedanke, dass das Denken der Gedanken ein gedankenloses Denken ist

  6. #5
    Registriert seit
    29.03.2004
    Beiträge
    5.797
    Danke
    144
    Erhielt 1.707 Danke für 1.239 Beiträge

    Standard

    Man müsste die Instanz-Daten des TON-Bausteins mit der entsprechenden Systemzeit nachführen, dann könnte man den Timer anhalten und mit der Zeit weiterlaufen lassen.

    In den statischen Variablen stehen ja die Variablen:
    STIME: Startzeitpunkt des Timers (TIME_TCK)
    ATIME: Laufende Systemzeit (TIME_TCK)
    STATE: Timerstatus: 0=aus, 1=läuft, 2=abgelaufen

    Code:
          U     "TON_EN"                    // false = Timer anhalten
          SPB   ten
    //-------------
    // Zeit soll angehalten werden, interne TON-Daten nachführen.
    // TON auf dieser Instanz darf dann nicht ausgeführt werden!
          CALL  "TIME_TCK"
           RET_VAL:="DI_TON".ATIME
    
          L     "DI_TON".ATIME              // Aktuelle Zeit
          L     "DI_TON".ET                 // Bisher abgelaufene Zeit
          -D    
          T     "DI_TON".STIME              // Startzeit des Timers 
    
          SPA   tdis                        // TON-Aufruf überspringen
    //-------------
    ten:  CALL  "TON" , "DI_TON"
           IN:="DI_TON".IN
           PT:="DI_TON".PT
           Q :="DI_TON".Q
           ET:="DI_TON".ET
    //-------------
    tdis: NOP   0
    Es fehlt noch die Abfrage wenn der Wert von TIME_TCK übergelaufen sein sollte.

  7. #6
    Registriert seit
    21.12.2011
    Beiträge
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von spovi1 Beitrag anzeigen
    Hallo,
    Habe in meinem S7 Projekt IEC Timer TON eingebaut.
    Diese werden außerhalb eines Zustandautomatens aufgerufen. Im Automatik Modus funktioniert dieser.
    Wechsel ich in den Stop Modus, möchte ich, dass die Zeitfunktion "eingefriert" wird (kein Weiterzählen).
    Hierfür setze ich den EN-Eingang des TON (programmier in FUP) auf FALSE. Sobald ein Wechsel in den Automatik Modus erfolgt wird der EN-Eingang wieder auf TRUE gesetzt. Die Zeit läuft jedoch trotzdem weiter, obwohl das EN auf FALSE ist/war.
    Hat jmd schonmal ein ähnliches Problem gehabt?

    Habe das Programm auch beobachtet, wo man sehen kann, dass EN auf FALSE wechselt.

    Danke

    Hallo!

    Du möchtest die Zeiteinfrieren um bestimmt mit der Zeit weiter arbeiten zu können, stimmts?

    Dann ist es besser wenn du den Movebefehl verwendest!
    Zitieren Zitieren Setze doch den Move Baustein  

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 12.02.2011, 11:44
  2. Antworten: 12
    Letzter Beitrag: 07.02.2011, 21:59
  3. SIMATIC WinCC flexible für SIMATIC Panels in Dresden
    Von Grollmus im Forum Werbung und Produktneuheiten
    Antworten: 0
    Letzter Beitrag: 24.03.2009, 10:13
  4. Suche Ersatz für IFM TIMER LG ( Logik Timer)
    Von GrafLaugenkotz im Forum Sonstige Steuerungen
    Antworten: 1
    Letzter Beitrag: 16.01.2007, 17:02
  5. Simatic NET: Start >Simatic > SIMATIC NET > COML S7
    Von plc_tippser im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 13.06.2004, 18:30

Lesezeichen

Berechtigungen

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