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

  • Geoffrey_Borny
    Geoffrey_Borny Roeselare
    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 United States ✭✭✭
    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
  • jthyge
    jthyge Denmark
    Thanks Geoffrey, that works perfectly. 

    Lee, absolute distance. 

    Thanks for your answers. 
  • lemster68
    lemster68 United States ✭✭✭
    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
  • apbrd1
    apbrd1 Sweden
    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 FRANCE ✭✭✭
    @apbrd1 : You're wrong.
    If your current pos is at -100 you want to offset this of 3100 to get 3000...
  • lemster68
    lemster68 United States ✭✭✭
    Thanks @DenisFR.  Subtracting a negative value results in ADDITION of that value, like so:

    3000 - (-100) yields 3100.
    Lee Justice