Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,9 @@
[submodule "src/dependencies/moveit_studio_ur_pstop_manager"]
path = src/dependencies/moveit_studio_ur_pstop_manager
url = [email protected]:PickNikRobotics/moveit_studio_ur_pstop_manager.git
[submodule "src/dependencies/moveit_pro_clipseg"]
path = src/dependencies/moveit_pro_clipseg
url = https://github.com/PickNikRobotics/moveit_pro_clipseg.git
[submodule "src/dependencies/serial"]
path = src/dependencies/serial
url = https://github.com/tylerjw/serial.git
2 changes: 1 addition & 1 deletion src/dependencies/clearpath_common
Submodule clearpath_common updated 310 files
2 changes: 1 addition & 1 deletion src/dependencies/ewellix_lift
Submodule ewellix_lift updated 103 files
1 change: 1 addition & 0 deletions src/dependencies/moveit_pro_clipseg
Submodule moveit_pro_clipseg added at 9d8d88
2 changes: 1 addition & 1 deletion src/dependencies/picknik_accessories
Submodule picknik_accessories updated 91 files
+0 −16 CMakeLists.txt
+2 −2 descriptions/ar_markers/Marker0.dae
+2 −2 descriptions/ar_markers/Marker1.dae
+2 −2 descriptions/ar_markers/Marker10.dae
+2 −2 descriptions/ar_markers/Marker11.dae
+2 −2 descriptions/ar_markers/Marker12.dae
+2 −2 descriptions/ar_markers/Marker13.dae
+2 −2 descriptions/ar_markers/Marker14.dae
+2 −2 descriptions/ar_markers/Marker15.dae
+2 −2 descriptions/ar_markers/Marker16.dae
+2 −2 descriptions/ar_markers/Marker17.dae
+2 −2 descriptions/ar_markers/Marker18.dae
+2 −2 descriptions/ar_markers/Marker19.dae
+2 −2 descriptions/ar_markers/Marker2.dae
+2 −2 descriptions/ar_markers/Marker20.dae
+2 −2 descriptions/ar_markers/Marker21.dae
+2 −2 descriptions/ar_markers/Marker22.dae
+2 −2 descriptions/ar_markers/Marker23.dae
+2 −2 descriptions/ar_markers/Marker24.dae
+2 −2 descriptions/ar_markers/Marker25.dae
+2 −2 descriptions/ar_markers/Marker26.dae
+2 −2 descriptions/ar_markers/Marker27.dae
+2 −2 descriptions/ar_markers/Marker28.dae
+2 −2 descriptions/ar_markers/Marker29.dae
+2 −2 descriptions/ar_markers/Marker3.dae
+2 −2 descriptions/ar_markers/Marker30.dae
+2 −2 descriptions/ar_markers/Marker31.dae
+2 −2 descriptions/ar_markers/Marker32.dae
+2 −2 descriptions/ar_markers/Marker33.dae
+2 −2 descriptions/ar_markers/Marker34.dae
+2 −2 descriptions/ar_markers/Marker4.dae
+2 −2 descriptions/ar_markers/Marker5.dae
+2 −2 descriptions/ar_markers/Marker6.dae
+2 −2 descriptions/ar_markers/Marker7.dae
+2 −2 descriptions/ar_markers/Marker8.dae
+2 −2 descriptions/ar_markers/Marker9.dae
+1 −1 descriptions/sensors/realsense_d415.urdf.xacro
+0 −43 macros/tools/robotiq_epick.xacro
+0 −3 mujoco_assets/assets/bowl.stl
+0 −3 mujoco_assets/assets/bowl_concave_hemisphere.stl
+0 −3 mujoco_assets/assets/bowl_convex_hemisphere.stl
+0 −3 mujoco_assets/assets/bracket_sample1.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/base_link.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/link_1.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/link_2.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/link_3.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/link_4.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/link_5.stl
+3 −0 mujoco_assets/assets/lrmate200id/collision/link_6.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/base_link.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/link_1.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/link_2.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/link_3.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/link_4.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/link_5.stl
+3 −0 mujoco_assets/assets/lrmate200id/visual/link_6.stl
+0 −3 mujoco_assets/assets/sheet_metal.png
+2 −2 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool.dae
+1 −11 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool.mtl
+2 −2 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool.obj
+0 −12 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_1.mtl
+0 −3 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_1.obj
+0 −12 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_2.mtl
+0 −3 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_2.obj
+0 −12 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_3.mtl
+0 −3 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_3.obj
+0 −12 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_4.mtl
+0 −3 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_4.obj
+2 −2 mujoco_assets/grinding_sim_assets/tool0_tool/tool0_tool_decimated.dae
+2 −2 mujoco_assets/grinding_sim_assets/tool_base/tool_base_decimated.dae
+0 −3 mujoco_assets/grinding_sim_assets/workcell.obj
+3 −0 mujoco_assets/grinding_sim_assets/workcell.stl
+39 −72 mujoco_assets/lab_desk/desk.xml
+14 −14 mujoco_assets/lrmate200id/lrmate200id_globals.xml
+4 −4 mujoco_assets/robotiq_2f85/robotiq2f85.xml
+10 −17 mujoco_assets/ur5e/ur5e.xml
+2 −3 mujoco_assets/ur5e/ur5e_globals.xml
+0 −1 mujoco_assets/ur5e/ur5e_linear_rail.xml
+0 −2 package.xml
+ printing/factory_sim/3mf/pick_and_place_bracket_jig_base.3mf
+ printing/factory_sim/3mf/pick_and_place_bracket_jig_post.3mf
+ printing/factory_sim/3mf/pick_and_place_bracket_part.3mf
+0 −54 printing/factory_sim/README.md
+ printing/factory_sim/images/bracket_jig1.jpg
+ printing/factory_sim/images/bracket_part1.jpg
+ printing/factory_sim/images/bracket_part_and_jig1.jpg
+ printing/factory_sim/images/jig_post_closeup1.jpg
+0 −3 printing/factory_sim/images/pick_and_place_bracket_jig_diagram1.png
+0 −3 printing/factory_sim/images/pick_and_place_brackets_from_left_bin_objective_preview1.png
+0 −3 printing/factory_sim/images/post_vertical_orientation1.png
+0 −3 printing/factory_sim/images/uline_bin1.png
2 changes: 1 addition & 1 deletion src/dependencies/ros2_robotiq_gripper
Submodule ros2_robotiq_gripper updated 37 files
+5 −5 .github/workflows/ci-coverage-build.yml
+2 −2 .github/workflows/ci-format.yml
+26 −0 .github/workflows/humble-binary-build-main.yml
+26 −0 .github/workflows/humble-binary-build-testing.yml
+25 −0 .github/workflows/humble-semi-binary-build-main.yml
+25 −0 .github/workflows/humble-semi-binary-build-testing.yml
+19 −0 .github/workflows/humble-source-build.yml
+26 −0 .github/workflows/iron-binary-build-main.yml
+26 −0 .github/workflows/iron-binary-build-testing.yml
+25 −0 .github/workflows/iron-semi-binary-build-main.yml
+25 −0 .github/workflows/iron-semi-binary-build-testing.yml
+19 −0 .github/workflows/iron-source-build.yml
+2 −2 .github/workflows/reusable-ros-tooling-source-build.yml
+2 −3 robotiq_controllers/CMakeLists.txt
+4 −11 robotiq_controllers/src/robotiq_activation_controller.cpp
+4 −16 robotiq_description/config/robotiq_controllers.yaml
+0 −11 robotiq_description/launch/robotiq_control.launch.py
+1 −1 robotiq_description/package.xml
+31 −23 robotiq_description/urdf/2f_140.ros2_control.xacro
+31 −23 robotiq_description/urdf/2f_85.ros2_control.xacro
+1 −2 robotiq_description/urdf/robotiq_2f_140_gripper.urdf.xacro
+4 −14 robotiq_description/urdf/robotiq_2f_140_macro.urdf.xacro
+1 −2 robotiq_description/urdf/robotiq_2f_85_gripper.urdf.xacro
+4 −15 robotiq_description/urdf/robotiq_2f_85_macro.urdf.xacro
+2 −6 robotiq_driver/CMakeLists.txt
+2 −4 robotiq_driver/include/robotiq_driver/hardware_interface.hpp
+1 −0 robotiq_driver/package.xml
+0 −1 robotiq_driver/src/default_driver_factory.cpp
+18 −24 robotiq_driver/src/hardware_interface.cpp
+4 −4 robotiq_driver/tests/CMakeLists.txt
+0 −2 robotiq_driver/tests/test_data_utils.cpp
+33 −50 robotiq_driver/tests/test_robotiq_gripper_hardware_interface.cpp
+1 −1 robotiq_hardware_tests/CMakeLists.txt
+5 −0 ros2_robotiq_gripper-not-released.humble.repos
+5 −0 ros2_robotiq_gripper-not-released.iron.repos
+5 −0 ros2_robotiq_gripper.humble.repos
+5 −0 ros2_robotiq_gripper.iron.repos
1 change: 1 addition & 0 deletions src/dependencies/serial
Submodule serial added at d8d160
1 change: 0 additions & 1 deletion src/dual_arm_mobile_hw/launch/agent_bridge.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
<include
file="$(find-pkg-share dual_arm_mobile_hw)/launch/rs_cameras.launch.xml"
>
<arg name="scene_camera_serial_no" value="'135322061686'" />
<arg name="wrist_camera_serial_no" value="'211122063503'" />
</include>
</launch>
5 changes: 4 additions & 1 deletion src/dual_arm_mobile_hw/launch/rs_cameras.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
<arg name="wrist_camera_serial_no" default="'0'" />

