Skip to content

Commit d71f2d7

Browse files
committed
Add moveit config package for ur5e.
1 parent d0a6cb5 commit d71f2d7

30 files changed

+1060
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
moveit_setup_assistant_config:
2+
URDF:
3+
package: ur_e_description
4+
relative_path: urdf/ur5e_robot.urdf.xacro
5+
SRDF:
6+
relative_path: config/ur5e.srdf
7+
CONFIG:
8+
generated_timestamp: 1413877529

ur5e_moveit_config/CHANGELOG.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2+
Changelog for package ur5_e_moveit_config
3+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4+
5+
1.2.5 (2019-04-05)
6+
------------------
7+
* First release (of this package)
8+
* Update maintainer listing: add Miguel (`#410 <https://github.com/ros-industrial/universal_robot/issues/410>`_)
9+
* UR-E Series (`#380 <https://github.com/ros-industrial/universal_robot/issues/380>`_)
10+
* Contributors: Dave Niewinski, gavanderhoorn

ur5e_moveit_config/CMakeLists.txt

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
cmake_minimum_required(VERSION 3.5)
2+
project(ur5e_moveit_config)
3+
4+
find_package(ament_cmake REQUIRED)
5+
6+
# if (BUILD_TESTING)
7+
# find_package(roslaunch REQUIRED)
8+
# roslaunch_add_file_check(tests/moveit_planning_execution.xml)
9+
# endif()
10+
11+
install(DIRECTORY launch DESTINATION share/${PROJECT_NAME})
12+
install(DIRECTORY config DESTINATION share/${PROJECT_NAME})
13+
14+
ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS})
15+
16+
ament_package()
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
controller_list:
2+
- name: ""
3+
action_ns: follow_joint_trajectory
4+
type: FollowJointTrajectory
5+
joints:
6+
- shoulder_pan_joint
7+
- shoulder_lift_joint
8+
- elbow_joint
9+
- wrist_1_joint
10+
- wrist_2_joint
11+
- wrist_3_joint
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
controller_list:
2+
- name: fake_manipulator_controller
3+
joints:
4+
- shoulder_pan_joint
5+
- shoulder_lift_joint
6+
- elbow_joint
7+
- wrist_1_joint
8+
- wrist_2_joint
9+
- wrist_3_joint
10+
- name: fake_endeffector_controller
11+
joints:
12+
[]
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# joint_limits.yaml allows the dynamics properties specified in the URDF to be overwritten or augmented as needed
2+
# Specific joint properties can be changed with the keys [max_position, min_position, max_velocity, max_acceleration]
3+
# Joint limits can be turned off with [has_velocity_limits, has_acceleration_limits]
4+
joint_limits:
5+
shoulder_pan_joint:
6+
has_velocity_limits: true
7+
max_velocity: 3.14
8+
has_acceleration_limits: true
9+
max_acceleration: 3.14
10+
shoulder_lift_joint:
11+
has_velocity_limits: true
12+
max_velocity: 3.14
13+
has_acceleration_limits: true
14+
max_acceleration: 3.14
15+
elbow_joint:
16+
has_velocity_limits: true
17+
max_velocity: 3.14
18+
has_acceleration_limits: true
19+
max_acceleration: 3.14
20+
wrist_1_joint:
21+
has_velocity_limits: true
22+
max_velocity: 6.28
23+
has_acceleration_limits: true
24+
max_acceleration: 3.14
25+
wrist_2_joint:
26+
has_velocity_limits: true
27+
max_velocity: 6.28
28+
has_acceleration_limits: true
29+
max_acceleration: 3.14
30+
wrist_3_joint:
31+
has_velocity_limits: true
32+
max_velocity: 6.28
33+
has_acceleration_limits: true
34+
max_acceleration: 3.14
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
manipulator:
2+
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
3+
kinematics_solver_search_resolution: 0.005
4+
kinematics_solver_timeout: 0.005
5+
kinematics_solver_attempts: 3
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
planner_configs:
2+
SBLkConfigDefault:
3+
type: geometric::SBL
4+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
5+
ESTkConfigDefault:
6+
type: geometric::EST
7+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0 setup()
8+
goal_bias: 0.05 # When close to goal select goal, with this probability. default: 0.05
9+
LBKPIECEkConfigDefault:
10+
type: geometric::LBKPIECE
11+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
12+
border_fraction: 0.9 # Fraction of time focused on boarder default: 0.9
13+
min_valid_path_fraction: 0.5 # Accept partially valid moves above fraction. default: 0.5
14+
BKPIECEkConfigDefault:
15+
type: geometric::BKPIECE
16+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
17+
border_fraction: 0.9 # Fraction of time focused on boarder default: 0.9
18+
failed_expansion_score_factor: 0.5 # When extending motion fails, scale score by factor. default: 0.5
19+
min_valid_path_fraction: 0.5 # Accept partially valid moves above fraction. default: 0.5
20+
KPIECEkConfigDefault:
21+
type: geometric::KPIECE
22+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
23+
goal_bias: 0.05 # When close to goal select goal, with this probability. default: 0.05
24+
border_fraction: 0.9 # Fraction of time focused on boarder default: 0.9 (0.0,1.]
25+
failed_expansion_score_factor: 0.5 # When extending motion fails, scale score by factor. default: 0.5
26+
min_valid_path_fraction: 0.5 # Accept partially valid moves above fraction. default: 0.5
27+
RRTkConfigDefault:
28+
type: geometric::RRT
29+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
30+
goal_bias: 0.05 # When close to goal select goal, with this probability? default: 0.05
31+
RRTConnectkConfigDefault:
32+
type: geometric::RRTConnect
33+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
34+
RRTstarkConfigDefault:
35+
type: geometric::RRTstar
36+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
37+
goal_bias: 0.05 # When close to goal select goal, with this probability? default: 0.05
38+
delay_collision_checking: 1 # Stop collision checking as soon as C-free parent found. default 1
39+
TRRTkConfigDefault:
40+
type: geometric::TRRT
41+
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
42+
goal_bias: 0.05 # When close to goal select goal, with this probability? default: 0.05
43+
max_states_failed: 10 # when to start increasing temp. default: 10
44+
temp_change_factor: 2.0 # how much to increase or decrease temp. default: 2.0
45+
min_temperature: 10e-10 # lower limit of temp change. default: 10e-10
46+
init_temperature: 10e-6 # initial temperature. default: 10e-6
47+
frountier_threshold: 0.0 # dist new state to nearest neighbor to disqualify as frontier. default: 0.0 set in setup()
48+
frountierNodeRatio: 0.1 # 1/10, or 1 nonfrontier for every 10 frontier. default: 0.1
49+
k_constant: 0.0 # value used to normalize expresssion. default: 0.0 set in setup()
50+
PRMkConfigDefault:
51+
type: geometric::PRM
52+
max_nearest_neighbors: 10 # use k nearest neighbors. default: 10
53+
PRMstarkConfigDefault:
54+
type: geometric::PRMstar
55+
manipulator:
56+
default_planner_config: RRTConnectkConfigDefault
57+
planner_configs:
58+
- SBLkConfigDefault
59+
- ESTkConfigDefault
60+
- LBKPIECEkConfigDefault
61+
- BKPIECEkConfigDefault
62+
- KPIECEkConfigDefault
63+
- RRTkConfigDefault
64+
- RRTConnectkConfigDefault
65+
- RRTstarkConfigDefault
66+
- TRRTkConfigDefault
67+
- PRMkConfigDefault
68+
- PRMstarkConfigDefault
69+
##Note: commenting the following line lets moveit chose RRTConnect as default planner rather than LBKPIECE
70+
#projection_evaluator: joints(shoulder_pan_joint,shoulder_lift_joint)
71+
longest_valid_segment_fraction: 0.01
72+
endeffector:
73+
planner_configs:
74+
- SBLkConfigDefault
75+
- ESTkConfigDefault
76+
- LBKPIECEkConfigDefault
77+
- BKPIECEkConfigDefault
78+
- KPIECEkConfigDefault
79+
- RRTkConfigDefault
80+
- RRTConnectkConfigDefault
81+
- RRTstarkConfigDefault
82+
- TRRTkConfigDefault
83+
- PRMkConfigDefault
84+
- PRMstarkConfigDefault
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
<?xml version="1.0" ?>
2+
<!--This does not replace URDF, and is not an extension of URDF.
3+
This is a format for representing semantic information about the robot structure.
4+
A URDF file must exist for this robot as well, where the joints and the links that are referenced are defined
5+
-->
6+
<robot name="ur5e">
7+
<!--GROUPS: Representation of a set of joints and links. This can be useful for specifying DOF to plan for, defining arms, end effectors, etc-->
8+
<!--LINKS: When a link is specified, the parent joint of that link (if it exists) is automatically included-->
9+
<!--JOINTS: When a joint is specified, the child link of that joint (which will always exist) is automatically included-->
10+
<!--CHAINS: When a chain is specified, all the links along the chain (including endpoints) are included in the group. Additionally, all the joints that are parents to included links are also included. This means that joints along the chain and the parent joint of the base link are included in the group-->
11+
<!--SUBGROUPS: Groups can also be formed by referencing to already defined group names-->
12+
<group name="manipulator">
13+
<chain base_link="base_link" tip_link="ee_link" />
14+
</group>
15+
<group name="endeffector">
16+
<link name="ee_link" />
17+
</group>
18+
<!--GROUP STATES: Purpose: Define a named state for a particular group, in terms of joint values. This is useful to define states like 'folded arms'-->
19+
<group_state name="home" group="manipulator">
20+
<joint name="elbow_joint" value="0" />
21+
<joint name="shoulder_lift_joint" value="0" />
22+
<joint name="shoulder_pan_joint" value="0" />
23+
<joint name="wrist_1_joint" value="0" />
24+
<joint name="wrist_2_joint" value="0" />
25+
<joint name="wrist_3_joint" value="0" />
26+
</group_state>
27+
<group_state name="up" group="manipulator">
28+
<joint name="elbow_joint" value="0" />
29+
<joint name="shoulder_lift_joint" value="-1.5707" />
30+
<joint name="shoulder_pan_joint" value="0" />
31+
<joint name="wrist_1_joint" value="-1.5707" />
32+
<joint name="wrist_2_joint" value="0" />
33+
<joint name="wrist_3_joint" value="0" />
34+
</group_state>
35+
<!--END EFFECTOR: Purpose: Represent information about an end effector.-->
36+
<end_effector name="moveit_ee" parent_link="ee_link" group="endeffector" />
37+
<!--VIRTUAL JOINT: Purpose: this element defines a virtual joint between a robot link and an external frame of reference (considered fixed with respect to the robot)-->
38+
<virtual_joint name="fixed_base" type="fixed" parent_frame="world" child_link="base_link" />
39+
<!--DISABLE COLLISIONS: By default it is assumed that any link of the robot could potentially come into collision with any other link in the robot. This tag disables collision checking between a specified pair of links. -->
40+
<disable_collisions link1="base_link" link2="shoulder_link" reason="Adjacent" />
41+
<disable_collisions link1="ee_link" link2="wrist_1_link" reason="Never" />
42+
<disable_collisions link1="ee_link" link2="wrist_2_link" reason="Never" />
43+
<disable_collisions link1="ee_link" link2="wrist_3_link" reason="Adjacent" />
44+
<disable_collisions link1="forearm_link" link2="upper_arm_link" reason="Adjacent" />
45+
<disable_collisions link1="forearm_link" link2="wrist_1_link" reason="Adjacent" />
46+
<disable_collisions link1="shoulder_link" link2="upper_arm_link" reason="Adjacent" />
47+
<disable_collisions link1="wrist_1_link" link2="wrist_2_link" reason="Adjacent" />
48+
<disable_collisions link1="wrist_1_link" link2="wrist_3_link" reason="Never" />
49+
<disable_collisions link1="wrist_2_link" link2="wrist_3_link" reason="Adjacent" />
50+
</robot>
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<launch>
2+
3+
<arg name="reset" default="false"/>
4+
5+
<!-- Launch the warehouse with a default database location -->
6+
<include file="$(find ur5e_moveit_config)/launch/warehouse.launch">
7+
<arg name="moveit_warehouse_database_path" value="$(find ur5e_moveit_config)/default_warehouse_mongo_db" />
8+
</include>
9+
10+
<!-- If we want to reset the database, run this node -->
11+
<node if="$(arg reset)" name="$(anon moveit_default_db_reset)" type="moveit_init_demo_warehouse" pkg="moveit_ros_warehouse" respawn="false" output="screen" />
12+
13+
</launch>

0 commit comments

Comments
 (0)