Informal Instruction to skip Motion Instruction

  • I would like to know if there is any instruction(If I get a DI signal ON), then the motion Instruction should not perform instead it should skip it.


    This is real time situation- Handling Application- If Robot is in machine either to place or pick but from operator gets a signal to return to home position. It should follow the previous path and return to home.


    With Fanuc I know this can be implemented by SKIP Condition DI 9 = ON, Please let me know which informal instruction I need to use so that to solve this.


    Thanks.

  • Hallo Roboprof,


    I hope you got the question.. What if robot is stoped middle of the motion..?


    I trid to find in motion (either in MOVJ or MOVL) we have option instruction called Untill


    For Ex: MOVL P001 Untill DI (1500) = ON // Here you can skip the motion instruction even between start and destination.


    Now in the next step I control with


    If DI(1500)= ON
    CALL:REVERSE(ARG1:90) //BY Argument I tried to pass which position is it. and try to get back robot to home position but here problem is


    Double time use of position variables.


    'ARG(1)- TO WHICH PVAR
    '*************************
    GETARG LB000 IARG#(1)
    '*************************
    'CURRENT POSITION
    '*************************
    *START
    '*************************
    IFTHENEXP LB000>=91 ANDEXP LB000<=110 // 91 to 110 are my Pvars where all positions are saved
    IFTHENEXP LB000=91
    SUB LB000 LB000 // P000 is home pos
    JUMP *PTP
    ENDIF
    IFTHENEXP LB000=92
    SUB LB000 1
    JUMP *LIN
    ENDIF
    ELSE
    JUMP *END
    ENDIF
    '*************************
    JUMP *END
    *PTP
    MOVJ P[LB000] VJ=40.00
    '*************************
    IFTHENEXP LB000=0
    JUMP *END
    ELSE
    JUMP *START
    ENDIF
    *LIN
    MOVL P[LB000] V=400.0 PL=0
    IFTHENEXP LB000=0
    ELSE
    JUMP *START
    ENDIF
    *END
    END


    This is not very optimal way of programming but still I need to check at every position if the signal is ON or NOT. If ON I need to return back to home pos, If not continue the path.

    Edited once, last by rAviteja_g ().

  • Programming can get simplified if you have the Interrupt Job option. This is a floating call job. Another option might be to use the step back signal in the ladder. Don't know if you are using a plc or not. The logic could be the same regardless. Robot stops, turn on the step back signal. Send start signal. Robot moves back one position and stops. Repeat until the robot is back in a safe cube. Something I watch out for is sometimes my path into the machine is different than my path out. I have to plan accordingly.

    I know a thing or two, because I’ve seen a thing or two. Don't even ask about a third thing. I won't know it.

  • 1) Interrupt Job- I know very little about Interrupt- If I am not wrong, for example, during job running- if interrupt signal is occured then it performs interrupt job and after if we start the station- It starts from where it stopped.


    2) Step Back signal using lader- With ladder till now I havent done something- If possible where can I find some examples.


    3) What do u mean by using PLC or not?- Usually we build stations Robot as slave using Profinet card (cp1616 or 14) and PLC sends program number and by switch case I work. I come to know that robot comes with PLC is that ur asking.?


    Thanks for your time. :smiling_face:

    Edited once, last by rAviteja_g ().

  • 1) Interrupt Job- I know very little about Interrupt- If I am not wrong, for example, during job running- if interrupt signal is occured then it performs interrupt job and after if we start the station- It starts from where it stopped.


    Yes, if a signal comes on (your operator), run this other program instead. So you could have a robot job with the positions in reverse order. Once the robot is back to the desired position pause. When a restart occurs jump to the master job and clear the job stack.


    2) Step Back signal using lader- With ladder till now I haven't done something- If possible where can I find some examples.


    I don't have any examples. When this specific input comes on the robot moves back one position in the job. Idea. Operator gives a signal, robot is given a hold signal. Once the start button drops out, turn on step back. Robot moves back one position in the job. Continue giving the step back signal until the robot is back in a safe interference zone.


    3) What do u mean by using PLC or not?- Usually we build stations Robot as slave using Profinet card (cp1616 or 14) and PLC sends program number and by switch case I work. I come to know that robot comes with PLC is that ur asking.?


    There is the ladder program in the controller or are you using an external plc? Sounds like an external. The logic would be about the same for the step back in the robot controller vs. external plc. It would just be a matter of how automated I want this process. Initiating this from a hmi, I would have the process more streamlined in the external plc. I would be somewhat crude doing this in the robot controller ladder.

    I know a thing or two, because I’ve seen a thing or two. Don't even ask about a third thing. I won't know it.

  • *INI
    MOVJ VJ=50.00 PL=5
    *START
    SFTON P010 UF# (4)
    SFTON P009 TF
    MOVJ P007 VJ=50.00 PL=5 Unitll DIN (1) =ON
    IF (DIN (2) = ON)
    DOUT (1) =ON
    WAIT DIN (1) = OFF
    JUMP *INI
    ENDIF
    *VOR
    SFTON P010 UF# (4)
    SFTON P009 TF
    MOVJ P013 VJ=30.00 PL=0 Unitll DIN (1) =ON //VOR
    IF (DIN (2) = ON)
    DOUT (1) = ON
    WAIT DIN (1) = OFF
    JUMP *START
    ENDIF
    SFTON P010 UF# (4)
    SFTON P009 TF
    MOVL P012 V=100.0 PL=0 Unitll DIN (1) =ON //Pickpoint
    IF (DIN (2) = ON)
    DOUT (1) = ON
    WAIT DIN (1) = OFF
    JUMP *VOR
    ENDIF


    IS it a good idea to program like this using jump instruction to go backward..? Any ideas: In FWD Joint to Linear turns in BWD Linear to Joint.

Advertising from our partners