-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #20 from PickNikRobotics/update-objectives-remove-…
…manual-grasp-link Update objectives and remove manual_grasp_link
- Loading branch information
Showing
22 changed files
with
220 additions
and
114 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
35 changes: 35 additions & 0 deletions
35
src/kinova_gen3_base_config/objectives/3_waypoint_pick_and_place.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
<?xml version="1.0"?> | ||
<root BTCPP_format="4" main_tree_to_execute="3 Waypoints Pick and Place"> | ||
<!-- ////////// --> | ||
<BehaviorTree ID="3 Waypoints Pick and Place" _description="Repeatedly grab a small object, place it at desired destination, and then navigate to specified waypoint until failure" _favorite="true"> | ||
<Control ID="Sequence"> | ||
<!-- Clear snapshot, move to center pose, and open gripper --> | ||
<Action ID="ClearSnapshot" /> | ||
<Action ID="MoveToWaypoint" waypoint_name="Table" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveGripperAction" gripper_command_action_name="/robotiq_gripper_controller/gripper_cmd" position="0"/> | ||
<!-- Keep executing the pick and place sequence until failure --> | ||
<Decorator ID="KeepRunningUntilFailure"> | ||
<Control ID="Sequence"> | ||
<!-- Pick object from "Pick", put it down at "Place", and go back to center pose --> | ||
<Control ID="Sequence"> | ||
<Action ID="MoveToWaypoint" waypoint_name="Pick" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveGripperAction" gripper_command_action_name="/robotiq_gripper_controller/gripper_cmd" position="0.7929"/> | ||
<Action ID="MoveToWaypoint" waypoint_name="Table" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveToWaypoint" waypoint_name="Place" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveGripperAction" gripper_command_action_name="/robotiq_gripper_controller/gripper_cmd" position="0"/> | ||
<Action ID="MoveToWaypoint" waypoint_name="Table" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
</Control> | ||
<!-- Pick object from "Place", put it down at "Pick", and go back to center pose --> | ||
<Control ID="Sequence"> | ||
<Action ID="MoveToWaypoint" waypoint_name="Place" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveGripperAction" gripper_command_action_name="/robotiq_gripper_controller/gripper_cmd" position="0.7929"/> | ||
<Action ID="MoveToWaypoint" waypoint_name="Table" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveToWaypoint" waypoint_name="Pick" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
<Action ID="MoveGripperAction" gripper_command_action_name="/robotiq_gripper_controller/gripper_cmd" position="0"/> | ||
<Action ID="MoveToWaypoint" waypoint_name="Table" planning_group_name="manipulator" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" use_all_planners="true"/> | ||
</Control> | ||
</Control> | ||
</Decorator> | ||
</Control> | ||
</BehaviorTree> | ||
</root> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
13 changes: 13 additions & 0 deletions
13
src/kinova_gen3_base_config/objectives/move_to_named_pose.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
<?xml version="1.0"?> | ||
<root BTCPP_format="4" main_tree_to_execute="Move to Named Pose"> | ||
<BehaviorTree ID="Move to Named Pose" _description="This Objective is used when moving to one of the saved waypoints in your site configuration"> | ||
<Control ID="Sequence" name="root"> | ||
<Action ID="RetrieveWaypoint" waypoint_joint_state="{target_joint_state}" waypoint_name="Home"/> | ||
<Action ID="InitializeMTCTask" task_id="move_to_named_pose" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" task="{move_to_waypoint_task}"/> | ||
<Action ID="SetupMTCCurrentState" task="{move_to_waypoint_task}"/> | ||
<Action ID="SetupMTCMoveToJointState" joint_state="{target_joint_state}" name="SetupMTCMoveToJointState" planning_group_name="manipulator" task="{move_to_waypoint_task}"/> | ||
<Action ID="PlanMTCTask" solution="{move_to_waypoint_solution}" task="{move_to_waypoint_task}"/> | ||
<Action ID="ExecuteMTCTask" solution="{move_to_waypoint_solution}"/> | ||
</Control> | ||
</BehaviorTree> | ||
</root> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
40 changes: 40 additions & 0 deletions
40
src/kinova_gen3_base_config/objectives/open_cabinet_door_affordance.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
<?xml version="1.0"?> | ||
<root BTCPP_format="4" main_tree_to_execute="Open Cabinet Door"> | ||
<BehaviorTree ID="Open Cabinet Door" _description="Open a cabinet door by grasping and pulling its handle"> | ||
<Control ID="Sequence" name="Setup"> | ||
<SubTree ID="Re-Zero Force-Torque Sensors" /> | ||
<!-- Set admittance control parameters at the start of the Objective --> | ||
<!-- Wrap in a ForceSuccess as Sim doesn't have the admittance controller loaded --> | ||
<!-- See https://github.com/PickNikRobotics/moveit_studio/issues/3406 --> | ||
<Decorator ID="ForceSuccess"> | ||
<Action ID="UpdateAdmittanceController" config_file_name="open_cabinet_door_admittance_controller_config.yaml"/> | ||
</Decorator> | ||
<!-- Execute the Objective --> | ||
<Action ID="LoadObjectiveParameters" config_file_name="open_cabinet_door_affordance_config.yaml" parameters="{parameters}" /> | ||
<Action ID="GetPoseFromUser" parameter_name="process_door_selection.hinge_axis_pose_end" parameter_value="{hinge_axis_pose_end}" /> | ||
<Action ID="GetPoseFromUser" parameter_name="process_door_selection.hinge_axis_pose_start" parameter_value="{hinge_axis_pose_start}" /> | ||
<Action ID="GetPoseFromUser" parameter_name="process_door_selection.grasp_pose" parameter_value="{grasp_pose}" /> | ||
<Action ID="GetMoveAlongArcSubframes" grasp_pose="{grasp_pose}" hinge_axis_pose_end="{hinge_axis_pose_end}" hinge_axis_pose_start="{hinge_axis_pose_start}" screw_axis_pose="{screw_axis_pose}" screw_origin_pose="{screw_origin_pose}" target_grasp_pose="{grasp_pose}" /> | ||
<Action ID="MoveGripperAction" gripper_command_action_name="/robotiq_gripper_controller/gripper_cmd" position="0.0" /> | ||
<Control ID="Sequence" name="OpenDoorAffordanceMain"> | ||
<Action ID="InitializeMTCTask" task_id="open_door_affordance" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" task="{open_door_affordance_task}" /> | ||
<Action ID="SetupMTCCurrentState" task="{open_door_affordance_task}" /> | ||
<Action ID="SetupMTCGraspThenMoveAlongArcPull" grasp_pose="{grasp_pose}" name="SetupMTCOpenDoorAffordance" parameters="{parameters}" screw_axis_pose="{screw_axis_pose}" screw_origin_pose="{screw_origin_pose}" task="{open_door_affordance_task}" /> | ||
<Action ID="PlanMTCTask" solution="{open_door_affordance_solution}" task="{open_door_affordance_task}" /> | ||
<SubTree ID="Wait for Trajectory Approval if User Available" solution="{open_door_affordance_solution}"/> | ||
<!-- Whether task execution succeeds or fails, reset the controllers to disable admittance control. --> | ||
<Control ID="IfThenElse" name="execute_and_reset_controllers"> | ||
<!-- IF task execution succeeds --> | ||
<Action ID="ExecuteMTCTask" solution="{open_door_affordance_solution}" /> | ||
<!-- THEN reset the controllers --> | ||
<Action ID="ActivateControllers" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" /> | ||
<!-- ELSE reset the controllers and return failure --> | ||
<Control ID="Sequence"> | ||
<Action ID="ActivateControllers" controller_names="/joint_trajectory_controller /robotiq_gripper_controller" /> | ||
<Action ID="AlwaysFailure" /> | ||
</Control> | ||
</Control> | ||
</Control> | ||
</Control> | ||
</BehaviorTree> | ||
</root> |
16 changes: 16 additions & 0 deletions
16
src/kinova_gen3_base_config/objectives/open_cabinet_door_affordance_config.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
SetupMTCOpenDoorAffordance: | ||
arm_group_name: "manipulator" | ||
end_effector_group_name: "gripper" | ||
end_effector_name: "moveit_ee" | ||
ik_frame_name: "grasp_link" | ||
end_effector_closed_pose_name: "close" | ||
end_effector_open_pose_name: "open" | ||
|
||
# List of controllers to use during the stages that interact with the door. | ||
# For this objective, we want to enable admittance control. | ||
door_opening_controllers: "/joint_trajectory_controller_chained_open_door /admittance_controller_open_door /robotiq_gripper_controller" | ||
|
||
approach_distance: 0.05 | ||
translation_distance: 0.0 | ||
rotation_distance: 60.0 | ||
use_circular_arc: true |
25 changes: 0 additions & 25 deletions
25
src/kinova_gen3_base_config/objectives/open_door_affordance.xml
This file was deleted.
Oops, something went wrong.
16 changes: 0 additions & 16 deletions
16
src/kinova_gen3_base_config/objectives/open_door_affordance_config.yaml
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.