TwoRX60.world
Go to the documentation of this file.
1 % A 6R Serial chain The Staubli-RX60 robot.
2 
5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8 
9 [CONSTANTS]
10 
11 % For puma-like manipulators only 3 of the DH parameters
12 % are relevant.
13 % Here we give those relevant parameters for the RX60 robot (in meters)
14 
15 a2:=0.29
16 d3:=0.049
17 d4:=0.31
18 
19 % Constants below are only relevant for decoration
20 
21 %RX60 color (r,g,b)
22 cr:=0.9
23 cg:=0.6
24 cb:=0.2
25 
26 % For the frame around the robot workspace
27 barRadius := 0.03
28 
29 XLower:=-1+barRadius
30 XUpper:=1-barRadius
31 YLower:=XLower
32 YUpper:=XUpper
33 ZLower:=-0.341
34 ZUpper :=1
35 
36 objectLength:=0.2
37 
38 robotDistance:=1
39 
40 objectRadius:=0.015
41 
42 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
43 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
44 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
45 
46 [LINKS]
47 
48 world: color (0,0,1)
49  /*
50  cylinder barRadius (XLower,YLower,ZLower) (XLower,XLower,ZUpper) decoration
51  sphere barRadius (XLower,YLower,ZUpper) decoration
52  cylinder barRadius (XLower,YUpper,ZLower) (XLower,YUpper,ZUpper) decoration
53  sphere barRadius (XLower,YUpper,ZUpper) decoration
54  cylinder barRadius (XUpper,YLower,ZLower) (XUpper,YLower,ZUpper) decoration
55  sphere barRadius (XUpper,YLower,ZUpper) decoration
56  cylinder barRadius (XUpper,YUpper,ZLower) (XUpper,YUpper,ZUpper) decoration
57  sphere barRadius (XUpper,YUpper,ZUpper) decoration
58  cylinder barRadius (XLower,YLower,ZUpper) (XLower,YUpper,ZUpper) decoration
59  cylinder barRadius (XLower,YLower,ZUpper) (XUpper,YLower,ZUpper) decoration
60  cylinder barRadius (XUpper,YUpper,ZUpper) (XLower,YUpper,ZUpper) decoration
61  cylinder barRadius (XUpper,YUpper,ZUpper) (XUpper,YLower,ZUpper) decoration
62  */
63  body "bodies/b1.off" color (0.6,0.6,0.6)
64 
65  body "bodies/plane.off" color (0.8,0.8,0.8) decoration
66 
67 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
68 
69 base_left: body "bodies/S0_rel.off" color (cr,cg,cb)
70 
71 link1_left: color (cr,cg,cb)
72  body "bodies/S1_rel.off"
73  body "bodies/S2_rel.off"
74 
75 link2_left: color (cr,cg,cb)
76  body "bodies/S3_rel.off"
77 
78 link3_left: color (cr,cg,cb)
79  body "bodies/S4_rel.off"
80 
81 link4_left: body "bodies/S5_rel.off" color (cr,cg,cb)
82  body "bodies/S6_rel.off" color (0.75,0.75,0.75)
83 
84 link5_left: color (0.75,0.75,0.75)
85  body "bodies/S7_rel.off"
86 
87 EndEffector_left: color (0.75,0.75,0.75)
88  body "bodies/S8_rel.off"
89 
90 
91 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
92 
93 base_right: body "bodies/S0_rel.off" color (cr,cg,cb)
94 
95 link1_right: color (cr,cg,cb)
96  body "bodies/S1_rel.off"
97  body "bodies/S2_rel.off"
98 
99 link2_right: color (cr,cg,cb)
100  body "bodies/S3_rel.off"
101 
102 link3_right: color (cr,cg,cb)
103  body "bodies/S4_rel.off"
104 
105 link4_right: body "bodies/S5_rel.off" color (cr,cg,cb)
106  body "bodies/S6_rel.off" color (0.75,0.75,0.75)
107 
108 link5_right: color (0.75,0.75,0.75)
109  body "bodies/S7_rel.off"
110 
111 EndEffector_right: color (0.75,0.75,0.75)
112  body "bodies/S8_rel.off"
113 
114 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
115 
116 object: cylinder objectRadius (0,0,0) (0,0,objectLength) blue
117  % body "bodies/object" blue
118 
119 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
120 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
121 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
122 
123 [JOINTS]
124 
125 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
126 
127 fix: world base_left Tx(-robotDistance/2)
128 
129 revolute: base_left (0,0,0) (0, 0,1)
130  link1_left (0,0,0) (0,-1,0)
131 
132 revolute: link1_left ( 0,0,0) ( 0,0,1)
133  link2_left (-a2,0,0) (-a2,0,1)
134 
135 revolute: link2_left (0,0, 0) (0,0, 1)
136  link3_left (0,d3,0) (0,d3+1,0)
137 
138 revolute: link3_left (0,0, 0) (0, 0, 1)
139  link4_left (0,d4,0) (0,d4-1,0)
140 
141 revolute: link4_left (0,0,0) (0, 0,1)
142  link5_left (0,0,0) (0,-1,0)
143 
144 revolute: link5_left (0,0,0) (0,0,1)
145  EndEffector_left (0,0,0) (0,0,1)
146 
147 fix: EndEffector_left object Tz(0.065)
148 
149 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
150 
151 fix: world base_right Rz(pi)*Tx(-robotDistance/2)
152 
153 revolute: base_right (0,0,0) (0, 0,1)
154  link1_right (0,0,0) (0,-1,0)
155 
156 revolute: link1_right ( 0,0,0) ( 0,0,1)
157  link2_right (-a2,0,0) (-a2,0,1)
158 
159 revolute: link2_right (0,0, 0) (0,0, 1)
160  link3_right (0,d3,0) (0,d3+1,0)
161 
162 revolute: link3_right (0,0, 0) (0, 0, 1)
163  link4_right (0,d4,0) (0,d4-1,0)
164 
165 revolute: link4_right (0,0,0) (0, 0,1)
166  link5_right (0,0,0) (0,-1,0)
167 
168 revolute: link5_right (0,0,0) (0,0,1)
169  EndEffector_right (0,0,0) (0,0,1)
170 
171 fix: EndEffector_right object Ry(pi)*Tz(-0.065-objectLength)
172 
173 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
174 
175 % first sample
176 % fix: world object Txyz(-objectLength/2, 0.2,0.05)*Ry(pi/2)
177 
178 % second sample
179 % fix: world object Txyz(-objectLength/2,-0.2,0.05)*Ry(pi/2)
180 
181 
182 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
183 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
184 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
185 
186 /*
187 [OBSTACLES]
188 
189 verticalBar: cylinder barRadius (0,0,-1.0) (0,0,0.4) green
190  % body "bodies/verticalBar" green
191 
192 [COLLISIONS]
193 
194 do not check: all
195 check: object,verticalBar
196 check: link4_right,verticalBar
197 check: link4_left,verticalBar
198 check: link5_right,verticalBar
199 check: link5_left,verticalBar
200 */
201