Get current user frame

  • Hi,


    Is there a way to obtain the currently active user coordinate number and assign it to an integer variable on Yaskawa yrc1000 micro?


    Thanks!

  • 1 - If you have only one userframe in a job, you can SET the number on a global B, D, or Integer variable inside the job, Do not forget to reset the variable at the beginning of the job.


    2 - if you change the userframe in a job by MOV or other instructions, you can always use a global B, D, or Integer variable for the userframe you are going to use.


    ex:

    NOP

    .

    .

    .

    SET B111 0 'Reset

    SET B111 3

    IMOV P000 V=500 UF#(B111)

    .

    .

    END



    Note: The same technic can be used in a macro too.

  • Thanks Arash,


    I kind of wanted to do it the other way around so that inside my macro I can perform an incremental move in the currently active user frame.


    ex:

    NOP

    .

    .

    .

    GET I99 some reference to active user frame

    IMOV P000 V=100 PL=0 UF#(I99)

    .

    .

    END

  • If I understand this question correctly; there is not a current active user frame except for jogging when I press the COORD key to choose USER.


    IMOV P000 V=100 PL=0 UF#(I99)


    If I could get the current active user frame for this instruction above, how would I know what is going to happen? I know the robot is going to move linearly some distance and direction specified in P000. The direction is based on the user frame someone last left the COORDs in for jogging? Too risky, since I don't know what is going to happen.

    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.

  • 95devils,


    You can always SETE ,Elemets, to your desired P variable before the move instructions to make sure.


    Like standard Robot home jobs from yaskawa.

    ex

    NOP

    SETE P127 (1) 0

    SETE P127 (2) -78100

    SETE P127 (3) -27870

    SETE P127 (4) 0

    SETE P127 (5) -120350

    SETE P127 (6) 0

    SETE BP125 (1) 721406

    MOVJ P127 BP125 VJ=35.00 DEC=20

    END

  • Sure, you can write values into a position variable in pulse, base, robot, tool, user, and if available master tool frame.


    To do this on a User frame the frame has to either be defined manually or through a robot job.


    The OP is asking about getting the current active user frame. There is not one except for jogging. The user frames are like a library or stack pointer. I point to the one I want to use.

    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.

  • RoboRen,

    Sure, you can write values into a position variable in pulse, base, robot, tool, user, and if available master tool frame.


    To do this on a User frame the frame has to either be defined manually or through a robot job.


    The OP is asking about getting the current active user frame. There is not one except for jogging. The user frames are like a library or stack pointer. I point to the one I want to use.

    correct,


    You do not have an active state of a userframe for the sack of terminology you can say all taught userframes are active. you can use the active userframes in any related instruction but to have the number of UF during operation, you need to designate it with a variable instead of a constant value to have the opportunity to use its data somewhere else.


    we are saying the same thing I guess.


    regards,:smiling_face:

  • Hi guys, I have some frames in a robotic cell..

    1. How can I change the user frames in sequence?

    2. If I want program some point with any frame, when I modify the User frame, the points change values?

Advertising from our partners