SCREWED_WITH_GRIPPER and SCREWED_WITHOUTGRIPPER types will require different functions for computing the clamp positions. Each clamp will have the following positions (wcf) stored in joint attribute, their naming convention will be: 'screwdriver' + beam_pos + clamp_pos:
screwdriver_pickup_attached
screwdriver_pickup_retract_attached
screwdriver_assembleapproach_attached
screwdriver_assemblebegin_attached
screwdriver_assembled_attached
screwdriver_assembled_retracted
screwdriver_storage_approach
screwdriver_storage
screwdriver_storage_toolchanger_retract
compute_pickup_frame (extended for Screwdriver as Gripper)
compute_gripper_grasp_pose (extend for WITH_GRIPPER, skip for Screwdriver as Gripper)
compute_beam_pickupapproach (same for WITH_GRIPPER, add new code for Screwdriver as Gripper)
compute_beam_finalretract (same for WITH_GRIPPER, skip for Screwdriver as Gripper)
compute_screwdriver_detachretract (new for all Screwdriver detach)
SCREWED_WITH_GRIPPER and SCREWED_WITHOUTGRIPPER types will require different functions for computing the clamp positions. Each clamp will have the following positions (wcf) stored in joint attribute, their naming convention will be: 'screwdriver' + beam_pos + clamp_pos:
compute_pickup_frame (extended for Screwdriver as Gripper) compute_gripper_grasp_pose (extend for WITH_GRIPPER, skip for Screwdriver as Gripper) compute_beam_pickupapproach (same for WITH_GRIPPER, add new code for Screwdriver as Gripper) compute_beam_finalretract (same for WITH_GRIPPER, skip for Screwdriver as Gripper) compute_screwdriver_detachretract (new for all Screwdriver detach)