RobotStudio event

modify value of the point

Hello,
I have robot with s4c+ controller,and I have diffrent programs with difrent points now I want to modify value (x,y,z)in automatic mode. I know this way of modify position.
I put robot in the manual mode, than I find the program and the point to modify
MoveL * v600,z10,tcp1, then I go to * and to menu edit and function 8(value), there I can change the values x,y and z. Maybe anyone know how I modify point in automatic mode without that i put the robot to manual mode.

Thanks,

Best regards

Comments

  • Hi andr99

    Take a look at the Offset function

     

    Regards
    Knud Erik Lindberg
    Jorgensen Engineering
  • Hi,

    You must have a correct workObject and the tool to change the new value for this point. If you have a workObject or a Tool diferent in the move instruction the system dont give a premission to modify the point!

     

    Best regards,

     

    Joao Fidalgo

  • Hi andr99,

    Following the way I do that.

    You need to use robtarget variables instead of "*" in your code.
    Change the program this way:

    MoveL *,v1000,z10,tool1;

    to

    MoveL p10,v1000,z10,tool1;

    You'll still be able to modify points in the standard way (Edit-8),  but now you can write a new procedure to allow the user (or yourself) to modify the point interactively. For example:

    PROC EditRobtarget(INOUT ROBTARGET p, STRING description)

      TPWrite "Editing "+description;
      TPWrite "Current X"+NumToStr(p.x, 3);
      TPWrite "           Y"+NumToStr(p.y, 3);
      TPWrite "           Z"+NumToStr(p.z, 3);

      TPReadNum p.x, "Enter new X value";
      TPReadNum p.y, "Enter new Y value";
      TPReadNum p.z, "Enter new Z value";

    ENDPROC

    and somewhere in the program:
    ...
    EditRobtarget p10, "PICK point";

    I hope this can help you
    Claudio

  • Hi claudio

    To make it work you have to use:

      TPWrite "Current X"+NumToStr(p.trans.x, 3);
      TPWrite "           Y"+NumToStr(p.trans.y, 3);
      TPWrite "           Z"+NumToStr(p.trans.z, 3);

      TPReadNum p.trans.x, "Enter new X value";
      TPReadNum p.trans.y, "Enter new Y value";
      TPReadNum p.trans.z, "Enter new Z value";

    image

    Knud E Lindberg2007-4-3 13:33:8
    Regards
    Knud Erik Lindberg
    Jorgensen Engineering

  • Yes. I agree. Thank you very much.

    Regards
    Claudio

  • Hi andr99,

    you may use hotedit function of S4c+ controller

    in automatic mode or even program running situation(without tpwrite instruction is recommend) it works.

    production window viewposition  you'll find robtarget variables choose your desired one, you can modify the x,y,z values.

    But 10mm is the biggest size of once modify, i'm not sure of this number  you can try it.

    Peter
  • Hi Claudio,

    what does the "PICK point" component of the EditRobtarget p10 porceedurecall ?

    PROC EditRobtarget(INOUT ROBTARGET p, STRING description)
    should the p in the above be p10?

    Thanks, Russ

    RUSSELLgee
    Director

    1/118 Connaught St Sandgate QLD Australia 4017
    ph +61738694298
    fax +61738693284
    mob +61418116644
    email russell@manmac.com.au
  • Sorry, I've been away for a while....

    RussG, the purpose of the EditRobtarget procedure is to allow the user to modify the value of a robtarget. Usually a robtarget has a meaning in the application; for example, in a pick-place application you will have a PICK point and a PLACE point.
    The "PICK point" string was just an example of a description. The procedure will create a screen on the TP, like:

    Editing PICK point:
    Current X 123.000
            Y 456.000
            Z 789.000

    So, the user will know which point is changing. You can also try:

    EditRobtarget p10,"p10";

    that leads:

    Editing p10:

    Current X 123.000


            Y 456.000


            Z 789.000



    Regards
    Claudio