urua 0.99.4444 → 0.99.5002

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ef3e3d64c617ba7859dca518202a0ce9ad2fd5eeefcda7ba3eb50dd73eec37e
4
- data.tar.gz: a5fe2caa9c39553b41f8c0e7783d03e041a3b8b87cfb9870349ad0f4613c9c2f
3
+ metadata.gz: d3ee01168708553d0decf46b79486a4f166e2c8fb0bc4ca242632136788bffb8
4
+ data.tar.gz: aace03047b700a0db3ea42a27d6b2dc843c0243f927190be6fe97fb25a806fbc
5
5
  SHA512:
6
- metadata.gz: f3a4be3676808651686feecf724efd18a9788a6eddc340c4a81c3b64d209649c66ebe4eafb4f8ad4155233f587359c49e47f122c840f9600814fd743d1c438ae
7
- data.tar.gz: ff7a3737587d48abea99cbfb3a1fc2e675454b0cd1f08f973834ed0678ebd79c719e92d648e6a7e7efbcc20136119b2713bbf85f0cd32f429a93954441f8e5d0
6
+ metadata.gz: 2d0f01cf260daca24bbf05e85f1ad841b8c2f8b0d49f39d602bfe866a81e26798053d0046e93a5b2cbd445b3b0ad4b885c947c62a46bb801781fc551ae9c2984
7
+ data.tar.gz: 29f862c4783ab81a8c38890cf768b7f4f919b123ebfa05622a31b126934603f807575105bbe6993973f067895bae7b19bc392c9c13706aba0ad21242b7b20c4f
@@ -0,0 +1,94 @@
1
+ <?xml version="1.0"?>
2
+ <rtde_config>
3
+ <recipe key="speed">
4
+ <field name="speed_slider_mask" type="UINT32"/>
5
+ <field name="speed_slider_fraction" type="DOUBLE"/>
6
+ </recipe>
7
+
8
+ <recipe key="out">
9
+ <field name="timestamp" type="DOUBLE"/>
10
+ <field name="target_q" type="VECTOR6D"/>
11
+ <field name="target_qd" type="VECTOR6D"/>
12
+ <field name="target_qdd" type="VECTOR6D"/>
13
+ <field name="target_current" type="VECTOR6D"/>
14
+ <field name="target_moment" type="VECTOR6D"/>
15
+ <field name="actual_q" type="VECTOR6D"/>
16
+ <field name="actual_qd" type="VECTOR6D"/>
17
+ <field name="actual_current" type="VECTOR6D"/>
18
+ <field name="joint_control_output" type="VECTOR6D"/>
19
+ <field name="actual_TCP_pose" type="VECTOR6D"/>
20
+ <field name="actual_TCP_speed" type="VECTOR6D"/>
21
+ <field name="actual_TCP_force" type="VECTOR6D"/>
22
+ <field name="target_TCP_pose" type="VECTOR6D"/>
23
+ <field name="target_TCP_speed" type="VECTOR6D"/>
24
+ <field name="actual_digital_input_bits" type="UINT64"/>
25
+ <field name="joint_temperatures" type="VECTOR6D"/>
26
+ <field name="actual_execution_time" type="DOUBLE"/>
27
+ <field name="robot_mode" type="INT32"/>
28
+ <field name="joint_mode" type="VECTOR6INT32"/>
29
+ <field name="safety_mode" type="INT32"/>
30
+ <field name="actual_tool_accelerometer" type="VECTOR3D"/>
31
+ <field name="speed_scaling" type="DOUBLE"/>
32
+ <field name="target_speed_fraction" type="DOUBLE"/>
33
+ <field name="actual_momentum" type="DOUBLE"/>
34
+ <field name="actual_main_voltage" type="DOUBLE"/>
35
+ <field name="actual_robot_voltage" type="DOUBLE"/>
36
+ <field name="actual_robot_current" type="DOUBLE"/>
37
+ <field name="actual_joint_voltage" type="VECTOR6D"/>
38
+ <field name="actual_digital_output_bits" type="UINT64"/>
39
+ <field name="runtime_state" type="UINT32"/>
40
+
41
+ <!-- field name="output_bit_registers0_to_31" type="UINT32"/-->
42
+ <!-- field name="output_bit_registers32_to_63" type="UINT32"/-->
43
+
44
+ <!-- field name="output_int_register_0" type="INT32"/-->
45
+ <!-- field name="output_int_register_1" type="INT32"/-->
46
+ <!-- field name="output_int_register_2" type="INT32"/-->
47
+ <!-- field name="output_int_register_3" type="INT32"/-->
48
+ <!-- field name="output_int_register_4" type="INT32"/-->
49
+ <!-- field name="output_int_register_5" type="INT32"/-->
50
+ <!-- field name="output_int_register_6" type="INT32"/-->
51
+ <!-- field name="output_int_register_7" type="INT32"/-->
52
+ <!-- field name="output_int_register_8" type="INT32"/-->
53
+ <!-- field name="output_int_register_9" type="INT32"/-->
54
+ <!-- field name="output_int_register_10" type="INT32"/-->
55
+ <!-- field name="output_int_register_11" type="INT32"/-->
56
+ <!-- field name="output_int_register_12" type="INT32"/-->
57
+ <!-- field name="output_int_register_13" type="INT32"/-->
58
+ <!-- field name="output_int_register_14" type="INT32"/-->
59
+ <!-- field name="output_int_register_15" type="INT32"/-->
60
+ <!-- field name="output_int_register_16" type="INT32"/-->
61
+ <!-- field name="output_int_register_17" type="INT32"/-->
62
+ <!-- field name="output_int_register_18" type="INT32"/-->
63
+ <!-- field name="output_int_register_19" type="INT32"/-->
64
+ <!-- field name="output_int_register_20" type="INT32"/-->
65
+ <!-- field name="output_int_register_21" type="INT32"/-->
66
+ <!-- field name="output_int_register_22" type="INT32"/-->
67
+ <!-- field name="output_int_register_23" type="INT32"/-->
68
+
69
+ <!-- field name="output_double_register_0" type="DOUBLE"/-->
70
+ <!-- field name="output_double_register_1" type="DOUBLE"/-->
71
+ <!-- field name="output_double_register_2" type="DOUBLE"/-->
72
+ <!-- field name="output_double_register_3" type="DOUBLE"/-->
73
+ <!-- field name="output_double_register_4" type="DOUBLE"/-->
74
+ <!-- field name="output_double_register_5" type="DOUBLE"/-->
75
+ <!-- field name="output_double_register_6" type="DOUBLE"/-->
76
+ <!-- field name="output_double_register_7" type="DOUBLE"/-->
77
+ <!-- field name="output_double_register_8" type="DOUBLE"/-->
78
+ <!-- field name="output_double_register_9" type="DOUBLE"/-->
79
+ <!-- field name="output_double_register_10" type="DOUBLE"/-->
80
+ <!-- field name="output_double_register_11" type="DOUBLE"/-->
81
+ <!-- field name="output_double_register_12" type="DOUBLE"/-->
82
+ <!-- field name="output_double_register_13" type="DOUBLE"/-->
83
+ <!-- field name="output_double_register_14" type="DOUBLE"/-->
84
+ <!-- field name="output_double_register_15" type="DOUBLE"/-->
85
+ <!-- field name="output_double_register_16" type="DOUBLE"/-->
86
+ <!-- field name="output_double_register_17" type="DOUBLE"/-->
87
+ <!-- field name="output_double_register_18" type="DOUBLE"/-->
88
+ <!-- field name="output_double_register_19" type="DOUBLE"/-->
89
+ <!-- field name="output_double_register_20" type="DOUBLE"/-->
90
+ <!-- field name="output_double_register_21" type="DOUBLE"/-->
91
+ <!-- field name="output_double_register_22" type="DOUBLE"/-->
92
+ <!-- field name="output_double_register_23" type="DOUBLE"/-->
93
+ </recipe>
94
+ </rtde_config>
@@ -1,6 +1,10 @@
1
1
  require 'daemonite'
