Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Parts assembly

Hello, I am new to RobodoDK and my task is to simulate a Pick and Place to assemble a 3-piece object and put it on a conveyor, my question is, How to move the last object to the conveyor as one?

Attached Files Thumbnail(s)
Hi Alex,

When you drop an object you can drop it as a dependency of another object (a parent object). Then, when you grab your assembly you can just pick the parent object. If you can provide your RDK file we can help you better.

Hi again Albert, adjoint file rdk, my solution for this was attach three times object, but sometimes when move to conveyor assembly it broken and parts go in conveyor not as only one

Attached Files
.rdk   SistemaEnsamble.rdk (Size: 3.51 MB / Downloads: 621)
Hi Alex, 

I see what is the problem here. 
I would say that the best solution would be to create a small python macro to create the assembly as one pickable object instead of creating multiple pick actions. 

If you get just a bit familiar with the API, you could do something like that:

from robolink import *    # RoboDK API
from robodk import *      # Robot toolbox
RDK = Robolink()

#------ CONSTANT ------#
TOOL_NAME = 'Name of the gripper'
OBJECT_NAME = 'Name of the base assembly object'

tool = RDK.Item(TOOL_NAME,itemtype=ITEM_TYPE_TOOL)
object_assembly = RDK.Item(OBJECT_NAME,itemtype=ITEM_TYPE_OBJECT)

if tool.Valid() and object_assembly.Valid():
   obj_list = tool.Childs()
   for item in obj_list:
       if item.Type() is ITEM_TYPE_OBJECT:

It will take the object you have in your gripper and place it as a child of the base assembly part.
When you want to pick the assembly, you can simply take the base assembly part and all other parts attached to it will follow. 

I attached a modified version of your station, take a look at it. 


Attached Files
.rdk   SistemaEnsamble.rdk (Size: 3.51 MB / Downloads: 632)

Users browsing this thread:
1 Guest(s)