RobotStudio event

Changing TCP Location Based on VC

Options

Hello,

I'm trying to find a way to update a tooldata's location in RS based on changes in the VC.

If the VC where to change a tooldata, is there a way to update the corresponding tooldata in RS automatically?  Maybe some VSTA code is order?

Any advice/help would be great.

Thanks!

Comments

  • Henrik Berlin
    Options

    Hi Dan,

    As you probably already know, the tooldata referenced by a move instruction is updated when the move instruction is synchronized to the station.

    As I interpret it, it seems that you are after an "Sync to Station" operation trigged by a changed in the RAPID program? I suppose, this might be of interest if the tooldata is edited in the Program Editor, for instance.

    Let me investigate the issue with one of the developers here...

    Kind regards,

    Henrik Berlin2007-9-3 11:26:7
    Henrik Berlin
    ABB
  • DanS
    Options

    The real robot is going to pick up a part and changed its tooldata based on how that part is held.  The part may be picked up by a magnetic gripper with an offset and then the TCP will be updated to the same location on the part everytime.

    I would like a way to simulate this TCP update in robotstudio if possible.  It would be enough to simply attach a RS frame to the part that is being picked up.  After the robot moves to pick up the part, the TCP would be set equal to the RS frame that has been attached to the part.

    Is there any way to put this in a macro (I've never worked in the RS VSTA).  And then have the macro run via the Event Manager when the VC sets an output???

    DanS2007-9-17 21:27:58
  • Henrik Berlin
    Options

    Hi Dan,

    Through the Event Manager it is possible to attach a frame to a box triggered by an output in the VC. The attachment needs to be done through VSTA. The GUI has more limitations that the API when it comes to attachments.

    If I understand you correctly, the TCP will be fixed relative to the box, but may change relative to tool0 depending on how the gripper picks the box. (Otherwise, if the TCP of the box is always fixed relative to tool0, then you just need to define a fix tooldata that you use in the instructions executed after the box is gripped, but I guess this is not the case here.) It should also be possible to update the tooldata of the VC during simulation using the PC-SDK of the Robot Application Builder from a VSTA macro. I haven't tried it myself though.

    Just for curiosity, do you want to affect the robot motion or is this only for visualization?

    Kind regards,

    Henrik

     


     

     

    Henrik Berlin
    ABB
  • DanS
    Options

    It will affect robot motion.  In the end I would like to place the box using the box TCP, so robtargets to place the box will be created.

    Thanks for the input Henrik!

    DanS2007-9-18 17:38:27
  • DanS
    Options

    I would like to create a VSTA macro that sets the xyz and rotation values of a tooldata defined in Robotstudio equal to the values of a frame that is attached to a box that the robot can pick up.

    The xyz/rotation values of the frame will have to be referenced from tool0 in order to put the tooldata in the correct location (at the same xyz/rotation values).

    Even just changing the tooldata to some fixed xyz/rot values in a VSTA macro would be enough to get it up and running.

    I'm completely new to the VSTA and C# language, so any guidance at all would be appreciated.

    Thank you.

    DanS2007-9-18 22:33:9
  • Henrik Berlin
    Options

    Hi Dan,

    Can you please publish a few lines of the corresponding RAPID code? That will make it easier for us to completely understand what you are trying to accomplish.

    Kind regards,

    Henrik

    Henrik Berlin
    ABB