def _load_model(self): """ Loads an xml model, puts it in self.model """ super()._load_model() self.mujoco_robot.set_base_xpos([0, 0, 0]) # load model for table top workspace self.mujoco_arena = TableArena(table_full_size=self.table_full_size, table_friction=self.table_friction) if self.use_indicator_object: self.mujoco_arena.add_pos_indicator() # The panda robot has a pedestal, we want to align it with the table self.mujoco_arena.set_origin( [0.16 + self.table_full_size[0] / 2, 0, 0]) # initialize objects of interest cube = BoxObject( size_min=[0.020, 0.020, 0.020], # [0.015, 0.015, 0.015], size_max=[0.022, 0.022, 0.022], # [0.018, 0.018, 0.018]) rgba=[1, 0, 0, 1], ) self.mujoco_objects = OrderedDict([("cube", cube)]) # task includes arena, robot, and objects of interest self.model = TableTopTask( self.mujoco_arena, self.mujoco_robot, self.mujoco_objects, initializer=self.placement_initializer, ) self.model.place_objects()
def _load_model(self): """ Loads an xml model, puts it in self.model """ super()._load_model() self.mujoco_robot.set_base_xpos([0, 0, 0]) # load model for table top workspace self.mujoco_arena = TableArena(table_full_size=self.table_full_size, table_friction=self.table_friction) if self.use_indicator_object: self.mujoco_arena.add_pos_indicator() # The sawyer robot has a pedestal, we want to align it with the table self.mujoco_arena.set_origin( [0.16 + self.table_full_size[0] / 2, 0, 0]) self.mujoco_objects = OrderedDict([]) # task includes arena, robot, and objects of interest self.model = TableTopTask( self.mujoco_arena, self.mujoco_robot, self.mujoco_objects, initializer=self.placement_initializer, ) self.model.place_objects()
def _load_model(self): """ Loads an xml model, puts it in self.model """ super()._load_model() self.mujoco_robot.set_base_xpos([0, 0, 0]) # load model for table top workspace self.mujoco_arena = TableArena(table_full_size=self.table_full_size, table_friction=self.table_friction) if self.use_indicator_object: self.mujoco_arena.add_pos_indicator() # The panda robot has a pedestal, we want to align it with the table self.mujoco_arena.set_origin( [0.16 + self.table_full_size[0] / 2, 0, 0]) # initialize objects of interest # in original robosuite, a simple domain randomization is included in BoxObject implementation, and called here. We choose to discard that implementation. cube = FullyFrictionalBoxObject( size=self.boxobject_size, friction=self.boxobject_friction, density=self.boxobject_density, rgba=[1, 0, 0, 1], ) self.mujoco_objects = OrderedDict([("cube", cube)]) # task includes arena, robot, and objects of interest self.model = TableTopTask( self.mujoco_arena, self.mujoco_robot, self.mujoco_objects, initializer=self.placement_initializer, ) self.model.place_objects()
def _load_model(self): """ Loads an xml model, puts it in self.model """ super()._load_model() self.mujoco_robot.set_base_xpos([0, 0, 0]) # load model for table top workspace self.mujoco_arena = TableCabinetArena( table_full_size=self.table_full_size, table_friction=self.table_friction ) if self.use_indicator_object: self.mujoco_arena.add_pos_indicator() # The panda robot has a pedestal, we want to align it with the table self.mujoco_arena.set_origin([0.16 + self.table_full_size[0] / 2, 0, 0]) # initialize objects of interest # cube = FullyFrictionalBoxObject( # size=self.boxobject_size, # friction=self.boxobject_friction, # density=self.boxobject_density, # rgba=[1, 0, 0, 1], # ) # self.mujoco_cube = cube # goal = CylinderObject( # size=[0.03, 0.001], # rgba=[0, 1, 0, 1], # ) # self.mujoco_goal = goal # self.mujoco_objects = OrderedDict([("cube", cube), ("goal", goal)]) self.mujoco_objects = None # task includes arena, robot, and objects of interest self.model = TableTopTask( self.mujoco_arena, self.mujoco_robot, self.mujoco_objects, initializer=self.placement_initializer, visual_objects=[], ) if self.mujoco_objects is not None: self.model.place_objects()
def _load_model(self): """ Loads the arena and pot object. """ super()._load_model() self.mujoco_robot.set_base_xpos([0, 0, 0]) # load model for table top workspace self.mujoco_arena = TableArena(table_full_size=self.table_full_size, table_friction=self.table_friction) if self.use_indicator_object: self.mujoco_arena.add_pos_indicator() # The sawyer robot has a pedestal, we want to align it with the table self.mujoco_arena.set_origin( [0.45 + self.table_full_size[0] / 2, 0, 0]) # task includes arena, robot, and objects of interest self.model = TableTopTask( self.mujoco_arena, self.mujoco_robot, self.mujoco_objects, self.object_initializer, )
def _load_model(self): """ Loads an xml model, puts it in self.model """ super()._load_model() self.mujoco_robot.set_base_xpos([0, 0, 0]) # load model for table top workspace self.mujoco_arena = TableArena( table_full_size=self.table_full_size, table_friction=self.table_friction ) if self.use_indicator_object: self.mujoco_arena.add_pos_indicator() # The sawyer robot has a pedestal, we want to align it with the table self.mujoco_arena.set_origin([0.16 + self.table_full_size[0] / 2, 0, 0]) # initialize objects of interest if self.target_object == 'cube': cube = BoxObject( size_min=[0.05, 0.010, 0.05], # [0.015, 0.015, 0.015], size_max=[0.15, 0.015, 0.08], # [0.018, 0.018, 0.018]) rgba=[1, 0, 0, 1], friction=20, density=50, ) else: cube = BoxObject( size=BOX_TEST_OBJECTS[self.target_object]['size'], rgba=[1, 0, 0, 1], friction=20, density=50, ) # if self.target_object == 'cylinder': # cube = CylinderObject( # size_min=[0.015, 0.01], # size_max=[0.025, 0.05], # rgba=[1, 0, 0, 1], # ) # elif self.target_object == 'ball': # cube = BallObject( # size_min=[0.01], # size_max=[0.02], # rgba=[1, 0, 0, 1], # ) self.object = cube # if self.target_object == 'can': # cube = CanObject() # elif self.target_object == 'bottle': # cube = BottleObject() # elif self.target_object == 'milk': # cube = MilkObject() # elif self.target_object == 'cereal': # cube = CerealObject() # elif self.target_object == 'lemon': # cube = LemonObject() self.mujoco_objects = OrderedDict([("cube", cube)]) # task includes arena, robot, and objects of interest self.model = TableTopTask( self.mujoco_arena, self.mujoco_robot, self.mujoco_objects, initializer=self.placement_initializer, ) self.model.place_objects()