Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Problem mit TP Timer

Jazz11
2009-05-08
2009-05-13
  • Jazz11 - 2009-05-08

    Timerproblem

    Hallo! Ich hab ein Problem mit einem TP Timer aus der Standard Bibliothek, der als Funktionsbaustein in ein großes Programm eingebunden ist.

    Wenn die Variable, die an den IN Eingang geschaltet ist im Programmverlauf zum ersten Mal TRUE wird gibt er an Q eine gewisse Zeit ein TRUE Signal aus, bis hierhin alles prima!

    Im weiteren Programmverlauf wird die Eingangsvariable am IN Eingang dann FALSE und erneut TRUE, theoretisch sollte der Timer dann erneut für die eingestellte Zeit anspringen, das tut er aber nicht!? Kann es sein dass die interne variable „IN“ TRUE bleibt obwohl die Variable, die an diesen Eingang geschaltet ist zwischenzeitlich FALSE war? und der Timer deshalb nicht erneut losläuft? Dieses Timerproblem tritt auch nur in diesem einen Programm auf, in allen kleinen Testprogrammen, die ich entworfen habe um dem Problem auf die Spur zu kommen läuft er einwandfrei mehrfach durch!

    Vielleicht hat jemand von Euch eine Idee woran das liegen könnte?!

     
  • Anonymous - 2009-05-08

    Originally created by: Stephanie Kreutz

    Hallo,

    wird der Timerbaustein auch mindestens einmal aufgerufen während die Variable am Eingang FALSE ist?

    Ansonsten merkt der Baustein gar nichts von der Änderung der Variablen

    Gruß Steffi

     
  • heiwil - 2009-05-11

    Hallo,

    rufst Du vielleicht die Instanz des Timers mehrfach auf? Dann gewinnt immer die letzte

    Heiwil

     
  • Jazz11 - 2009-05-12

    Der Timerbaustein ist als "Kästchen mit Anschlüssen" in einem Funktionsbaustein integriert, der aufgerufen wird bevor der Timer aktiv werden soll. (das müsste also klappen). Nur der Timer selbst wird beim zweiten TRUE Signal seiner Eingangsvariable an IN nicht mehr aktiv.

    Was meinst Du mit Instanz mehrfach aufrufen?

     
  • heiwil - 2009-05-13

    Jazz11 hat geschrieben:
    Was meinst Du mit Instanz mehrfach aufrufen?

    Der TP ist ein Funktionsbaustein, der Werte zwischen zwei Aufrufen speichern muß. Dazu wird er instanziert.

    z.B.:

    VAR
      myTP: TP;
    END_VAR
    

    Im FUP muß dann oberhalb des "Kästchen mit Anschlüssen" der Name der Instanz (hier also myTP eingetragen werden.

    Benötigst Du mehrere TP, so müssen auch mehrere Instanzen angelegt werden, sonst gibt's Bruch.

    Vielleicht stimmt auch einfach Dein Startsignal nicht, der Eingang IN des TP muß auf jeden Fall wenigstens einen Zyklus FALSE gewesen sein, bevor er wieder TRUE wird.

    Ich hoffe, ich beleidige nicht Deine Intelligenz mit meiner Erklärung, aber ich weiß nicht, welchen Wissenstand Du hast.

    Heiwil

     

Log in to post a comment.