2
2
  require 'opcua/server'
3
- require 'ur-sock'
3
+ if $dev
4
+ require_relative '../../ur-sock/lib/ur-sock'
5
+ else
6
+ require 'ur-sock'
7
+ end
4
8
  require 'net/ssh'
5
9
  require 'net/scp'
6
10
 
@@ -28,8 +32,8 @@ module URUA
28
32
  ### Loading config file
29
33
  conf = UR::XMLConfigFile.new opts['rtde_config']
30
34
  output_names, output_types = conf.get_recipe opts['rtde_config_recipe_base']
31
-
32
35
  opts['rtde'] = UR::Rtde.new(opts['ipadress']).connect
36
+
33
37
  ### Set Speed to very slow
34
38
  if opts['rtde_config_recipe_speed']
35
39
  speed_names, speed_types = conf.get_recipe opts['rtde_config_recipe_speed']
@@ -145,7 +149,7 @@ module URUA
145
149
  rt = opts['server'].types.add_object_type(:RobotType).tap { |r|
146
150
  r.add_variables :SerialNumber, :RobotModel
147
151
  r.add_object(:State, opts['server'].types.folder).tap{ |s|
148
- s.add_variables :CurrentProgram, :RobotMode, :RobotState, :JointMode, :SafetyMode, :ToolMode, :ProgramState, :SpeedScaling, :Remote
152
+ s.add_variables :CurrentProgram, :RobotMode, :RobotState, :JointMode, :SafetyMode, :ToolMode, :ProgramState, :SpeedScaling, :Remote, :OperationalMode
149
153
  s.add_variable_rw :Override
150
154
  }
151
155
  r.add_object(:SafetyBoard, opts['server'].types.folder).tap{ |r|
@@ -251,6 +255,7 @@ module URUA
251
255
  opts['ov'] = st.find(:Override)
252
256
  opts['ss'] = st.find(:SpeedScaling)
253
257
  opts['mo'] = st.find(:Remote)
258
+ opts['op'] = st.find(:OperationalMode)
254
259
 
255
260
  ### Axes
256
261
  axes = robot.manifest(:Axes, ax)
@@ -322,6 +327,7 @@ module URUA
322
327
  opts['rs'].value = opts['dash'].get_program_state
323
328
  # update remote control state from dashboard server
324
329
  opts['mo'].value = opts['dash'].is_in_remote_control
330
+ opts['op'].value = opts['dash'].get_operational_mode
325
331
  end
326
332
 
327
333
  if Time.now.to_i - 10 > opts['doit_progs']
@@ -0,0 +1,17 @@
1
+ ### OPC UA specific config
2
+ ### --------------------------------------------------------------------------
3
+ namespace: https://centurio.work/ur10evva
4
+
5
+ ### UR specific config
6
+ ### --------------------------------------------------------------------------
7
+ ipadress: 192.168.1.26
8
+ username: ur
9
+ password: easybot
10
+ url: /programs
11
+
12
+ ### UR simulation specific config
13
+ ### --------------------------------------------------------------------------
14
+ ### if no password, password has to entered when server is started
15
+ # ipadress: localhost
16
+ # username: myusername
17
+ # url: /home/myusername/somedirectory/ursim-current/programs.UR10
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/ruby
2
+ $dev = true
3
+ require_relative '../lib/urua'
4
+ ### add stuff if necessary
5
+
6
+ Thread.abort_on_exception=true
7
+
8
+ Daemonite.new do |opts|
9
+ ### add or replace building blocks if necessary
10
+ use URUA::implementation_startup(opts)
11
+ use URUA::implementation_run
12
+ use URUA::implementation_exit
13
+ end.loop!
data/tools/urua CHANGED
@@ -43,7 +43,7 @@ if command == 'scaffold'
43
43
  dir = File.join(__dir__,'..','server')
44
44
  FileUtils.cp(File.join(dir,'uruaserver.rb'),'.')
45
45
  Dir[File.join(dir,'*')].each do |f|
46
- unless File.exist?(File.join(__dir__,File.basename(f)))
46
+ unless File.exist?(File.join(__dir__,File.basename(f))) || f =~ /\/dev/
47
47
  FileUtils.cp(f,'.')
48
48
  end
49
49
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: urua
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.99.4444
4
+ version: 0.99.5002
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Pauker
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: tools
11
11
  cert_chain: []
12
- date: 2020-05-30 00:00:00.000000000 Z
12
+ date: 2020-07-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: opcua
@@ -29,18 +29,46 @@ dependencies:
29
29
  name: ur-sock
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: '1.0'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: '1.0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: daemonite
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
33
47
  - !ruby/object:Gem::Version
34
- version: '0.4444'
48
+ version: '0.5'
35
49
  type: :runtime
36
50
  prerelease: false
37
51
  version_requirements: !ruby/object:Gem::Requirement
38
52
  requirements:
39
- - - ">="
53
+ - - "~>"
54
+ - !ruby/object:Gem::Version
55
+ version: '0.5'
56
+ - !ruby/object:Gem::Dependency
57
+ name: net-scp
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '3.0'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
40
68
  - !ruby/object:Gem::Version
41
- version: '0.4444'
42
- description: see https://github.com/fpauker/urua
43
- email: juergen.mangler@gmail.com
69
+ version: '3.0'
70
+ description: OPC UA Server for Universal Robots. See https://github.com/fpauker/urua
71
+ email: florian.pauker@gmail.com
44
72
  executables:
45
73
  - urua
46
74
  extensions: []
@@ -51,11 +79,14 @@ files:
51
79
  - LICENSE
52
80
  - README.md
53
81
  - Rakefile
82
+ - lib/rtde.conf.xml
54
83
  - lib/urua.rb
84
+ - server/devserver.conf
85
+ - server/devserver.rb
55
86
  - server/uruaserver.conf
56
87
  - server/uruaserver.rb
57
88
  - tools/urua
58
- homepage: http://cpee.org/
89
+ homepage: https://github.com/fpauker/urua
59
90
  licenses:
60
91
  - GPL-3.0
61
92
  metadata: {}
@@ -77,5 +108,5 @@ requirements: []
77
108
  rubygems_version: 3.1.2
78
109
  signing_key:
79
110
  specification_version: 4
80
- summary: Universal Robot (UR) OPC UA Server.
111
+ summary: OPC UA Server for Universal Robots
81
112
  test_files: []