ur-sock 1.0 → 1.0.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 77f86804b68a66dbe0f5c547004d2bb58e0a84385a8f57d4b0dab4c60d7b1baf
4
- data.tar.gz: d96c731d006689f1dd80f3052e84084d3219964e8670a9f40afaac97f38710bb
3
+ metadata.gz: e42a30b3ef1a76030ccc48fb1e798e36257b8895ada222ae2a26f642fcd56982
4
+ data.tar.gz: 704231d423421a281694495e6f12f87a7356e800ec7b6da2ef674ede8d449595
5
5
  SHA512:
6
- metadata.gz: e48eadd3e4f07cd3fab23c3c77e397ed7ed91ca350251683944552a8759b1086487c4e4933bb5aaa068b4949b54ff69379f64d72cb39accdcb1c5086bc7254ac
7
- data.tar.gz: c770cbc905113eac5fa35ec8f658ee215f24ea5076e85aa4520a12e2aa88eb893ff79d4f53a84380d769abf98859009de462f932a10466a00e4d9ad70f59e22c
6
+ metadata.gz: fe512a2e363cbd4f4ded1a7c2b3a3242240fced5bb1ad16e377495f0a984bf20abb4929de1fffcc7c49380e7c2dc9fccdae745080c4bb3b2b9407e0ea23f0b7d
7
+ data.tar.gz: 8dbbe957f7f0d4a441f4aba8651648886961f5b521beda8817ed01a9da1b43a4d4602b5d4627282349b139cb06b47d4ee13e3980d621f42022a9133f51cd1d33
@@ -344,7 +344,7 @@ module UR
344
344
  true
345
345
  elsif line.match(/^could not understand/)
346
346
  @logger.warn'Could not execute restart_safety: Please upgrade to current version'
347
- line
347
+ nil
348
348
  else
349
349
  @logger.error line
350
350
  raise UR::Dash::Reconnect.new('Cant restart safety. Dashboard server down or not in Remote Mode')
@@ -359,12 +359,13 @@ module UR
359
359
  line
360
360
  elsif line == "NONE"
361
361
  @logger.warn'No password set, so no modes variable is available'
362
+ nil
362
363
  elsif line.match(/^could not understand/)
363
364
  @logger.warn'Could not execute get_operational_mode: Please upgrade to current version'
364
- line
365
+ nil
365
366
  else
366
367
  @logger.error line
367
- raise UR::Dash::Reconnect.new('Cant restart safety. Dashboard server down or not in Remote Mode')
368
+ raise UR::Dash::Reconnect.new('Cant get operational mode. Dashboard server down or not in Remote Mode')
368
369
  end
369
370
  end
370
371
 
@@ -373,10 +374,13 @@ module UR
373
374
  line = @sock.gets.strip
374
375
  if line.match(/^could not understand/)
375
376
  @logger.warn'Could not execute is_in_remote_control: Please upgrade to current version'
376
- line
377
- else
377
+ nil
378
+ elsif line == 'true' || line == 'false'
378
379
  @logger.debug line
379
- line
380
+ line == 'true'
381
+ else
382
+ @logger.error line
383
+ raise UR::Dash::Reconnect.new('Cant determine if robot is in remote control mode. Dashboard server down maybe down')
380
384
  end
381
385
  end
382
386
 
@@ -385,10 +389,13 @@ module UR
385
389
  line = @sock.gets.strip
386
390
  if line.match(/^could not understand/)
387
391
  @logger.warn'Could not execute get_serial_number: Please upgrade to current version'
388
- line
389
- else
392
+ nil
393
+ elsif line.match(/^\d+$/)
390
394
  @logger.debug line
391
395
  line
396
+ else
397
+ @logger.error line
398
+ raise UR::Dash::Reconnect.new('Cant get serial number. Dashboard server down maybe down or not in Remote Mode')
392
399
  end
393
400
  end
394
401
 
@@ -397,10 +404,13 @@ module UR
397
404
  line = @sock.gets.strip
398
405
  if line.match(/^could not understand/)
399
406
  @logger.warn'Could not execute get_robot_model: Please upgrade to current version'
400
- line
401
- else
407
+ nil
408
+ elsif line.match(/^UR/)
402
409
  @logger.debug line
403
410
  line
