diff --git a/initial_guess.yaml b/initial_guess.yaml new file mode 100644 index 00000000..b3903370 --- /dev/null +++ b/initial_guess.yaml @@ -0,0 +1,15 @@ +header: + stamp: + sec: 1736790590 + nanosec: 769190399 + frame_id: world +pose: + position: + x: 0.75 + y: 0 + z: 0.59999999999999998 + orientation: + x: 0 + y: 0 + z: 0.70710678118654746 + w: 0.70710678118654746 \ No newline at end of file diff --git a/registered_pose.yaml b/registered_pose.yaml new file mode 100644 index 00000000..ce462187 --- /dev/null +++ b/registered_pose.yaml @@ -0,0 +1,15 @@ +header: + stamp: + sec: 1736110686 + nanosec: 32573000 + frame_id: world +pose: + position: + x: -0.18573307991027832 + y: 0.0037446753121912479 + z: 0.36070221662521362 + orientation: + x: 0.00019979173269462342 + y: 0.20791358031915227 + z: -0.0018835711780756951 + w: 0.97814727367841525 \ No newline at end of file diff --git a/src/fanuc_sim/config/config.yaml b/src/fanuc_sim/config/config.yaml index be3aff45..c1609571 100644 --- a/src/fanuc_sim/config/config.yaml +++ b/src/fanuc_sim/config/config.yaml @@ -43,6 +43,7 @@ hardware: urdf_params: # Use "mock", "mujoco", or "real" - hardware_interface: "mujoco" + - mujoco_viewer: "true" # Sets ROS global params for launch. # [Optional] @@ -112,6 +113,8 @@ ros2_control: - "joint_trajectory_controller" - "servo_controller" - "joint_state_broadcaster" + - "tool_attach_controller" + - "suction_cup_controller" # - "servo_controller" # Load but do not start these controllers so they can be activated later if needed. # [Optional, default=[]] diff --git a/src/fanuc_sim/config/control/picknik_fanuc.ros2_control.yaml b/src/fanuc_sim/config/control/picknik_fanuc.ros2_control.yaml index 68aedf87..c8111bdd 100644 --- a/src/fanuc_sim/config/control/picknik_fanuc.ros2_control.yaml +++ b/src/fanuc_sim/config/control/picknik_fanuc.ros2_control.yaml @@ -7,6 +7,29 @@ controller_manager: type: joint_trajectory_controller/JointTrajectoryController servo_controller: type: joint_trajectory_controller/JointTrajectoryController + # A controller to enable/disable the tool attachment interface at the robot flange. + # In sim, this is modeled as a weld constraint in Mujoco. + # In a real robot, this controller would activate a mechanism to attach/detach the tool at the robot flange. + tool_attach_controller: + type: position_controllers/GripperActionController + # A controller to enable/disable the suction cup. + # In sim, this is modeled as a weld constraint in Mujoco. + # In a real robot, this controller would activate / deactivate a suction cup mechanism. + suction_cup_controller: + type: position_controllers/GripperActionController + + +tool_attach_controller: + ros__parameters: + default: true + joint: suction_cup_tool_interface + allow_stalling: true + +suction_cup_controller: + ros__parameters: + default: true + joint: suction_cup_tool_tip + allow_stalling: true joint_state_broadcaster: ros__parameters: diff --git a/src/fanuc_sim/config/moveit/picknik_fanuc.srdf b/src/fanuc_sim/config/moveit/picknik_fanuc.srdf index 3fb19407..81eb1627 100644 --- a/src/fanuc_sim/config/moveit/picknik_fanuc.srdf +++ b/src/fanuc_sim/config/moveit/picknik_fanuc.srdf @@ -19,6 +19,7 @@ + diff --git a/src/fanuc_sim/description/box-welds (copy).xml b/src/fanuc_sim/description/box-welds (copy).xml new file mode 100644 index 00000000..6592fb80 --- /dev/null +++ b/src/fanuc_sim/description/box-welds (copy).xml @@ -0,0 +1,514 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/fanuc_sim/description/box-welds.xml b/src/fanuc_sim/description/box-welds.xml new file mode 100644 index 00000000..6592fb80 --- /dev/null +++ b/src/fanuc_sim/description/box-welds.xml @@ -0,0 +1,514 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/fanuc_sim/description/box-welds.xml.bak b/src/fanuc_sim/description/box-welds.xml.bak new file mode 100644 index 00000000..e2d34158 --- /dev/null +++ b/src/fanuc_sim/description/box-welds.xml.bak @@ -0,0 +1,528 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/fanuc_sim/description/fanuc_lrmate200id.ros2_control.xacro b/src/fanuc_sim/description/fanuc_lrmate200id.ros2_control.xacro index e926a49e..a0788da1 100644 --- a/src/fanuc_sim/description/fanuc_lrmate200id.ros2_control.xacro +++ b/src/fanuc_sim/description/fanuc_lrmate200id.ros2_control.xacro @@ -5,6 +5,7 @@ params="name initial_positions_file hardware_interface mujoco_model" > + picknik_mujoco_ros/MujocoSystem $(arg mujoco_model) fanuc_sim + $(arg mujoco_viewer) 10 60 10 diff --git a/src/fanuc_sim/description/picknik_fanuc.xacro b/src/fanuc_sim/description/picknik_fanuc.xacro index 885c3fe4..28d063b3 100644 --- a/src/fanuc_sim/description/picknik_fanuc.xacro +++ b/src/fanuc_sim/description/picknik_fanuc.xacro @@ -13,12 +13,63 @@ filename="$(find fanuc_sim)/description/fanuc_lrmate200id.ros2_control.xacro" /> - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + +