In VC you don’t have synchronized motions for robots like you do for example in ABB with MultiMove Sync robots. That is you cannot program motions on robots so that they would always reach their targets at the same time and the robot that is slower to reach its target dictates the speed of the motion.
There are couple of hack ways to do this kind of. One way would be to model second robot as an workpiece positioner so replace robot controller with servo controller and then create an abstract interface to export its joints to first robot. This approach has severe downsides and you basically cannot program and jog the second robot anymore but you can only jog it as external axes on the first robot. And there wouldn’t be kinematics anymore so joint jogging would be supported only and no TCP jogging for the second robot. But this way the motions would be properly synchronized.
Second approach is to use a trick where on the second robot you attach a base to first robot’s mountplate. And then after pick has been done but before any motions are executed you do a small motion on second robot using a base that is attached to first robot. This sets the active base and then you can move the first robot anyway you want and second robot tries to retain its position in relation to the moving base. Then after release you do a small motion with null base to disable this tracking affect and then you can move both robot individually again. Check the attached model for example.
SyncPick.vcmx (601.6 KB)