ur-sock 0.3.2 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/dashboard.rb +46 -25
- data/lib/rtde.rb +60 -15
- data/ur-sock.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f8dde2b66e0d8f0ab96fdbe057344b2b7472b65e08811d643ec4d55fa784b55f
|
4
|
+
data.tar.gz: 9fb11b94f2b0de59f0708e8d785b06a86116080259969e85b9e56dd25eb953cb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ea13d1e1859e308f8d5c8e802987d666ad0fa84ccaf92419234d90ced941ff0fe220ba30d210b507c892d6839dd37f24100dad5131b0109fd2b6018528b2712
|
7
|
+
data.tar.gz: 926a8c316f11eb496add47ee6de9dd72dfd33cdc1b3b5ff3550592369cdebaea864417440ee7226c8d879e7235d22767ae9253e73e7608281c725f0e5d1baa77
|
data/lib/dashboard.rb
CHANGED
@@ -77,13 +77,13 @@ module UR
|
|
77
77
|
end
|
78
78
|
|
79
79
|
def load_program (programname)
|
80
|
-
@logger.
|
80
|
+
@logger.debug "loadprogram"
|
81
81
|
send = "load " + programname + ".urp\n"
|
82
82
|
puts send
|
83
83
|
@sock.write (send)
|
84
84
|
line = @sock.gets.strip
|
85
85
|
if line.match(/^./) == 'L'
|
86
|
-
@logger.
|
86
|
+
@logger.debug line
|
87
87
|
true
|
88
88
|
else
|
89
89
|
@logger.error line
|
@@ -95,7 +95,7 @@ module UR
|
|
95
95
|
@sock.write("play\n")
|
96
96
|
line = @sock.gets.strip
|
97
97
|
if line == "Starting program"
|
98
|
-
@logger.
|
98
|
+
@logger.debug line
|
99
99
|
true
|
100
100
|
else
|
101
101
|
@logger.error line
|
@@ -107,7 +107,7 @@ module UR
|
|
107
107
|
@sock.write("stop\n")
|
108
108
|
line = @sock.gets.strip
|
109
109
|
if line == "Stopped"
|
110
|
-
@logger.
|
110
|
+
@logger.debug line
|
111
111
|
true
|
112
112
|
else
|
113
113
|
@logger.error line
|
@@ -117,8 +117,9 @@ module UR
|
|
117
117
|
|
118
118
|
def pause_program
|
119
119
|
@sock.write("pause\n")
|
120
|
+
line = @sock.gets.strip
|
120
121
|
if line == "Pausing program"
|
121
|
-
@logger.
|
122
|
+
@logger.debug line
|
122
123
|
true
|
123
124
|
else
|
124
125
|
@logger.error line
|
@@ -128,8 +129,9 @@ module UR
|
|
128
129
|
|
129
130
|
def shutdown
|
130
131
|
@sock.write("shutdown\n")
|
132
|
+
line = @sock.gets.strip
|
131
133
|
if line == "Shutting down"
|
132
|
-
@logger.
|
134
|
+
@logger.debug line
|
133
135
|
true
|
134
136
|
else
|
135
137
|
@logger.error line
|
@@ -139,8 +141,9 @@ module UR
|
|
139
141
|
|
140
142
|
def running?
|
141
143
|
@sock.write("running\n")
|
144
|
+
line = @sock.gets.strip
|
142
145
|
if line == "Program running: True"
|
143
|
-
@logger.
|
146
|
+
@logger.debug line
|
144
147
|
true
|
145
148
|
else
|
146
149
|
@logger.error line
|
@@ -151,7 +154,7 @@ module UR
|
|
151
154
|
def get_robotmode
|
152
155
|
@sock.write("robotmode\n")
|
153
156
|
line = @sock.gets.strip
|
154
|
-
@logger.
|
157
|
+
@logger.debug line
|
155
158
|
result = $1.strip if line.match(/^Robotmode:\s(.+)/)
|
156
159
|
end
|
157
160
|
|
@@ -159,7 +162,7 @@ module UR
|
|
159
162
|
@sock.write ("get loaded program\n")
|
160
163
|
line = @sock.gets.strip
|
161
164
|
if line.match(/^Loaded program:\s(.+)/)
|
162
|
-
@logger.
|
165
|
+
@logger.debug line
|
163
166
|
path = $1.strip
|
164
167
|
else
|
165
168
|
@logger.error line
|
@@ -169,19 +172,19 @@ module UR
|
|
169
172
|
|
170
173
|
def open_popupmessage(message)
|
171
174
|
@sock.write ("popup " + message.to_s + "\n")
|
172
|
-
@logger.
|
175
|
+
@logger.debug @sock.gets.strip
|
173
176
|
end
|
174
177
|
|
175
178
|
def close_popupmessage
|
176
179
|
@sock.write ("close popup\n")
|
177
|
-
@logger.
|
180
|
+
@logger.debug @sock.gets.strip
|
178
181
|
end
|
179
182
|
|
180
183
|
def add_to_log(message)
|
181
184
|
@sock.write ("addToLog " + message.to_s + "\n")
|
182
185
|
line = @sock.gets.strip
|
183
186
|
if line.match(/^Added log message/)
|
184
|
-
@logger.
|
187
|
+
@logger.debug line
|
185
188
|
else
|
186
189
|
@logger.error line
|
187
190
|
end
|
@@ -189,8 +192,9 @@ module UR
|
|
189
192
|
|
190
193
|
def is_program_saved?
|
191
194
|
@sock.write("isProgramSaved\n")
|
195
|
+
line = @sock.gets.strip
|
192
196
|
if line == "True"
|
193
|
-
@logger.
|
197
|
+
@logger.debug line
|
194
198
|
true
|
195
199
|
else
|
196
200
|
@logger.error line
|
@@ -201,22 +205,32 @@ module UR
|
|
201
205
|
def get_program_state
|
202
206
|
@sock.write("programState\n")
|
203
207
|
line = @sock.gets.strip
|
204
|
-
@logger.
|
208
|
+
@logger.debug line
|
205
209
|
line
|
206
210
|
end
|
207
211
|
|
208
212
|
def get_polyscope_version
|
209
213
|
@sock.write("PolyscopeVersion\n")
|
210
214
|
line = @sock.gets.strip
|
211
|
-
@logger.
|
215
|
+
@logger.debug line
|
212
216
|
line
|
213
217
|
end
|
214
218
|
|
219
|
+
def set_operation_mode_manual
|
220
|
+
@sock.write("set operational mode manual\n")
|
221
|
+
line = @sock.gets.strip
|
222
|
+
if line.match(/^S/)
|
223
|
+
@logger.debug line
|
224
|
+
else
|
225
|
+
@logger.error line
|
226
|
+
end
|
227
|
+
end
|
228
|
+
|
215
229
|
def set_operation_mode_auto
|
216
230
|
@sock.write("set operational mode automatic\n")
|
217
231
|
line = @sock.gets.strip
|
218
232
|
if line.match(/^S/)
|
219
|
-
@logger.
|
233
|
+
@logger.debug line
|
220
234
|
else
|
221
235
|
@logger.error line
|
222
236
|
end
|
@@ -226,7 +240,7 @@ module UR
|
|
226
240
|
@sock.write("clear operational mode\n")
|
227
241
|
line = @sock.gets.strip
|
228
242
|
if line.match(/^operational/)
|
229
|
-
@logger.
|
243
|
+
@logger.debug line
|
230
244
|
true
|
231
245
|
else
|
232
246
|
@logger.error line
|
@@ -235,8 +249,9 @@ module UR
|
|
235
249
|
|
236
250
|
def power_on
|
237
251
|
@sock.write("power on\n")
|
252
|
+
line = @sock.gets.strip
|
238
253
|
if line.match(/^Powering/)
|
239
|
-
@logger.
|
254
|
+
@logger.debug line
|
240
255
|
true
|
241
256
|
else
|
242
257
|
@logger.error line
|
@@ -246,8 +261,9 @@ module UR
|
|
246
261
|
|
247
262
|
def power_off
|
248
263
|
@sock.write("power off\n")
|
264
|
+
line = @sock.gets.strip
|
249
265
|
if line.match(/^Powering/)
|
250
|
-
@logger.
|
266
|
+
@logger.debug line
|
251
267
|
true
|
252
268
|
else
|
253
269
|
@logger.error line
|
@@ -257,8 +273,9 @@ module UR
|
|
257
273
|
|
258
274
|
def break_release
|
259
275
|
@sock.write("brake release\n")
|
276
|
+
line = @sock.gets.strip
|
260
277
|
if line.match(/^Brake/)
|
261
|
-
@logger.
|
278
|
+
@logger.debug line
|
262
279
|
true
|
263
280
|
else
|
264
281
|
@logger.error line
|
@@ -269,14 +286,15 @@ module UR
|
|
269
286
|
def get_safety_mode
|
270
287
|
@sock.write("safetymode\n")
|
271
288
|
line = @sock.gets.strip
|
272
|
-
@logger.
|
289
|
+
@logger.debug line
|
273
290
|
result = $1.strip if line.match(/^Safetymode:\s(.+)/)
|
274
291
|
end
|
275
292
|
|
276
293
|
def unlock_protective_stop
|
277
294
|
@sock.write("unlock protective stop\n")
|
295
|
+
line = @sock.gets.strip
|
278
296
|
if line.match(/^Protective/)
|
279
|
-
@logger.
|
297
|
+
@logger.debug line
|
280
298
|
true
|
281
299
|
else
|
282
300
|
@logger.error line
|
@@ -286,8 +304,9 @@ module UR
|
|
286
304
|
|
287
305
|
def close_safety_popup
|
288
306
|
@sock.write("close safety popup\n")
|
307
|
+
line = @sock.gets.strip
|
289
308
|
if line.match(/^closing/)
|
290
|
-
@logger.
|
309
|
+
@logger.debug line
|
291
310
|
true
|
292
311
|
else
|
293
312
|
@logger.error line
|
@@ -297,8 +316,9 @@ module UR
|
|
297
316
|
|
298
317
|
def load_installation
|
299
318
|
@sock.write("load installation\n")
|
319
|
+
line = @sock.gets.strip
|
300
320
|
if line.match(/^Loading/)
|
301
|
-
@logger.
|
321
|
+
@logger.debug line
|
302
322
|
true
|
303
323
|
else
|
304
324
|
@logger.error line
|
@@ -308,8 +328,9 @@ module UR
|
|
308
328
|
|
309
329
|
def restart_safety
|
310
330
|
@sock.write("restart safety\n")
|
331
|
+
line = @sock.gets.strip
|
311
332
|
if line.match(/^Brake/)
|
312
|
-
@logger.
|
333
|
+
@logger.debug line
|
313
334
|
true
|
314
335
|
else
|
315
336
|
@logger.error line
|
data/lib/rtde.rb
CHANGED
@@ -7,17 +7,66 @@ module UR
|
|
7
7
|
|
8
8
|
class Rtde
|
9
9
|
PROTOCOL_VERSION = 2
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
10
|
+
ROBOTMODE = {
|
11
|
+
-1 => 'No Controller',
|
12
|
+
0 => 'Disconnected',
|
13
|
+
1 => 'Confirm Safety',
|
14
|
+
2 => 'Booting',
|
15
|
+
3 => 'Power Off',
|
16
|
+
4 => 'Power On',
|
17
|
+
5 => 'Idle',
|
18
|
+
6 => 'Backdrive',
|
19
|
+
7 => 'Running',
|
20
|
+
8 => 'Updating Firmware'
|
21
|
+
}
|
22
|
+
PROGRAMSTATE = {
|
23
|
+
1 => 'Stopped',
|
24
|
+
2 => 'Playing',
|
25
|
+
4 => 'Paused'
|
26
|
+
}
|
27
|
+
JOINTMODE = {
|
28
|
+
235 => 'JOINT_MODE_RESET',
|
29
|
+
236 => 'JOINT_MODE_SHUTTING_DOWN',
|
30
|
+
237 => 'JOINT_PART_D_CALIBRATION_MODE (INTERNAL USE ONLY)',
|
31
|
+
238 => 'JOINT_MODE_BACKDRIVE',
|
32
|
+
239 => 'JOINT_MODE_POWER_OFF',
|
33
|
+
240 => 'JOINT_MODE_READY_FOR_POWER_OFF (FROM VERSION 5.1)',
|
34
|
+
245 => 'JOINT_MODE_NOT_RESPONDING',
|
35
|
+
246 => 'JOINT_MODE_MOTOR_INITIALISATION',
|
36
|
+
247 => 'JOINT_MODE_BOOTING',
|
37
|
+
248 => 'JOINT_PART_D_CALIBRATION_ERROR_MODE (INTERNAL USE ONLY)',
|
38
|
+
249 => 'JOINT_MODE_BOOTLOADER',
|
39
|
+
250 => 'JOINT_CALIBRATION_MODE (INTERNAL USE ONLY)',
|
40
|
+
251 => 'JOINT_MODE_VIOLATION',
|
41
|
+
252 => 'JOINT_MODE_FAULT',
|
42
|
+
253 => 'JOINT_MODE_RUNNING',
|
43
|
+
255 => 'JOINT_MODE_IDLE'
|
44
|
+
}
|
45
|
+
SAFETYMODE = {
|
46
|
+
11 => 'SAFETY_MODE_UNDEFINED_SAFETY_MODE',
|
47
|
+
10 => 'SAFETY_MODE_VALIDATE_JOINT_ID',
|
48
|
+
9 => 'SAFETY_MODE_FAULT',
|
49
|
+
8 => 'SAFETY_MODE_VIOLATION',
|
50
|
+
7 => 'SAFETY_MODE_ROBOT_EMERGENCY_STOP',
|
51
|
+
6 => 'SAFETY_MODE_SYSTEM_EMERGENCY_STOP',
|
52
|
+
5 => 'SAFETY_MODE_SAFEGUARD_STOP',
|
53
|
+
4 => 'SAFETY_MODE_RECOVERY',
|
54
|
+
3 => 'SAFETY_MODE_PROTECTIVE_STOP',
|
55
|
+
2 => 'SAFETY_MODE_REDUCED',
|
56
|
+
1 => 'SAFETY_MODE_NORMAL'
|
57
|
+
}
|
58
|
+
|
59
|
+
TOOLMODE = {
|
60
|
+
235 => 'JOINT_MODE_RESET',
|
61
|
+
236 => 'JOINT_MODE_SHUTTING_DOWN',
|
62
|
+
239 => 'JOINT_MODE_POWER_OFF',
|
63
|
+
245 => 'JOINT_MODE_NOT_RESPONDING',
|
64
|
+
247 => 'JOINT_MODE_BOOTING',
|
65
|
+
249 => 'JOINT_MODE_BOOTLOADER',
|
66
|
+
252 => 'JOINT_MODE_FAULT',
|
67
|
+
253 => 'JOINT_MODE_RUNNING',
|
68
|
+
255 => 'JOINT_MODE_IDLE'
|
69
|
+
}
|
21
70
|
|
22
71
|
module Command #{{{
|
23
72
|
RTDE_REQUEST_PROTOCOL_VERSION = 86 # ASCII V
|
@@ -37,10 +86,6 @@ module UR
|
|
37
86
|
PAUSED = 3
|
38
87
|
end #}}}
|
39
88
|
|
40
|
-
def get_robotmode
|
41
|
-
@@robotmode
|
42
|
-
end
|
43
|
-
|
44
89
|
def initialize(host, logger=Logger.new(STDOUT,level: :INFO)) #{{{
|
45
90
|
host = '//' + host if host !~ /\/\//
|
46
91
|
uri = URI::parse(host)
|
data/ur-sock.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ur-sock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Florian Pauker
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2019-
|
12
|
+
date: 2019-06-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: xml-smart
|