CONT motion breaks

  • Hello all,

    I am using kuka KR210R2700_2 C4 FLR, Robot with KSS 8.6.9


    Here's my program


    Def SUB_1()

    PTP P1 CONT Vel=100%

    PTP P2 CONT Vel=100%

    End


    Def SUB_2()

    PTP P11 CONT Vel=100%

    PTP P22 CONT Vel=100%

    End


    My problem is, while robot moves from P1 to P2 it takes continue motion, but while robot moves from P2 to P11 it breaks the continuous motion. (P2 is last point of SUB_1 & P11 is first point of SUB_2 program)


    Could you please help me to resolve this problem!!

    How can i jump from one subprogram to other subprogram with CONT motion.??


    Thanks in advance.

  • Something is causing advance run stop but code you shared does not show those other instructions.


    You need to look at all program lines, not only motions.


    your example does not even show why your motions should be approximated at all - there is no indication that necessary initialization is done.


    to see what causes ARP stop, lookup variable $stopnoaprox

    (see pinned topic READ FIRST for accessing KUKA documentation).

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • What is the complete program? Whatever routine is calling SUB_1 and SUB_2 may have advance-braking commands between the calls. Or you may have default INI Folds at the top of SUB_1 and SUB_2 that are breaking the ARP.


    We cannot help you without full details.

  • What is the complete program? Whatever routine is calling SUB_1 and SUB_2 may have advance-braking commands between the calls. Or you may have default INI Folds at the top of SUB_1 and SUB_2 that are breaking the ARP.


    We cannot help you without full details.

    Sorry, I wrote that program in tread for just an example.


    And there is INI Folds in both programs that breaks CONT motion. But how can I achieve CONT motion ??

  • One option is to remove INI, but of course this can make programa not work correctly (or at all).


    The better option is to check if i initialization is needed and only process INI when needed


    I think the variable is called $MOVE_BCO:


    If $move_bco then


    INI


    Endif

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • Sorry, I wrote that program in tread for just an example.

    So, where's the full program?

    And there is INI Folds in both programs that breaks CONT motion. But how can I achieve CONT motion ?

    Don't put ARP-breaking code in between motions you want to be Continuous.


    In this case, the INI Folds are definitely contributing factors (specifically, the calls to BAS(#INITMOV))

    However, just deleting these creates a problem: it makes it much harder to hand-select SUB_1 or SUB_2 for teaching or testing. This is due to how KUKA handles BCO (Block Coincidence) and initialization of Velocity, Acceleration, and other motion-controlling variables.


    As Panic says, one way around this would be to put the INI Fold inside an IF statement checking for the system variable $MOVE_BCO. This will cause the INI Fold to be skipped if BCO has already been achieved (as when SUB_1 or SUB_2 are called from another routine that has already achieved BCO), but will call the code in the INI Fold if BCO has not been achieved.


    The USER INI code included above is not necessary, but I often find it convenient.

  • You can also use INI only in $T1 mode if you want to touch up some points or something like that. Or comment INI and uncomment when u need it.


    Example:


    If $T1 Then

    INI

    Endif


    Or if is possible combine these two programs with each other and put motion moves together.

Advertising from our partners