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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 24

Thema: Mehrfacher Aufruf eines FC´s

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    bin am verzweifeln.

    Habe einen FC programmiert welcher mit deiner Taste VKE 1 mit einer voreingestellte Zeit liefert.
    Also nichts anderes als eine Tastbare Abschaltverzögerung, welche ich mit der selben Taste auch vorzeitig unterbrechen kann.
    Ist so eigendlich kein Problem, für sich alleine klappt das auch, mit Aufruf call FCx kann ich Problemlos den Ausgang Tastend ein und ausschalten, oder er schaltet sich ebend nach voreingstellter Zeit selber ab.
    Wenn ich nun aber den FC ein zweites mal aufrufe, überschreiben sich irgendwelche daten, blos ich weiss nicht wo. Die Eingangsparameter sind definitiv unterschiedlich, und im FC selber habe ich IN OUT und TEMP Variabelen verwendet.

    Der Aufruf geschieht so:
    OB1
    Call FC 100

    FC100
    Netzwerk1

    Call FCx
    Taste1=E0.0
    Zeitglied1= T0
    Zeit für Zeitglied= S5T#5s
    Out= a0.0

    Netzwerk2
    Call FCx
    Taste1=E0.1
    Zeitglied1= T1
    Zeit für Zeitglied= S5T#5s
    Out= a0.1

    Also wenn ich nur Netzwerk 1 nehme alles ok, bei beiden fangen die Ausgäng an zu flattern.

    Was mach ich da falsch ???
    Zitieren Zitieren Mehrfacher Aufruf eines FC´s  

  2. #2
    Registriert seit
    28.06.2006
    Ort
    Königreich Neuseeland
    Beiträge
    2.027
    Danke
    133
    Erhielt 96 Danke für 76 Beiträge

    Standard

    Hats du im FC absolut einen Merker adressiert ?

    TEMP variable gehen VERLOREN!

    Wenn du was für den nächsten Aufruf merken willst, muss das ein zusätzlicher INOUT Parameter sein !

  3. #3
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard

    Setz doch mal noch den Code vom FC rein, ich vermute aber auch, dass du den Temp-Bereich genutzt hast, bzw. Absolutadressen.

    pt
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

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

    Standard

    Moin,moin,

    du hast ja einen Timer zur Verzögerung genommen und dieser wird Zyklisch abgefragt, wenn dieser jetzt mit zwei Zeiten aus zwei FC´s angenommen werden soll weiß die CPU nicht welche Zeit aktuell ist und die Ausgänge Flattern im Zyklustakt der CPU.

    Du musst bei der Benutzung von Zeiten immer einen jeweiligen Timer benutzen oder die einzelnen FC´s nacheinander aufrufen nicht gleichzeitig.

  5. #5
    Registriert seit
    28.06.2006
    Ort
    Königreich Neuseeland
    Beiträge
    2.027
    Danke
    133
    Erhielt 96 Danke für 76 Beiträge

    Standard

    Zitat Zitat von Murksi Beitrag anzeigen
    Moin,moin,

    du hast ja einen Timer zur Verzögerung genommen und dieser wird Zyklisch abgefragt, wenn dieser jetzt mit zwei Zeiten aus zwei FC´s angenommen werden soll weiß die CPU nicht welche Zeit aktuell ist und die Ausgänge Flattern im Zyklustakt der CPU.

    Du musst bei der Benutzung von Zeiten immer einen jeweiligen Timer benutzen oder die einzelnen FC´s nacheinander aufrufen nicht gleichzeitig.
    Das ist der größte Mist, den ich hier seit langem gelesen habe!

    6, setzen !

  6. #6
    Registriert seit
    28.06.2006
    Ort
    Königreich Neuseeland
    Beiträge
    2.027
    Danke
    133
    Erhielt 96 Danke für 76 Beiträge

    Standard

    Zitat Zitat von plc_tippser Beitrag anzeigen
    Setz doch mal noch den Code vom FC rein, ich vermute aber auch, dass du den Temp-Bereich genutzt hast, bzw. Absolutadressen.

    pt
    Danke, dass du meiner Meinung bist.

  7. #7
    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

    @ug

    gröl, ug du alter st...

    Warte auch schon auf den FC, denke auch spontan an Merker oder temp-var.
    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

  8. #8
    Registriert seit
    31.10.2003
    Beiträge
    265
    Danke
    23
    Erhielt 37 Danke für 31 Beiträge

    Standard

    Zitat Zitat von Ralle
    Warte auch schon auf den FC, denke auch spontan an Merker oder temp-var.
    Eigentlich hat er die Frage in seinem ersten Beitrag schon beantwortet: "Die Eingangsparameter sind definitiv unterschiedlich, und im FC selber habe ich IN OUT und TEMP Variabelen verwendet."

    Gruß Andre

  9. #9
    Registriert seit
    25.11.2006
    Beiträge
    31
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    So, da ist er:


    Netzwerk1
    U #Tast1
    FP #TEMP0
    UN #Out1
    L #S5Zeit
    SA #Zeit1
    U(
    U #Tast1
    FP #TEMP1
    U #Out1
    O #Out2
    )
    R #Zeit1
    NOP 0
    NOP 0
    U #Zeit1
    = #Out1

    Netzwerk2
    Netzwerk2
    U #Tast2
    FP #Temp00
    UN #Out2
    L #S5Zeit
    SA #Zeit2
    U(
    U #Tast2
    FP #Temp11
    U #Out2
    O #Out1
    )
    R #Zeit2
    NOP 0
    NOP 0
    U #Zeit2
    = #Out2

    Wobei ich die Variablen so verteilt habe:

    #Tast1 = IN
    #Temp0 = Temp
    #Temp1 = Temp
    #Out1 = Out
    #Out2 = Out
    #Zeit1 = Timer
    #S5Zeit = S5Time

    für Netzwerk 2 ist es genau so verteilt !

    Für den nächsten Aufruf will ich mir nichts merken, es werden absolut andere Parameter angetragen !!!
    Geändert von jamalau (01.12.2006 um 17:04 Uhr)

  10. #10
    Registriert seit
    01.02.2006
    Beiträge
    212
    Danke
    33
    Erhielt 6 Danke für 5 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    soviel ich aus erfahrung sagen kann:

    nimm den tmep0 nicht als temporär! damit gibts probleme, wenn ihn als FP nimmst.

    bei nächsten zyklus ist der wert von temp0 ja weg!

    nimm hier einen merker oder so, vielleicht einen extern als IN deklarieren..
    Gruß

    Jelly
    Zitieren Zitieren temp0  

Ähnliche Themen

  1. Mehrfacher, gleichzeitiger Aufruf des SFC84
    Von Deichkind im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 31.05.2010, 14:11
  2. mehrfacher FC-Aufruf in FB
    Von Ulli_FHBRB im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 27.08.2009, 09:13
  3. Aufruf eines Date_and_Time eines DB's
    Von hank12 im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 08.07.2009, 10:33
  4. Aufruf eines FB
    Von blasterbock im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 17.06.2009, 12:38
  5. Aufruf eines SFB
    Von Kamania im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 28.10.2005, 09:50

Lesezeichen

Berechtigungen

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