RobotStudio event

WORKOBJECT

I want set at my main procedur workobject diffrent then workobject0. How I can do this ?? 

Comments

  • Hi
    I'm not sure what you mean?

    But the workobject is an argument to the motion instruction
    so just define a new workobject and use that in your motion instruction.
    Be aware of that target positions relates to the workobject they where teached in so if you just change the workobject the robot could end up in a position that may surprise you.

    Use RobotStudio it helps a lot in cases like this, testing that doesn't hurts image

    Per Svensson
    Robotics and Vision Specialist
    Consat Engineering
  • But I want change workobject during my program and I don't know how I can do it.
  • Hi

    The deafult movement teached is:

    MoveL *,v100,fine,tool0;

    but you can specify a different workobject through:

    MoveL *,v100,fine,tool0wobj:=wobj1;

    If you need to select a workobject in your program try somthing like:
    ...
    PERS wobjdata wobj1:=......;
    PERS wobjdata wobj2:=......;
    PERS wobjdata wo_Work:=......;
    ...
    ! Somewhere in your program:
    IF <some condition> THEN
      wo_Work := wobj1;
    ELSE
      wo_Work:=wobj2;
    ENDIF
    ...
    ! In your main procedure:
    MOVEL *,v1000,z10,tool1wobj:=wo_Work;

    Regards,
    Claudio

  • Hi,

     

    Claudio explain how you can use a workwobject difrent by Wobj0. You can modify your coordinates of workObject or the rotation of a workObject, try something like this.

    PERS wobjdata board1:=......;
    PERS wobjdata board2:=......;

    board2:=board1;


     board2.oframe.trans.x:=mesa2.oframe.trans.x+Dx;
     board2.oframe.trans.y:=mesa2.oframe.trans.y+Dy;
     board2.oframe.trans.z:=mesa2.oframe.trans.z+Dz;
     
     MoveJ *, Velo_rapida, z50, ventosaWObj:=board2;

    And you can rotate the WorkObject to:

    board2.uframe.rot := OrientZYX(anglz, angly, anglx);

     

    Regards,

     

    Joao Fidalgo