From 179a59c3303ddf7c535b7a1605911168d1165fcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81ron=20Svastits?= <49677296+Svastits@users.noreply.github.com> Date: Mon, 26 Aug 2024 09:58:22 +0200 Subject: [PATCH 1/4] Fix rviz planning sphere (#61) * fix * param fix * format --------- Co-authored-by: Aron Svastits --- .../launch/fake_hardware_planning_template.launch.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/kuka_resources/launch/fake_hardware_planning_template.launch.py b/kuka_resources/launch/fake_hardware_planning_template.launch.py index 461486a..562dca1 100644 --- a/kuka_resources/launch/fake_hardware_planning_template.launch.py +++ b/kuka_resources/launch/fake_hardware_planning_template.launch.py @@ -65,12 +65,21 @@ def launch_setup(context, *args, **kwargs): parameters=[robot_description, controller_config], ) + robot_description_kinematics = { + "robot_description_kinematics": { + "manipulator": {"kinematics_solver": "kdl_kinematics_plugin/KDLKinematicsPlugin"} + } + } + rviz = Node( package="rviz2", executable="rviz2", name="rviz2", output="log", arguments=["-d", rviz_config_file, "--ros-args", "--log-level", "error"], + parameters=[ + robot_description_kinematics, + ], ) robot_state_publisher = Node( From 2b0a7c8ad8b7854ea687949546c3b0af9b642adb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81ron=20Svastits?= <49677296+Svastits@users.noreply.github.com> Date: Mon, 2 Sep 2024 09:50:44 +0200 Subject: [PATCH 2/4] Use contoller config in moveit fake hardware launch only if defined (#63) * contoller config used only if defined * format --------- Co-authored-by: Aron Svastits --- .../fake_hardware_planning_template.launch.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/kuka_resources/launch/fake_hardware_planning_template.launch.py b/kuka_resources/launch/fake_hardware_planning_template.launch.py index 562dca1..05e159a 100644 --- a/kuka_resources/launch/fake_hardware_planning_template.launch.py +++ b/kuka_resources/launch/fake_hardware_planning_template.launch.py @@ -91,17 +91,14 @@ def launch_setup(context, *args, **kwargs): # Spawn controllers def controller_spawner(controller_with_config): - arg_list = [ - controller_with_config[0], - "-c", - controller_manager_node, - "-p", - controller_with_config[1], - ] + arg_list = [controller_with_config[0], "-c", controller_manager_node] + if controller_with_config[1] is not None: + arg_list.append("-p") + arg_list.append(controller_with_config[1]) return Node(package="controller_manager", executable="spawner", arguments=arg_list) controller_names_and_config = [ - ("joint_state_broadcaster", []), + ("joint_state_broadcaster", None), ("joint_trajectory_controller", controller_config), ] From 9825092ee9e02a965bbb10f9de8d1552a846b8ea Mon Sep 17 00:00:00 2001 From: PetoAdam <61557670+PetoAdam@users.noreply.github.com> Date: Mon, 2 Sep 2024 11:45:08 +0200 Subject: [PATCH 3/4] Migrating master to Jazzy (#62) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * example moveit config update for jazzy * added updated planning pipeline yamls. Note: some planning pipelines don't work without setting joint acceleration limits in the robots' joint_limits.yaml file. * updated readme, fixed trailing whitespaces on chomp_planning.yamls. * fix scaling factor typo in readme * added joint acceleration limits for all robots except for the iiwa * add updated velocity limit on joint_1 for kr210_r2700_2 in urdf * fix joint2 velocity limit for kr210r2700-2 --------- Co-authored-by: Áron Svastits <49677296+Svastits@users.noreply.github.com> --- README.md | 10 +++--- .../config/kr10_r1100_2_joint_limits.yaml | 18 ++++++---- .../config/kr6_r700_sixx_joint_limits.yaml | 18 ++++++---- .../config/kr6_r900_sixx_joint_limits.yaml | 18 ++++++---- .../config/kr16_r2010_2_joint_limits.yaml | 20 +++++++---- .../config/kr560_r3100_2_joint_limits.yaml | 18 ++++++---- .../config/kr70_r2100_joint_limits.yaml | 18 ++++++---- .../config/chomp_planning.yaml | 18 ++++++---- .../config/ompl_planning.yaml | 34 +++++++++++++------ .../config/stomp_planning.yaml | 18 ++++++---- .../config/lbr_iisy3_r760_joint_limits.yaml | 2 +- .../config/chomp_planning.yaml | 18 ++++++---- .../config/ompl_planning.yaml | 34 +++++++++++++------ .../config/stomp_planning.yaml | 18 ++++++---- .../config/kr210_r2700_2_joint_limits.yaml | 30 +++++++++------- .../config/kr210_r3100_2_joint_limits.yaml | 18 ++++++---- .../urdf/kr210_r2700_2_macro.xacro | 4 +-- 17 files changed, 201 insertions(+), 113 deletions(-) diff --git a/README.md b/README.md index e56dd4d..5d00b3a 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,10 @@ This repository contains support packages that can be used with real KUKA robots as well as with simulations. -Github CI ------------- -[![Build Status](https://github.com/kroshu/kuka_robot_descriptions/workflows/CI/badge.svg?branch=main)](https://github.com/kroshu/kuka_robot_descriptions/actions) +ROS2 Distro | Branch | Github CI +------------ | -------------- | -------------- +**Jazzy** | [`master`](https://github.com/kroshu/kuka_robot_descriptions/tree/master) | [![Build Status](https://github.com/kroshu/kuka_robot_descriptions/actions/workflows/industrial_ci.yml/badge.svg?branch=master)](https://github.com/kroshu/kuka_robot_descriptions/actions) +**Humble** | [`humble`](https://github.com/kroshu/kuka_robot_descriptions/tree/humble) | [![Build Status](https://github.com/kroshu/kuka_robot_descriptions/actions/workflows/industrial_ci.yml/badge.svg?branch=humble)](https://github.com/kroshu/kuka_robot_descriptions/actions) ## What is included? @@ -67,8 +68,7 @@ Collision meshes are provided for the robots to speed up collision avoidance and ### Joint limit configurations -The support packages contain a joint limits file for every supported robot model, necessary time parametrization of MoveIt-planned paths. They contain the velocity limits also available in the URDF model and additional acceleration limits. Acceleration limits can never be global, these values are calculated from the worst-case ramp-up time to reach maximum velocity. The easiest way to modify the allowed velocities and accelerations is to change the velocity and acceleration scaling factors also available in the same configuration files. (The scaling factor can never be smaller than 1.) - +The support packages contain a joint limits file for every supported robot model, necessary time parametrization of MoveIt-planned paths. They contain the velocity limits also available in the URDF model and additional acceleration limits. Acceleration limits can never be global, these values are calculated from the worst-case ramp-up time to reach maximum velocity. The easiest way to modify the allowed velocities and accelerations is to change the velocity and acceleration scaling factors also available in the same configuration files. (The scaling factor can never be greater than 1.) ### Extending the models diff --git a/kuka_agilus_support/config/kr10_r1100_2_joint_limits.yaml b/kuka_agilus_support/config/kr10_r1100_2_joint_limits.yaml index 0b2ab1d..3493474 100644 --- a/kuka_agilus_support/config/kr10_r1100_2_joint_limits.yaml +++ b/kuka_agilus_support/config/kr10_r1100_2_joint_limits.yaml @@ -9,30 +9,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 5.23599 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 10.06528 has_jerk: false joint_2: has_velocity_limits: true max_velocity: 3.926991 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.72508 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 5.75959 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 2.68644 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 6.28319 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 56.49428 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 6.28319 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 49.23361 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 7.55728 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 125.45374 has_jerk: false diff --git a/kuka_agilus_support/config/kr6_r700_sixx_joint_limits.yaml b/kuka_agilus_support/config/kr6_r700_sixx_joint_limits.yaml index 64f30ee..2b4228c 100644 --- a/kuka_agilus_support/config/kr6_r700_sixx_joint_limits.yaml +++ b/kuka_agilus_support/config/kr6_r700_sixx_joint_limits.yaml @@ -9,30 +9,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 6.283185 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 41.672910 has_jerk: false joint_2: has_velocity_limits: true max_velocity: 5.23599 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 21.620884 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 6.283185 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 46.224233 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 6.64970 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 145.820923 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 6.77188 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 152.326213 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 10.73377 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 292.626544 has_jerk: false diff --git a/kuka_agilus_support/config/kr6_r900_sixx_joint_limits.yaml b/kuka_agilus_support/config/kr6_r900_sixx_joint_limits.yaml index 64f30ee..1850669 100644 --- a/kuka_agilus_support/config/kr6_r900_sixx_joint_limits.yaml +++ b/kuka_agilus_support/config/kr6_r900_sixx_joint_limits.yaml @@ -9,30 +9,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 6.283185 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 21.666156 has_jerk: false joint_2: has_velocity_limits: true max_velocity: 5.23599 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 6.889457 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 6.283185 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 31.415926 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 6.64970 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 133.055688 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 6.77188 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 135.557707 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 10.73377 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 268.382564 has_jerk: false diff --git a/kuka_cybertech_support/config/kr16_r2010_2_joint_limits.yaml b/kuka_cybertech_support/config/kr16_r2010_2_joint_limits.yaml index 525daa4..b5b3ddf 100644 --- a/kuka_cybertech_support/config/kr16_r2010_2_joint_limits.yaml +++ b/kuka_cybertech_support/config/kr16_r2010_2_joint_limits.yaml @@ -12,30 +12,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 3.490656 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 7.505672 has_jerk: false joint_2: has_velocity_limits: true - max_velocity: 3.05432 - has_acceleration_limits: false + max_velocity: 2.994851 + has_acceleration_limits: true + max_acceleration: 1.350277 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 3.31613 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 13.412379 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 7.50492 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 99.514484 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 7.50492 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 95.957307 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 10.99557 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 120.049850 has_jerk: false diff --git a/kuka_fortec_support/config/kr560_r3100_2_joint_limits.yaml b/kuka_fortec_support/config/kr560_r3100_2_joint_limits.yaml index dd42cc3..7a05d88 100644 --- a/kuka_fortec_support/config/kr560_r3100_2_joint_limits.yaml +++ b/kuka_fortec_support/config/kr560_r3100_2_joint_limits.yaml @@ -12,30 +12,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 1.5708 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.1500 has_jerk: false joint_2: has_velocity_limits: true max_velocity: 1.3962 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 0.9308 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 1.3090 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.5038 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 1.5708 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.5816 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 1.5708 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.6486 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 2.2689 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 2.1579 has_jerk: false diff --git a/kuka_iontec_support/config/kr70_r2100_joint_limits.yaml b/kuka_iontec_support/config/kr70_r2100_joint_limits.yaml index 3b4d247..b290680 100644 --- a/kuka_iontec_support/config/kr70_r2100_joint_limits.yaml +++ b/kuka_iontec_support/config/kr70_r2100_joint_limits.yaml @@ -12,30 +12,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 3.1416 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 6.1985 has_jerk: false joint_2: has_velocity_limits: true max_velocity: 2.7576 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.2580 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 2.7925 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.4709 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 4.01426 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 17.6323 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 4.01426 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 14.9965 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 5.58505 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 16.8623 has_jerk: false diff --git a/kuka_lbr_iisy_moveit_config/config/chomp_planning.yaml b/kuka_lbr_iisy_moveit_config/config/chomp_planning.yaml index 2d9fdb8..9dba26e 100644 --- a/kuka_lbr_iisy_moveit_config/config/chomp_planning.yaml +++ b/kuka_lbr_iisy_moveit_config/config/chomp_planning.yaml @@ -1,10 +1,14 @@ -planning_plugin: chomp_interface/CHOMPPlanner -request_adapters: >- - default_planner_request_adapters/AddTimeOptimalParameterization - default_planner_request_adapters/FixWorkspaceBounds - default_planner_request_adapters/FixStartStateBounds - default_planner_request_adapters/FixStartStateCollision - default_planner_request_adapters/FixStartStatePathConstraints +planning_plugins: + - chomp_interface/CHOMPPlanner +request_adapters: + - default_planning_request_adapters/ResolveConstraintFrames + - default_planning_request_adapters/ValidateWorkspaceBounds + - default_planning_request_adapters/CheckStartStateBounds + - default_planning_request_adapters/CheckStartStateCollision +response_adapters: + - default_planning_response_adapters/AddTimeOptimalParameterization + - default_planning_response_adapters/ValidateSolution + - default_planning_response_adapters/DisplayMotionPath start_state_max_bounds_error: 0.1 planning_time_limit: 10.0 max_iterations: 200 diff --git a/kuka_lbr_iisy_moveit_config/config/ompl_planning.yaml b/kuka_lbr_iisy_moveit_config/config/ompl_planning.yaml index 85aa81b..db6bbea 100644 --- a/kuka_lbr_iisy_moveit_config/config/ompl_planning.yaml +++ b/kuka_lbr_iisy_moveit_config/config/ompl_planning.yaml @@ -1,13 +1,16 @@ -planning_plugin: ompl_interface/OMPLPlanner -# To optionally use Ruckig for jerk-limited smoothing, add this line to the request adapters below -# default_planner_request_adapters/AddRuckigTrajectorySmoothing -request_adapters: >- - default_planner_request_adapters/AddTimeOptimalParameterization - default_planner_request_adapters/ResolveConstraintFrames - default_planner_request_adapters/FixWorkspaceBounds - default_planner_request_adapters/FixStartStateBounds - default_planner_request_adapters/FixStartStateCollision - default_planner_request_adapters/FixStartStatePathConstraints +planning_plugins: + - ompl_interface/OMPLPlanner +request_adapters: + - default_planning_request_adapters/ResolveConstraintFrames + - default_planning_request_adapters/ValidateWorkspaceBounds + - default_planning_request_adapters/CheckStartStateBounds + - default_planning_request_adapters/CheckStartStateCollision +# To optionally use Ruckig for jerk-limited smoothing, add this line to the response adapters below +# default_planning_response_adapters/AddRuckigTrajectorySmoothing +response_adapters: + - default_planning_response_adapters/AddTimeOptimalParameterization + - default_planning_response_adapters/ValidateSolution + - default_planning_response_adapters/DisplayMotionPath start_state_max_bounds_error: 0.1 planner_configs: APSConfigDefault: @@ -16,7 +19,16 @@ planner_configs: hybridize: 1 # Compute hybrid solution trajectories max_hybrid_paths: 36 # Number of hybrid paths generated per iteration num_planners: 8 # The number of default planners to use for planning - planners: "RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect" # A comma-separated list of planner types (e.g., "PRM,EST,RRTConnect"Optionally, planner parameters can be passed to change the default:"PRM[max_nearest_neighbors=5],EST[goal_bias=.5],RRT[range=10. goal_bias=.1]" + # Optionally, planner parameters can be passed to change the default: "PRM[max_nearest_neighbors=5]", "EST[goal_bias=.5]", "RRT[range=10. goal_bias=.1]" + planners: + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect SBLkConfigDefault: type: geometric::SBL range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup() diff --git a/kuka_lbr_iisy_moveit_config/config/stomp_planning.yaml b/kuka_lbr_iisy_moveit_config/config/stomp_planning.yaml index a6fe92f..7d83d32 100644 --- a/kuka_lbr_iisy_moveit_config/config/stomp_planning.yaml +++ b/kuka_lbr_iisy_moveit_config/config/stomp_planning.yaml @@ -1,10 +1,14 @@ -planning_plugin: stomp_moveit/StompPlanner -request_adapters: >- - default_planner_request_adapters/AddTimeOptimalParameterization - default_planner_request_adapters/FixWorkspaceBounds - default_planner_request_adapters/FixStartStateBounds - default_planner_request_adapters/FixStartStateCollision - default_planner_request_adapters/FixStartStatePathConstraints +planning_plugins: + - stomp_moveit/StompPlanner +request_adapters: + - default_planning_request_adapters/ResolveConstraintFrames + - default_planning_request_adapters/ValidateWorkspaceBounds + - default_planning_request_adapters/CheckStartStateBounds + - default_planning_request_adapters/CheckStartStateCollision +response_adapters: + - default_planning_response_adapters/AddTimeOptimalParameterization + - default_planning_response_adapters/ValidateSolution + - default_planning_response_adapters/DisplayMotionPath stomp_moveit: num_timesteps: 60 diff --git a/kuka_lbr_iisy_support/config/lbr_iisy3_r760_joint_limits.yaml b/kuka_lbr_iisy_support/config/lbr_iisy3_r760_joint_limits.yaml index 3c5815c..4033d78 100644 --- a/kuka_lbr_iisy_support/config/lbr_iisy3_r760_joint_limits.yaml +++ b/kuka_lbr_iisy_support/config/lbr_iisy3_r760_joint_limits.yaml @@ -38,7 +38,7 @@ joint_limits: has_jerk: false joint_6: has_velocity_limits: true - max_velocity: 5.235983 + max_velocity: 6.981317 has_acceleration_limits: true max_acceleration: 112.291689 has_jerk: false diff --git a/kuka_lbr_iiwa_moveit_config/config/chomp_planning.yaml b/kuka_lbr_iiwa_moveit_config/config/chomp_planning.yaml index 2d9fdb8..9dba26e 100644 --- a/kuka_lbr_iiwa_moveit_config/config/chomp_planning.yaml +++ b/kuka_lbr_iiwa_moveit_config/config/chomp_planning.yaml @@ -1,10 +1,14 @@ -planning_plugin: chomp_interface/CHOMPPlanner -request_adapters: >- - default_planner_request_adapters/AddTimeOptimalParameterization - default_planner_request_adapters/FixWorkspaceBounds - default_planner_request_adapters/FixStartStateBounds - default_planner_request_adapters/FixStartStateCollision - default_planner_request_adapters/FixStartStatePathConstraints +planning_plugins: + - chomp_interface/CHOMPPlanner +request_adapters: + - default_planning_request_adapters/ResolveConstraintFrames + - default_planning_request_adapters/ValidateWorkspaceBounds + - default_planning_request_adapters/CheckStartStateBounds + - default_planning_request_adapters/CheckStartStateCollision +response_adapters: + - default_planning_response_adapters/AddTimeOptimalParameterization + - default_planning_response_adapters/ValidateSolution + - default_planning_response_adapters/DisplayMotionPath start_state_max_bounds_error: 0.1 planning_time_limit: 10.0 max_iterations: 200 diff --git a/kuka_lbr_iiwa_moveit_config/config/ompl_planning.yaml b/kuka_lbr_iiwa_moveit_config/config/ompl_planning.yaml index 85aa81b..db6bbea 100644 --- a/kuka_lbr_iiwa_moveit_config/config/ompl_planning.yaml +++ b/kuka_lbr_iiwa_moveit_config/config/ompl_planning.yaml @@ -1,13 +1,16 @@ -planning_plugin: ompl_interface/OMPLPlanner -# To optionally use Ruckig for jerk-limited smoothing, add this line to the request adapters below -# default_planner_request_adapters/AddRuckigTrajectorySmoothing -request_adapters: >- - default_planner_request_adapters/AddTimeOptimalParameterization - default_planner_request_adapters/ResolveConstraintFrames - default_planner_request_adapters/FixWorkspaceBounds - default_planner_request_adapters/FixStartStateBounds - default_planner_request_adapters/FixStartStateCollision - default_planner_request_adapters/FixStartStatePathConstraints +planning_plugins: + - ompl_interface/OMPLPlanner +request_adapters: + - default_planning_request_adapters/ResolveConstraintFrames + - default_planning_request_adapters/ValidateWorkspaceBounds + - default_planning_request_adapters/CheckStartStateBounds + - default_planning_request_adapters/CheckStartStateCollision +# To optionally use Ruckig for jerk-limited smoothing, add this line to the response adapters below +# default_planning_response_adapters/AddRuckigTrajectorySmoothing +response_adapters: + - default_planning_response_adapters/AddTimeOptimalParameterization + - default_planning_response_adapters/ValidateSolution + - default_planning_response_adapters/DisplayMotionPath start_state_max_bounds_error: 0.1 planner_configs: APSConfigDefault: @@ -16,7 +19,16 @@ planner_configs: hybridize: 1 # Compute hybrid solution trajectories max_hybrid_paths: 36 # Number of hybrid paths generated per iteration num_planners: 8 # The number of default planners to use for planning - planners: "RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect,RRTConnect" # A comma-separated list of planner types (e.g., "PRM,EST,RRTConnect"Optionally, planner parameters can be passed to change the default:"PRM[max_nearest_neighbors=5],EST[goal_bias=.5],RRT[range=10. goal_bias=.1]" + # Optionally, planner parameters can be passed to change the default: "PRM[max_nearest_neighbors=5]", "EST[goal_bias=.5]", "RRT[range=10. goal_bias=.1]" + planners: + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect + - RRTConnect SBLkConfigDefault: type: geometric::SBL range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup() diff --git a/kuka_lbr_iiwa_moveit_config/config/stomp_planning.yaml b/kuka_lbr_iiwa_moveit_config/config/stomp_planning.yaml index a6fe92f..7d83d32 100644 --- a/kuka_lbr_iiwa_moveit_config/config/stomp_planning.yaml +++ b/kuka_lbr_iiwa_moveit_config/config/stomp_planning.yaml @@ -1,10 +1,14 @@ -planning_plugin: stomp_moveit/StompPlanner -request_adapters: >- - default_planner_request_adapters/AddTimeOptimalParameterization - default_planner_request_adapters/FixWorkspaceBounds - default_planner_request_adapters/FixStartStateBounds - default_planner_request_adapters/FixStartStateCollision - default_planner_request_adapters/FixStartStatePathConstraints +planning_plugins: + - stomp_moveit/StompPlanner +request_adapters: + - default_planning_request_adapters/ResolveConstraintFrames + - default_planning_request_adapters/ValidateWorkspaceBounds + - default_planning_request_adapters/CheckStartStateBounds + - default_planning_request_adapters/CheckStartStateCollision +response_adapters: + - default_planning_response_adapters/AddTimeOptimalParameterization + - default_planning_response_adapters/ValidateSolution + - default_planning_response_adapters/DisplayMotionPath stomp_moveit: num_timesteps: 60 diff --git a/kuka_quantec_support/config/kr210_r2700_2_joint_limits.yaml b/kuka_quantec_support/config/kr210_r2700_2_joint_limits.yaml index 0436d70..c9a2923 100644 --- a/kuka_quantec_support/config/kr210_r2700_2_joint_limits.yaml +++ b/kuka_quantec_support/config/kr210_r2700_2_joint_limits.yaml @@ -11,31 +11,37 @@ default_acceleration_scaling_factor: 1.0 joint_limits: joint_1: has_velocity_limits: true - max_velocity: 2.0944 - has_acceleration_limits: false + max_velocity: 2.0384 + has_acceleration_limits: true + max_acceleration: 1.98271 has_jerk: false joint_2: has_velocity_limits: true - max_velocity: 2.0071 - has_acceleration_limits: false + max_velocity: 1.9451 + has_acceleration_limits: true + max_acceleration: 1.26288 has_jerk: false joint_3: has_velocity_limits: true - max_velocity: 1.9548 - has_acceleration_limits: false + max_velocity: 1.95476 + has_acceleration_limits: true + max_acceleration: 2.56508 has_jerk: false joint_4: has_velocity_limits: true - max_velocity: 3.1241 - has_acceleration_limits: false + max_velocity: 3.12413 + has_acceleration_limits: true + max_acceleration: 7.03857 has_jerk: false joint_5: has_velocity_limits: true - max_velocity: 3.0000 - has_acceleration_limits: false + max_velocity: 3.00196 + has_acceleration_limits: true + max_acceleration: 1.76397 has_jerk: false joint_6: has_velocity_limits: true - max_velocity: 3.8397 - has_acceleration_limits: false + max_velocity: 3.83972 + has_acceleration_limits: true + max_acceleration: 1.87268 has_jerk: false diff --git a/kuka_quantec_support/config/kr210_r3100_2_joint_limits.yaml b/kuka_quantec_support/config/kr210_r3100_2_joint_limits.yaml index c7fd18f..f55bbd9 100644 --- a/kuka_quantec_support/config/kr210_r3100_2_joint_limits.yaml +++ b/kuka_quantec_support/config/kr210_r3100_2_joint_limits.yaml @@ -12,30 +12,36 @@ joint_limits: joint_1: has_velocity_limits: true max_velocity: 1.8326 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.4647 has_jerk: false joint_2: has_velocity_limits: true max_velocity: 1.6406 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 0.5173 has_jerk: false joint_3: has_velocity_limits: true max_velocity: 1.7453 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 1.3139 has_jerk: false joint_4: has_velocity_limits: true max_velocity: 2.3726 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 6.9234 has_jerk: false joint_5: has_velocity_limits: true max_velocity: 2.2460 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 7.0213 has_jerk: false joint_6: has_velocity_limits: true max_velocity: 3.5933 - has_acceleration_limits: false + has_acceleration_limits: true + max_acceleration: 7.9141 has_jerk: false diff --git a/kuka_quantec_support/urdf/kr210_r2700_2_macro.xacro b/kuka_quantec_support/urdf/kr210_r2700_2_macro.xacro index 5b8a7cc..5223f85 100644 --- a/kuka_quantec_support/urdf/kr210_r2700_2_macro.xacro +++ b/kuka_quantec_support/urdf/kr210_r2700_2_macro.xacro @@ -112,14 +112,14 @@ - + - + From 87ff7611a81ae1ee51d8baef5212fa946be0cec6 Mon Sep 17 00:00:00 2001 From: PetoAdam <61557670+PetoAdam@users.noreply.github.com> Date: Wed, 4 Sep 2024 16:04:40 +0200 Subject: [PATCH 4/4] update industrial ci to use jazzy and ubuntu-24.04 (#64) * update industrial ci to use jazzy and ubuntu-24.04 * update hardware_interface.hpp with ros2_control changes * update stdout tests for new standard as alredy done on kuka_drivers on jazzy --- .github/workflows/industrial_ci.yml | 4 ++-- kuka_agilus_support/test/test_kr_agilus.py | 6 ++---- kuka_cybertech_support/test/test_kr_cybertech.py | 6 ++---- kuka_fortec_support/test/test_kr_fortec.py | 6 ++---- kuka_iontec_support/test/test_kr_iontec.py | 6 ++---- kuka_lbr_iisy_support/test/test_lbr_iisy.py | 6 ++---- kuka_lbr_iiwa_support/test/test_lbr_iiwa.py | 6 ++---- .../kuka_mock_hardware_interface/hardware_interface.hpp | 3 +-- kuka_quantec_support/test/test_kr_quantec.py | 6 ++---- 9 files changed, 17 insertions(+), 32 deletions(-) diff --git a/.github/workflows/industrial_ci.yml b/.github/workflows/industrial_ci.yml index cc67d02..07f9f00 100644 --- a/.github/workflows/industrial_ci.yml +++ b/.github/workflows/industrial_ci.yml @@ -35,7 +35,7 @@ jobs: env: - ROS_REPO: ros BUILDER: colcon - ROS_DISTRO: humble + ROS_DISTRO: jazzy env: CCACHE_DIR: /github/home/.ccache # Directory for ccache (and how we enable ccache in industrial_ci) EVENT_NAME: ${{ github.event_name }} @@ -45,7 +45,7 @@ jobs: PR_NUMBER: ${{ github.event.number }} ANALYZER_TOKEN: ${{ secrets.ANALYZER_TOKEN }} DEBUG_BASH: true - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v2 with: diff --git a/kuka_agilus_support/test/test_kr_agilus.py b/kuka_agilus_support/test/test_kr_agilus.py index ad2b5ac..5bbb746 100644 --- a/kuka_agilus_support/test/test_kr_agilus.py +++ b/kuka_agilus_support/test/test_kr_agilus.py @@ -56,7 +56,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5) diff --git a/kuka_cybertech_support/test/test_kr_cybertech.py b/kuka_cybertech_support/test/test_kr_cybertech.py index 2ad7cc8..93784fd 100644 --- a/kuka_cybertech_support/test/test_kr_cybertech.py +++ b/kuka_cybertech_support/test/test_kr_cybertech.py @@ -56,7 +56,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5) diff --git a/kuka_fortec_support/test/test_kr_fortec.py b/kuka_fortec_support/test/test_kr_fortec.py index 2f48798..4815110 100644 --- a/kuka_fortec_support/test/test_kr_fortec.py +++ b/kuka_fortec_support/test/test_kr_fortec.py @@ -60,7 +60,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5) diff --git a/kuka_iontec_support/test/test_kr_iontec.py b/kuka_iontec_support/test/test_kr_iontec.py index 9e5bbe0..ef17bf8 100644 --- a/kuka_iontec_support/test/test_kr_iontec.py +++ b/kuka_iontec_support/test/test_kr_iontec.py @@ -60,7 +60,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5) diff --git a/kuka_lbr_iisy_support/test/test_lbr_iisy.py b/kuka_lbr_iisy_support/test/test_lbr_iisy.py index 7a71fdd..21e6237 100644 --- a/kuka_lbr_iisy_support/test/test_lbr_iisy.py +++ b/kuka_lbr_iisy_support/test/test_lbr_iisy.py @@ -56,7 +56,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5) diff --git a/kuka_lbr_iiwa_support/test/test_lbr_iiwa.py b/kuka_lbr_iiwa_support/test/test_lbr_iiwa.py index 92d9176..26b9d10 100644 --- a/kuka_lbr_iiwa_support/test/test_lbr_iiwa.py +++ b/kuka_lbr_iiwa_support/test/test_lbr_iiwa.py @@ -56,7 +56,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5) diff --git a/kuka_mock_hardware_interface/include/kuka_mock_hardware_interface/hardware_interface.hpp b/kuka_mock_hardware_interface/include/kuka_mock_hardware_interface/hardware_interface.hpp index 64c7898..8f70b76 100644 --- a/kuka_mock_hardware_interface/include/kuka_mock_hardware_interface/hardware_interface.hpp +++ b/kuka_mock_hardware_interface/include/kuka_mock_hardware_interface/hardware_interface.hpp @@ -37,8 +37,7 @@ static constexpr size_t POSITION_INTERFACE_INDEX = 0; static constexpr size_t VELOCITY_INTERFACE_INDEX = 1; static constexpr size_t ACCELERATION_INTERFACE_INDEX = 2; -class HARDWARE_INTERFACE_PUBLIC KukaMockHardwareInterface -: public hardware_interface::SystemInterface +class KukaMockHardwareInterface : public hardware_interface::SystemInterface { public: CallbackReturn on_init(const hardware_interface::HardwareInfo & info) override; diff --git a/kuka_quantec_support/test/test_kr_quantec.py b/kuka_quantec_support/test/test_kr_quantec.py index e00a6bb..aab5416 100644 --- a/kuka_quantec_support/test/test_kr_quantec.py +++ b/kuka_quantec_support/test/test_kr_quantec.py @@ -56,7 +56,5 @@ def generate_test_description(test_file): class TestModels(unittest.TestCase): def test_read_stdout(self, proc_output): - # Check for frames defined by ROS-Industrial - proc_output.assertWaitFor("got segment base", timeout=5) - proc_output.assertWaitFor("got segment flange", timeout=5) - proc_output.assertWaitFor("got segment tool0", timeout=5) + # Check for robot initialization + proc_output.assertWaitFor("Robot initialized", timeout=5)