RobotStudio event

Move to specific height.

Hello

I am looking for at function to move the robot to a specific height.

When robot is in a random position, i want i to move to 3000 on the y axis. 

I can not find this in the RAPID documentation.

Is there at way to make this move?

Comments

  • Just use the cRobT instruction to determine the location where the robot is and store it as the next point.
    Once the next point is determined you just need to change the Y-coordinate before moving to it.
    Underneath is a same example in rapid code.

    Example code:

    NextPos:=CRobT(\Tool:=tGripper\WObj:=wobj0);

    NextPos.trans.y:=3000;

    MoveL NextPos,v200,fine,tGripper\WObj:=wobj0;


  • lemster68
    lemster68 ✭✭✭
    jthyge said:
    Hello

    I am looking for at function to move the robot to a specific height.

    When robot is in a random position, i want i to move to 3000 on the y axis. 

    This confuses me, Y axis is generally not height.  Z is usually the height.  Just how big is this robot?  3 meters is quite a distance in any direction.

    I can not find this in the RAPID documentation.

    Is there at way to make this move?
    3000 absolute distance or added to what Y value actually is?
    Lee Justice
  • Thanks Geoffrey, that works perfectly. 

    Lee, absolute distance. 

    Thanks for your answers. 
  • lemster68
    lemster68 ✭✭✭
    The other example he gave does work, but it is not the only way.  As is the case many times with Rapid.  What I did before to move to an absolute ceiling was like this:

    pTemp:=CRobT(\Tool:=myTool\WObj:=myWobj);
    MoveL Offs(pTemp, 0,0, (3000-pTemp.trans.z)), v100, fine, tool0;
    3000 is the absolute ceiling and subtracting the current Z from it will always get you up to 3000.
    Lee Justice
  • lemster68 said:
    The other example he gave does work, but it is not the only way.  As is the case many times with Rapid.  What I did before to move to an absolute ceiling was like this:

    pTemp:=CRobT(\Tool:=myTool\WObj:=myWobj);
    MoveL Offs(pTemp, 0,0, (3000-pTemp.trans.z)), v100, fine, tool0;
    3000 is the absolute ceiling and subtracting the current Z from it will always get you up to 3000.
    A word of caution. Do not use this if your robot can be operating at Z-values below 0, as the double negative wouldn't care about your absolute ceiling :p
  • DenisFR
    DenisFR ✭✭✭
    @apbrd1 : You're wrong.
    If your current pos is at -100 you want to offset this of 3100 to get 3000...
  • lemster68
    lemster68 ✭✭✭
    Thanks @DenisFR.  Subtracting a negative value results in ADDITION of that value, like so:

    3000 - (-100) yields 3100.
    Lee Justice