Skip to content

Commit b135b87

Browse files
authored
Add support for UR18 (#341)
1 parent b96ca0b commit b135b87

16 files changed

+1087
-5
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ users an overview of the current released state.
1717

1818

1919
## License
20-
The [UR8LONG meshes](meshes/ur8long), [UR15 meshes](meshes/ur15), [UR20 meshes](meshes/ur20) and [UR30 meshes](meshes/ur30) constitutes “Graphical Documentation” the use of which is subject to and governed by our “[Terms and Conditions for use of Graphical Documentation](https://www.universal-robots.com/legal/terms-and-conditions/terms_and_conditions_for_use_of_graphical_documentation.txt)”.
20+
The [UR8LONG meshes](meshes/ur8long), [UR15 meshes](meshes/ur15), [UR18 meshes](meshes/ur18), [UR20 meshes](meshes/ur20) and [UR30 meshes](meshes/ur30) constitutes “Graphical Documentation” the use of which is subject to and governed by our “[Terms and Conditions for use of Graphical Documentation](https://www.universal-robots.com/legal/terms-and-conditions/terms_and_conditions_for_use_of_graphical_documentation.txt)”.
2121

22-
Universal Robots' [Terms and Conditions for use of Graphical Documentation](https://www.universal-robots.com/legal/terms-and-conditions/terms_and_conditions_for_use_of_graphical_documentation.txt) do not fully comply with [OSI's definition of Open Source](https://opensource.org/osd/), but they do allow you to use, modify and share “Graphical Documentation”, including [UR8LONG meshes](meshes/ur8long), [UR15 meshes](meshes/ur15), [UR20](meshes/ur20) and [UR30](meshes/ur30) meshes, subject to certain restrictions.\
22+
Universal Robots' [Terms and Conditions for use of Graphical Documentation](https://www.universal-robots.com/legal/terms-and-conditions/terms_and_conditions_for_use_of_graphical_documentation.txt) do not fully comply with [OSI's definition of Open Source](https://opensource.org/osd/), but they do allow you to use, modify and share “Graphical Documentation”, including [UR8LONG meshes](meshes/ur8long), [UR15 meshes](meshes/ur15), [UR18 meshes](meshes/ur18), [UR20](meshes/ur20) and [UR30](meshes/ur30) meshes, subject to certain restrictions.\
2323
If you have any questions regarding this license or if this license doesn't fit your use-case, please contact [[email protected]](mailto:[email protected]).
2424

2525
All other content is licensed under the BSD-3-Clause license
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
kinematics:
2+
shoulder:
3+
x: 0
4+
y: 0
5+
z: 0.21859999999999999
6+
roll: -0
7+
pitch: 0
8+
yaw: -0
9+
upper_arm:
10+
x: 0
11+
y: 0
12+
z: 0
13+
roll: 1.570796327
14+
pitch: 0
15+
yaw: -0
16+
forearm:
17+
x: -0.47499999999999998
18+
y: 0
19+
z: 0
20+
roll: -0
21+
pitch: 0
22+
yaw: -0
23+
wrist_1:
24+
x: -0.33889999999999998
25+
y: 0
26+
z: 0.18240000000000001
27+
roll: -0
28+
pitch: 0
29+
yaw: -0
30+
wrist_2:
31+
x: 0
32+
y: -0.1361
33+
z: -2.7914576620936571e-11
34+
roll: 1.570796327
35+
pitch: 0
36+
yaw: -0
37+
wrist_3:
38+
x: 0
39+
y: 0.1434
40+
z: -2.941183164909849e-11
41+
roll: 1.5707963265897931
42+
pitch: 3.1415926535897931
43+
yaw: 3.1415926535897931
44+
hash: calib_141559178124808281

config/ur18/joint_limits.yaml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
joint_limits:
3+
shoulder_pan_joint:
4+
# acceleration limits are not publicly available
5+
has_acceleration_limits: false
6+
has_effort_limits: true
7+
has_position_limits: true
8+
has_velocity_limits: true
9+
max_effort: 433.0
10+
max_position: !degrees 360.0
11+
max_velocity: !degrees 180.0
12+
min_position: !degrees -360.0
13+
shoulder_lift_joint:
14+
# acceleration limits are not publicly available
15+
has_acceleration_limits: false
16+
has_effort_limits: true
17+
has_position_limits: true
18+
has_velocity_limits: true
19+
max_effort: 433.0
20+
max_position: !degrees 360.0
21+
max_velocity: !degrees 180.0
22+
min_position: !degrees -360.0
23+
elbow_joint:
24+
# acceleration limits are not publicly available
25+
has_acceleration_limits: false
26+
has_effort_limits: true
27+
has_position_limits: true
28+
has_velocity_limits: true
29+
max_effort: 204.0
30+
# we artificially limit this joint to half its actual joint position limit
31+
# to avoid (MoveIt/OMPL) planning problems, as due to the physical
32+
# construction of the robot, it's impossible to rotate the 'elbow_joint'
33+
# over more than approx +- 1 pi (the shoulder lift joint gets in the way).
34+
#
35+
# This leads to planning problems as the search space will be divided into
36+
# two sections, with no connections from one to the other.
37+
#
38+
# Refer to https://github.com/ros-industrial/universal_robot/issues/265 for
39+
# more information.
40+
max_position: !degrees 180.0
41+
max_velocity: !degrees 240.0
42+
min_position: !degrees -180.0
43+
wrist_1_joint:
44+
# acceleration limits are not publicly available
45+
has_acceleration_limits: false
46+
has_effort_limits: true
47+
has_position_limits: true
48+
has_velocity_limits: true
49+
max_effort: 70.0
50+
max_position: !degrees 360.0
51+
max_velocity: !degrees 300.0
52+
min_position: !degrees -360.0
53+
wrist_2_joint:
54+
# acceleration limits are not publicly available
55+
has_acceleration_limits: false
56+
has_effort_limits: true
57+
has_position_limits: true
58+
has_velocity_limits: true
59+
max_effort: 70.0
60+
max_position: !degrees 360.0
61+
max_velocity: !degrees 300.0
62+
min_position: !degrees -360.0
63+
wrist_3_joint:
64+
# acceleration limits are not publicly available
65+
has_acceleration_limits: false
66+
has_effort_limits: true
67+
has_position_limits: true
68+
has_velocity_limits: true
69+
max_effort: 70.0
70+
max_position: !degrees 360.0
71+
max_velocity: !degrees 300.0
72+
min_position: !degrees -360.0
Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
---
2+
# Physical parameters
3+
4+
offsets:
5+
shoulder_offset: 0.109 # measured from model
6+
elbow_offset: 0.134242 # measured from model
7+
8+
9+
inertia_parameters:
10+
base_mass: 4.0 # This mass might be incorrect
11+
shoulder_mass: 9.9883
12+
upper_arm_mass: 14.2009
13+
forearm_mass: 5.52
14+
wrist_1_mass: 2.089
15+
wrist_2_mass: 2.0869
16+
wrist_3_mass: 1.0666
17+
18+
shoulder_radius: x0.060 # FROM UR5 CURRENTLY NOT USED ANYMORE
19+
upper_arm_radius: x0.054 # FROM UR5 CURRENTLY NOT USED ANYMORE
20+
elbow_radius: x0.060 # FROM UR5 CURRENTLY NOT USED ANYMORE
21+
forearm_radius: x0.040 # FROM UR5 CURRENTLY NOT USED ANYMORE
22+
wrist_radius: x0.045 # FROM UR5 CURRENTLY NOT USED ANYMORE
23+
24+
# used to approximate the inertia tensor of the fixed base using a cylinder approximation. This
25+
# is only relevant if the robot's base is moving e.g. when it's mounted on a mobile platform.
26+
links:
27+
base:
28+
radius: 0.17
29+
length: 0.1
30+
31+
center_of_mass:
32+
shoulder_cog:
33+
x: 0.000024 # model.x
34+
y: -0.025304 # -model.z
35+
z: -0.033309 # model.y
36+
upper_arm_cog:
37+
x: -0.166336 # model.x - upperarm_length
38+
y: -0.000088 # model.y
39+
z: 0.190204 # model.z
40+
forearm_cog:
41+
x: -0.139248 # model.x - forearm_length
42+
y: 0.000021 # model.y
43+
z: 0.073101 # model.z
44+
wrist_1_cog:
45+
x: 0.000025 # model.x
46+
y: -0.016413 # -model.z
47+
z: -0.019695 # model.y
48+
wrist_2_cog:
49+
x: 0.000025 # model.x
50+
y: 0.015886 # model.z
51+
z: -0.019960 # -model.y
52+
wrist_3_cog:
53+
x: -0.000018 # model.x
54+
y: -0.000112 # model.y
55+
z: -0.053397 # model.z
56+
57+
rotation:
58+
shoulder:
59+
roll: 1.570796326794897
60+
pitch: 0
61+
yaw: 0
62+
upper_arm:
63+
roll: 0
64+
pitch: 0
65+
yaw: 0
66+
forearm:
67+
roll: 0
68+
pitch: 0
69+
yaw: 0
70+
wrist_1:
71+
roll: 1.570796326794897
72+
pitch: 0
73+
yaw: 0
74+
wrist_2:
75+
roll: -1.570796326794897
76+
pitch: 0
77+
yaw: 0
78+
wrist_3:
79+
roll: 0
80+
pitch: 0
81+
yaw: 0
82+
83+
tensor:
84+
shoulder:
85+
ixx: 0.051334
86+
ixy: 0.000025
87+
ixz: -0.000016
88+
iyy: 0.047702
89+
iyz: 0.008805
90+
izz: 0.034263
91+
upper_arm:
92+
ixx: 0.045094
93+
ixy: 0.000179
94+
ixz: -0.024705
95+
iyy: 0.630805
96+
iyz: -0.000020
97+
izz: 0.625724
98+
forearm:
99+
ixx: 0.016891
100+
ixy: 0.000000
101+
ixz: 0.009081
102+
iyy: 0.129732
103+
iyz: 0.000003
104+
izz: 0.123451
105+
wrist_1:
106+
ixx: 0.004339
107+
ixy: 0.000019
108+
ixz: 0.000001
109+
iyy: 0.002548
110+
iyz: 0.000706
111+
izz: 0.003912
112+
wrist_2:
113+
ixx: 0.004288
114+
ixy: 0.000017
115+
ixz: -0.000003
116+
iyy: 0.002566
117+
iyz: -0.000716
118+
izz: 0.003927
119+
wrist_3:
120+
ixx: 0.001406
121+
ixy: -0.000003
122+
ixz: 0.000010
123+
iyy: 0.001404
124+
iyz: -0.000024
125+
izz: 0.001002

config/ur18/visual_parameters.yaml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Visualisation
2+
3+
mesh_files:
4+
base:
5+
visual:
6+
mesh:
7+
package: ur_description
8+
path: meshes/ur15/visual/base.dae
9+
collision:
10+
mesh:
11+
package: ur_description
12+
path: meshes/ur15/collision/base.stl
13+
14+
shoulder:
15+
visual:
16+
mesh:
17+
package: ur_description
18+
path: meshes/ur15/visual/shoulder.dae
19+
collision:
20+
mesh:
21+
package: ur_description
22+
path: meshes/ur15/collision/shoulder.stl
23+
24+
upper_arm:
25+
visual:
26+
mesh:
27+
package: ur_description
28+
path: meshes/ur18/visual/upperarm.dae
29+
collision:
30+
mesh:
31+
package: ur_description
32+
path: meshes/ur18/collision/upperarm.stl
33+
34+
forearm:
35+
visual:
36+
mesh:
37+
package: ur_description
38+
path: meshes/ur18/visual/forearm.dae
39+
collision:
40+
mesh:
41+
package: ur_description
42+
path: meshes/ur18/collision/forearm.stl
43+
44+
wrist_1:
45+
visual:
46+
mesh:
47+
package: ur_description
48+
path: meshes/ur15/visual/wrist1.dae
49+
collision:
50+
mesh:
51+
package: ur_description
52+
path: meshes/ur15/collision/wrist1.stl
53+
visual_offset: -0.0502
54+
55+
wrist_2:
56+
visual:
57+
mesh:
58+
package: ur_description
59+
path: meshes/ur15/visual/wrist2.dae
60+
collision:
61+
mesh:
62+
package: ur_description
63+
path: meshes/ur15/collision/wrist2.stl
64+
visual_offset: -0.064
65+
66+
wrist_3:
67+
visual:
68+
mesh:
69+
package: ur_description
70+
path: meshes/ur15/visual/wrist3.dae
71+
collision:
72+
mesh:
73+
package: ur_description
74+
path: meshes/ur15/collision/wrist3.stl
75+
visual_offset: -0.0715

launch/view_ur.launch.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ def generate_launch_description():
5555
"ur16e",
5656
"ur8long",
5757
"ur15",
58+
"ur18",
5859
"ur20",
5960
"ur30",
6061
],

0 commit comments

Comments
 (0)