411
+ else
412
+ @logger.error line
413
+ raise UR::Dash::Reconnect.new('Cant get robot model. Dashboard server down maybe down or not in Remote Mode')
404
414
  end
405
415
  end
406
416
  end
data/lib/psi.rb CHANGED
@@ -6,6 +6,8 @@ require 'uri'
6
6
  module UR
7
7
 
8
8
  class Psi
9
+ class Reconnect < Exception; end
10
+
9
11
  module ConnectionState
10
12
  DISCONNECTED = 0
11
13
  CONNECTED = 1
@@ -41,18 +43,35 @@ module UR
41
43
  @sock.close
42
44
  @sock = nil
43
45
  @conn_state = ConnectionState::DISCONNECTED
44
- @logger.info "Connection closed " + @hostname + ":" + @port.to_s
46
+ @logger.info 'Connection closed ' + @hostname + ':' + @port.to_s
45
47
  end
46
48
  end
47
49
 
48
- def transfer(filename)
49
- File.open(filename) do |file|
50
- while not file.eof?
51
- @sock.write(file.read(1024))
50
+ def execute_ur_script_file(filename)
51
+ @logger.info 'Executing UR Script File: ' + filename
52
+ begin
53
+ File.open(filename) do |file|
54
+ while not file.eof?
55
+ @sock.write(file.readline)
56
+ line = @sock.gets.strip
57
+ @logger.debug line
58
+ end
52
59
  end
60
+ rescue => e
61
+ raise UR::Psi::Reconnect.new('UR Script can not be got. PSI server down or not in Remote Mode')
53
62
  end
54
63
  end
55
64
 
65
+ def execute_ur_script(str)
66
+ @logger.info 'Executing UR Script ...'
67
+ begin
68
+ @sock.write(str)
69
+ line = @sock.gets.strip
70
+ @logger.debug line
71
+ rescue => e
72
+ raise UR::Psi::Reconnect.new('UR Script can not be got. PSI server down or not in Remote Mode')
73
+ end
74
+ end
56
75
  end
57
76
 
58
77
  end
@@ -120,8 +120,8 @@ module UR
120
120
  l = []
121
121
  l.append @recipe_id if @recipe_id
122
122
  names.each do |i|
123
- raise RuntimeError.new('Uninitialized parameter: ' + i) unless @values[i]
124
- l.push *@values[i]
123
+ raise RuntimeError.new('Uninitialized parameter: ' + i) if @values[i].nil?
124
+ l.push *(!!@values[i] == @values[i] ? (@values[i] == true ? 1 : 0) : @values[i])
125
125
  end
126
126
  l
127
127
  end
@@ -153,11 +153,11 @@ module UR
153
153
  elsif i == 'UINT8'
154
154
  rmd.fmt += 'C'
155
155
  elsif i == 'BOOL'
156
- rmd.fmt += '?'
156
+ rmd.fmt += 'c'
157
157
  elsif i == 'IN_USE'
158
- #raise TypeError 'An input parameter is already in use.'
158
+ raise 'An input parameter is already in use.'
159
159
  else
160
- #raise TypeError 'Unknown data type: ' + i
160
+ raise 'Unknown data type: ' + i
161
161
  end
162
162
  end
163
163
  rmd
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "ur-sock"
3
- s.version = "1.0"
3
+ s.version = "1.0.5"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0"
6
6
  s.summary = "Preliminary release of Universal Robot (UR) Socket Communication."
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ur-sock
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Pauker
8
8
  - Juergen eTM Mangler
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-06-05 00:00:00.000000000 Z
12
+ date: 2021-01-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: xml-smart
@@ -52,7 +52,7 @@ homepage: https://github.com/fpauker/ur-sock
52
52
  licenses:
53
53
  - LGPL-3.0
54
54
  metadata: {}
55
- post_install_message:
55
+ post_install_message:
56
56
  rdoc_options: []
57
57
  require_paths:
58
58
  - lib
@@ -67,8 +67,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  requirements: []
70
- rubygems_version: 3.1.2
71
- signing_key:
70
+ rubygems_version: 3.1.4
71
+ signing_key:
72
72
  specification_version: 4
73
73
  summary: Preliminary release of Universal Robot (UR) Socket Communication.
74
74
  test_files: []