zyklischen Setzen toggle-variable

Anonymous
2008-06-11
2008-06-12
  • Anonymous - 2008-06-11

    Originally created by: /Matthias/

    hallo leute,

    ich habe für eine datenübertragung eine toggle-variable "start" (in/out), zum senden wird diese true gesetzt und nach der übertragung vom FB automatisch false gesetzt.

    meine frage ist nun, wie kann ich diese variable nach einer bestimmten zeit (zyklisch) z.B. alle 1500 ms wieder true setzen? timerbaustein? zyklische task?

    danke matthias

     
  • Erik Böhm - 2008-06-12

    Moin

    Warum ist die Variable IN_OUT ?

    Da reicht doch eine normale INPUT vollkommen aus.

    Die kannst du dann auch ganz normal per Timer setzen.

    TIMER(IN:=(fbSend.bStart=FALSE),pt:=t#1500ms);

    if TIMER.Q then

    fbSend.bStart := TRUE;

    end_if

    fbSend();

    Gruss

    Erik

     
  • franklin - 2008-06-12

    moin matthias,

    so sollte es funktionieren:

    VAR

    ( ohne zeit )

    xToggelbit: BOOL;
    

    ( mit zeit )

    VerzToggel: TON;
    
    xToggelbit2: BOOL;
    
    timMonitorVerzToggel: TIME;
    

    END_VAR

    ( ohne zeit )

    IF NOT xToggelbit THEN

    xToggelbit := TRUE;

    END_IF

    ( mit zeit )

    VerzToggel(IN:= NOT xToggelbit2, PT:= t#1500ms, Q=> xToggelbit2, ET=> timMonitorVerzToggel);

    gruß

    frank

     
  • Anonymous - 2008-06-12

    Originally created by: /Matthias/

    besten dank euch beiden. es funktioniert...hätte nicht gedacht, dass es so einfach ist.

     

Log in to post a comment.