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

Ergebnis 1 bis 4 von 4

Thema: Mehrfachausführung einer FCx unterbinden?

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi

    Ich arbeite derzeit mit einer s7-300 314-c2 dp und simatic v5.3 + sp2.
    Grundlegend will ich folgende Funktion realisieren: Wenn der Wert an einem Analogeingang von einem vorgebenen Sollwert abweicht, soll bei einem Analogausgang der wert um einen 2. vorgegebenen Wert erhöht/verringert werden. Die Überprüfung findet alle 15 sekunden statt (mittels Timer).
    Nun bin ich wie folgt vorgegangen. Nach der Überprüfung (in FC1) wird, je nach dem ob eine Abweichung vorliegt, mittels des Befehls CC der FC 2 aufgerufen. In FC2 wird der akutelle Wert des Analogausgangs mit dem 2. vorgegeben Wert addiert und an den Ausgang übertragen. Nun sollte doch wenn man als Beispiel folgende Werte (Analogausgang= 1 ; zu addierender Wert = 1) annimmt folgendes passieren. Alle 15 Sekunden müsste sich der Wert am Ausgang um 1 erhöhen.

    Analogeingang einlesen:
    Code:
          
          L     DB1.DBD    6
          ITD   
          DTR   
          L     2.7648e+4
          /R    
          L     1.0e+2
          *R    
          T     DB3.DBD   28
    Analogeingang setzen:
    Code:
         
          L     DB3.DBD    8
          L     1.0e+2
          /R
          L     2.7648e+4
          *R
          RND   
          T     PAW752
    Leider musste ich jedoch feststellen, das der Sollwert am Ausgang nicht um jeweils 1 alle 15 Sekunden erhäht wird. Anscheinend wird FC2 immer mehrfach durch geführt, da sich der Wert immer um ca. 500 erhöht hat.
    Da dies so anscheinend nicht möglich war, habe ich versucht die FC2 abzubrechen wenn M 1.0 nicht gesetzt ist. Die Funktion wurde jedoch immer noch ca 500 mal ausgeführt.

    Gibt es eine Möglichkeit das ein FC nur einmal ausgeführt wird oder muss ich die Sache anders lösen?


    gruß
    GhostBlade
    Zitieren Zitieren Mehrfachausführung einer FCx unterbinden?  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    CC ist ja ein bedingter Aufruf, wovon genau hängt den der Aufruf des FC ab? (Codeschnipsel mit dem Timer wäre nützlich).
    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. #3
    Registriert seit
    11.10.2005
    Ort
    Pirmasens
    Beiträge
    401
    Danke
    158
    Erhielt 74 Danke für 54 Beiträge

    Standard

    Hi,
    mit einer positiven Flanke auf CC gehen dann wird er nur einmal bearbeitet.

    HDD

  4. #4
    GhostBlade ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.07.2006
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke für die Hinweise.

    Ich habe ein Wochenende darüber geschlafen und mir das ganze heute nochmal angeschaut.
    mein problem war einfach die überprüfung wann dasn ganze ausgeführt werden soll. ich hatte nur überprüft ob der timer auf 1 ist oder nicht. und da dieser timer natürlich nicht nur eine ausführungszeit auf 1 steht wurde die funktion so oft aufgerufen :P

    bis denne

Ähnliche Themen

  1. Antworten: 20
    Letzter Beitrag: 20.01.2011, 21:55
  2. Kopplung einer 317 mit einer IM151 über Profinet
    Von GerhardPtl im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 08.07.2010, 13:52
  3. Antworten: 7
    Letzter Beitrag: 19.03.2008, 21:11
  4. SPS-Stop unterbinden
    Von digga im Forum Feldbusse
    Antworten: 6
    Letzter Beitrag: 15.09.2007, 13:37
  5. Antworten: 1
    Letzter Beitrag: 10.11.2006, 16:29

Lesezeichen

Berechtigungen

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