<!-- Scene camera -->
<!-- Commented out: Scene camera with serial 135322061686 is not connected.
Uncomment below and set scene_camera_serial_no to the correct serial when the camera is available. -->
<!--
<include file="$(find-pkg-share dual_arm_mobile_hw)/launch/pro_rs_launch.py">
<arg name="camera_name" value="scene_camera" />
<arg name="serial_no" value="$(var scene_camera_serial_no)" />
Expand All @@ -14,7 +17,6 @@
<arg name="pointcloud.ordered_pc" value="True" />
<arg name="decimation_filter.enable" value="False" />

<!--# information about the topics the camera publishes the raw image and info-->
<arg name="rgb_info" value="/scene_camera/color/camera_info" />
<arg name="rgb_image" value="/scene_camera/color/image_raw" />
<arg
Expand All @@ -34,6 +36,7 @@
value="/scene_camera/depth/image_rect_raw"
/>
</include>
-->
<!-- Wrist camera -->
<include file="$(find-pkg-share dual_arm_mobile_hw)/launch/pro_rs_launch.py">
<arg name="camera_name" value="left_wrist_mounted_camera" />
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
<?xml version="1.0" encoding="UTF-8" ?>
<root
BTCPP_format="4"
main_tree_to_execute="GetLeftRightPickPoseFromBottlePose"
>
<!--//////////-->
<BehaviorTree ID="GetLeftRightPickPoseFromBottlePose">
<Control ID="Sequence" name="TopLevelSequence">
<Action
ID="CreateStampedPose"
reference_frame="world"
stamped_pose="{table_pose}"
orientation_xyzw="0.5;0.5;0.5;0.5"
name="Hard coding the table pose for now but should be taken from qr code on the table"
position_xyz="0;0;0"
/>
<SubTree
ID="GetQuaternionVectorFromPoseStamped"
pose_stamped_in="{table_pose}"
quaternion_vector="{table_quaternion_vector}"
/>
<SubTree
ID="GetPositionVectorFromPoseStamped"
pose_stamped_in="{bottle_in_world_pose}"
position_vector="{position_vector}"
/>
<Action
ID="CreateStampedPose"
reference_frame="world"
orientation_xyzw="{table_quaternion_vector}"
position_xyz="{position_vector}"
stamped_pose="{bottle_bottom_aligned_pose}"
/>
<Action
ID="TransformPose"
input_pose="{bottle_bottom_aligned_pose}"
output_pose="{bottle_bottom_aligned_pose}"
translation_xyz="0;0;0"
quaternion_xyzw="0;-0.7071;0;0.7071"
/>
<Action
ID="CreateStampedPose"
reference_frame="world"
orientation_xyzw="{table_quaternion_vector}"
position_xyz="{position_vector}"
stamped_pose="{bottle_bottom_aligned_left_pose}"
/>
<Action
ID="TransformPose"
input_pose="{bottle_bottom_aligned_pose}"
output_pose="{bottle_bottom_aligned_left_pose}"
translation_xyz="0;0.2;-0.1"
quaternion_xyzw="0;0;0;0"
/>
<Action
ID="CreateStampedPose"
reference_frame="world"
orientation_xyzw="{table_quaternion_vector}"
position_xyz="{position_vector}"
stamped_pose="{bottle_bottom_aligned_right_pose}"
/>
<Action
ID="TransformPose"
input_pose="{bottle_bottom_aligned_pose}"
output_pose="{bottle_bottom_aligned_right_pose}"
translation_xyz="0;0.1;0.16"
quaternion_xyzw="0;1;0;0"
/>
<Action
ID="VisualizePose"
marker_lifetime="0.000000"
marker_name="bottle_bottom_aligned_left_pose"
marker_size="0.100000"
pose="{bottle_bottom_aligned_left_pose}"
marker_text="bottle_bottom_aligned_left_pose"
/>
<Action
ID="VisualizePose"
marker_lifetime="0.000000"
marker_name="bottle_bottom_aligned_right_pose"
marker_size="0.100000"
pose="{bottle_bottom_aligned_right_pose}"
marker_text="bottle_bottom_aligned_right_pose"
/>
</Control>
</BehaviorTree>
<TreeNodesModel>
<SubTree ID="GetLeftRightPickPoseFromBottlePose">
<MetadataFields>
<Metadata runnable="false" />
<Metadata subcategory="Application - Advanced Examples" />
</MetadataFields>
<inout_port
name="bottle_bottom_aligned_left_pose"
default="{bottle_bottom_aligned_left_pose}"
type="geometry_msgs::msg::PoseStamped_&lt;std::allocator&lt;void&gt; &gt;"
>
left pre-grasp pose
</inout_port>
<inout_port
name="bottle_bottom_aligned_right_pose"
default="{bottle_bottom_aligned_right_pose}"
type="geometry_msgs::msg::PoseStamped_&lt;std::allocator&lt;void&gt; &gt;"
>
right pre-grasp pose
</inout_port>
<inout_port
name="bottle_in_world_pose"
default="{bottle_in_world_pose}"
type="geometry_msgs::msg::PoseStamped_&lt;std::allocator&lt;void&gt; &gt;"
>
Input for current pose of bottle in world frame
</inout_port>
</SubTree>
</TreeNodesModel>
</root>
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" ?>
<root BTCPP_format="4" main_tree_to_execute="GetPositionVectorFromPoseStamped">
<!--//////////-->
<BehaviorTree ID="GetPositionVectorFromPoseStamped">
<Control ID="Sequence" name="">
<Action
ID="UnpackPoseStampedMessage"
header="{header}"
pose_stamped="{pose_stamped_in}"
pose="{temp_pose_1}"
/>
<Action
ID="UnpackPoseMessage"
orientation="{orientation_quat}"
pose="{temp_pose_1}"
position="{temp_position}"
/>
<Action
ID="UnpackPointMessage"
point="{temp_position}"
x="{px}"
y="{py}"
z="{pz}"
/>
<Action ID="ResetVector" vector="{position_vector}" />
<Action
ID="InsertInVector"
index="0"
output_vector="{position_vector}"
element="{px}"
input_vector="{position_vector}"
/>
<Action
ID="InsertInVector"
input_vector="{position_vector}"
output_vector="{position_vector}"
element="{py}"
index="1"
/>
<Action
ID="InsertInVector"
index="2"
input_vector="{position_vector}"
output_vector="{position_vector}"
element="{pz}"
/>
</Control>
</BehaviorTree>
<TreeNodesModel>
<SubTree ID="GetPositionVectorFromPoseStamped">
<MetadataFields>
<Metadata runnable="false" />
<Metadata subcategory="Pose Handling" />
</MetadataFields>
<inout_port
name="pose_stamped_in"
default="{pose_stamped_in}"
type="geometry_msgs::msg::PoseStamped_&lt;std::allocator&lt;void&gt; &gt;"
/>
<inout_port
name="position_vector"
default="{position_vector}"
type="std::vector&lt;double&gt;"
/>
</SubTree>
</TreeNodesModel>
</root>
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8" ?>
<root
BTCPP_format="4"
main_tree_to_execute="GetQuaternionVectorFromPoseStamped"
>
<!--//////////-->
<BehaviorTree ID="GetQuaternionVectorFromPoseStamped">
<Control ID="Sequence" name="">
<Action
ID="UnpackPoseStampedMessage"
header="{header}"
pose_stamped="{pose_stamped_in}"
pose="{temp_pose_1}"
/>
<Action
ID="UnpackPoseMessage"
orientation="{orientation_quat}"
pose="{temp_pose_1}"
position="{pc_centroid_position}"
/>
<Action
ID="UnpackQuaternionMessage"
quaternion="{orientation_quat}"
w="{qw}"
x="{qx}"
y="{qy}"
z="{qz}"
/>
<Action ID="ResetVector" vector="{quaternion_vector}" />
<Action
ID="InsertInVector"
index="0"
input_vector="{quaternion_vector}"
output_vector="{quaternion_vector}"
element="{qx}"
/>
<Action
ID="InsertInVector"
input_vector="{quaternion_vector}"
output_vector="{quaternion_vector}"
element="{qy}"
index="1"
/>
<Action
ID="InsertInVector"
index="2"
input_vector="{quaternion_vector}"
output_vector="{quaternion_vector}"
element="{qz}"
/>
<Action
ID="InsertInVector"
index="3"
input_vector="{quaternion_vector}"
output_vector="{quaternion_vector}"
element="{qw}"
/>
</Control>
</BehaviorTree>
<TreeNodesModel>
<SubTree ID="GetQuaternionVectorFromPoseStamped">
<MetadataFields>
<Metadata runnable="false" />
<Metadata subcategory="Pose Handling" />
</MetadataFields>
<inout_port
name="pose_stamped_in"
default="{pose_stamped_in}"
type="geometry_msgs::msg::PoseStamped_&lt;std::allocator&lt;void&gt; &gt;"
/>
<inout_port
name="quaternion_vector"
default="{quaternion_vector}"
type="std:vector&lt;double&gt;"
/>
</SubTree>
</TreeNodesModel>
</root>
Loading