Skip to content
This repository has been archived by the owner on Dec 13, 2024. It is now read-only.

Commit

Permalink
add hard joint limits config
Browse files Browse the repository at this point in the history
Signed-off-by: Paul Gesel <paulgesel@gmail.com>
  • Loading branch information
pac48 authored and sjahr committed Jan 23, 2024
1 parent 61de776 commit fbe07a2
Show file tree
Hide file tree
Showing 5 changed files with 93 additions and 3 deletions.
3 changes: 3 additions & 0 deletions src/picknik_ur_base_config/config/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,9 @@ moveit_params:
joint_limits:
package: "picknik_ur_base_config"
path: "config/moveit/joint_limits.yaml"
servo_joint_limits:
package: "picknik_ur_base_config"
path: "config/moveit/hard_joint_limits.yaml"
pilz_cartesian_limits:
package: "picknik_ur_base_config"
path: "config/moveit/pilz_cartesian_limits.yaml"
Expand Down
87 changes: 87 additions & 0 deletions src/picknik_ur_base_config/config/moveit/hard_joint_limits.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Joints limits
#
# Sources:
#
# - Universal Robots e-Series, User Manual, UR5e, Version 5.8
# https://s3-eu-west-1.amazonaws.com/ur-support-site/69091/99404_UR5e_User_Manual_en_Global.pdf
# - Support > Articles > UR articles > Max. joint torques
# https://www.universal-robots.com/articles/ur-articles/max-joint-torques
# retrieved: 2020-06-16, last modified: 2020-06-09
#
# NOTE: Acceleration limits are not publicly available so we have picked a reasonable upper limit
joint_limits:
shoulder_pan_joint:
has_acceleration_limits: true
has_effort_limits: true
has_position_limits: true
has_velocity_limits: true
max_acceleration: !degrees 90.0
max_effort: 150.0
max_position: !degrees 180.0
max_velocity: !degrees 30.0
min_position: !degrees -180.0
shoulder_lift_joint:
has_acceleration_limits: true
has_effort_limits: true
has_position_limits: true
has_velocity_limits: true
max_acceleration: !degrees 90.0
max_effort: 150.0
max_position: !degrees 90.0
max_velocity: !degrees 30.0
min_position: !degrees -270.0
elbow_joint:
has_acceleration_limits: true
has_effort_limits: true
has_position_limits: true
has_velocity_limits: true
max_acceleration: !degrees 90.0
max_effort: 150.0
# we artificially limit this joint to half its actual joint position limit
# to avoid (MoveIt/OMPL) planning problems, as due to the physical
# construction of the robot, it's impossible to rotate the 'elbow_joint'
# over more than approx +- 1 pi (the shoulder lift joint gets in the way).
#
# This leads to planning problems as the search space will be divided into
# two sections, with no connections from one to the other.
#
# Refer to https://github.com/ros-industrial/universal_robot/issues/265 for
# more information.
max_position: !degrees 180.0
max_velocity: !degrees 30.0
min_position: !degrees -180.0
wrist_1_joint:
has_acceleration_limits: true
has_effort_limits: true
has_position_limits: true
has_velocity_limits: true
max_acceleration: !degrees 90.0
max_effort: 28.0
max_position: !degrees 180.0
max_velocity: !degrees 60.0
min_position: !degrees -180.0
wrist_2_joint:
has_acceleration_limits: true
has_effort_limits: true
has_position_limits: true
has_velocity_limits: true
max_acceleration: !degrees 180.0
max_effort: 28.0
max_position: !degrees 180.0
max_velocity: !degrees 60.0
min_position: !degrees -180.0
wrist_3_joint:
has_acceleration_limits: true
has_effort_limits: true
has_position_limits: true
has_velocity_limits: true
max_acceleration: !degrees 180.0
max_effort: 28.0
max_position: !degrees 360.0
max_velocity: !degrees 60.0
min_position: !degrees -360.0
robotiq_85_left_knuckle_joint:
has_velocity_limits: true
max_velocity: 0.5
has_acceleration_limits: true
max_acceleration: 1.0
2 changes: 1 addition & 1 deletion src/picknik_ur_base_config/config/moveit/ur_servo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ publish_joint_accelerations: false
## Plugins for smoothing outgoing commands
use_smoothing: true
smoothing_filter_plugin_name: "online_signal_smoothing::AccelerationLimitedPlugin"
acceleration_filter_update_rate: 0.01 # [seconds] Must match the publish_period parameter
acceleration_filter_update_rate: 0.01 # [seconds] Must match the publish_period parameter

## MoveIt properties
move_group_name: manipulator # Often 'manipulator' or 'arm'
Expand Down
2 changes: 1 addition & 1 deletion src/picknik_ur_gazebo_config/config/moveit/ur_servo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ publish_joint_accelerations: false
## Plugins for smoothing outgoing commands
use_smoothing: true
smoothing_filter_plugin_name: "online_signal_smoothing::AccelerationLimitedPlugin"
acceleration_filter_update_rate: 0.01 # [seconds] Must match the publish_period parameter
acceleration_filter_update_rate: 0.01 # [seconds] Must match the publish_period parameter

## MoveIt properties
move_group_name: manipulator # Often 'manipulator' or 'arm'
Expand Down
2 changes: 1 addition & 1 deletion src/picknik_ur_mock_hw_config/config/moveit/ur_servo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ publish_joint_accelerations: false
## Plugins for smoothing outgoing commands
use_smoothing: true
smoothing_filter_plugin_name: "online_signal_smoothing::AccelerationLimitedPlugin"
acceleration_filter_update_rate: 0.01 # [seconds] Must match the publish_period parameter
acceleration_filter_update_rate: 0.01 # [seconds] Must match the publish_period parameter

## MoveIt properties
move_group_name: manipulator # Often 'manipulator' or 'arm'
Expand Down

0 comments on commit fbe07a2

Please sign in to comment.