RobotStudio event

How to add a positioner to the virtual controller?

Hi all,

I'm trying to create a replicate of our ABB's robot system in RobotStudio. Our robot cell has a robotic arm and a positioner.

I have created the robotic arm (IRB 2600ID) in RobotStudio through ABB's standard library. I believe this automatically create a IRC5 controller. I add another positioner (IRBP A), also through ABB's standard library.

Now, what I am trying to do is to get my existing (virtual) controller recognises the positioner as external axes (1 and 2). Any suggestion?


  • It is probably easier to start again - delete the existing virtual controller (from the controller tab).
    Make sure you have your robot and positioner(s) in the station and correctly positioned.
    Then in the home tab select virtual controller from layout - as shown below.
    As you go through the steps in the dialogue box add the same options as you have in your real system in the controller options step
    Or you can use the installation manager to build a virtual controller from the license file from the real system (or a backup from the real system), then select existing controller - bottom option in above snip.
  • Thank you both. It helps me set up my external axis.
    If possible, I would like a bit of advice on this.  I have the following instruction:
    MoveJ RelTool(target, 0, 0, 0, \Rx:=torch_x \Ry:=torch_y \Rz:=torch_z), v1000, fine, tWeldGun\WObj:=MyWorkObject;
    Where MyWorkObject is attached to my positioner. My understanding is when this workobject moves in the global coordinate (through the external axis rotation), the robot will move the tools around the new local coordinate of MyWorkObject. However, as I observe in my simulation when my external axis rotates by rot_ax2, the target that the robot moved to does not reflect this rotation (as if MyWorkObject has not moved at all). 

    I believe this is not a bug in RobotStudio but maybe some misunderstanding from my side. Can someone enlighten me on this? Thanks :).
  • Is your workobject connected to the positioner - as shown below

  • Hey, turns out all I need to do is to set the Programmed flag to False! What does this flag do exactly?
    Thanks again by the way:D.
  • In the RAPID reference manual this is called ufprog and TRUE means fixed coordinate system, FALSE = movable coordinate system.