1- # ` drt_ur_gui `
1+ # DRT Universal Robots GUI
2+
23` drt_ur_gui ` is a ROS 2 based user interface written in python that enables remote operation of Universal Robotics collaborative robotic arms.
3- - Intended to be used with UR Arms configured for Remote Control
4+ The key delivered features:
5+
46- Enables command of UR Arms with out Polyscope touchscreen pendant interaction
7+ - Intended to be used with UR Arms configured for Remote Control
58- Useful in operations where Polyscope interaction is difficult or unsafe
69
7-
10+ ![ alt text ] ( ./drt_ur_gui.png " DRT UR GUI ")
811
912## Installation
10- Installation of ` drt_ur_gui ` is similar to most ROS 2 packages.
13+
14+ This package can be installed in any normal ` colcon ` workspace:
15+
11161 ) Clone ` drt_ur_gui ` into your workspace ` src/ ` directory
12- 2 ) Use rosdep install ` drt_ur_gui ` 's dependencies
17+ 2 ) Use rosdep to install ` drt_ur_gui ` 's dependencies
13183 ) Build your workspace
19+
1420``` bash
1521cd src/
1622git clone git@js-er-code.jsc.nasa.gov:imetro/drt_ur_gui.git
@@ -19,24 +25,37 @@ cd ..
1925colcon build
2026```
2127
22- ## Use
23- On it's own ` drt_ur_gui ` is configured to command up to two URs at once using launch files (though it can be used to command more)
24- #### One arm use
25- - ` one_arm.launch.py ` is used to run a singular UR arm
26- - ` ros2 launch drt_ur_gui one_arm.launch.py `
27- - Configured by ` config/one_arm.yaml `
28- - YAML Configured Parameters:
29- - ` dashboard_client_name ` : name of the UR ` dashboard_client ` node, must match or UR communication will fail
30- - ` program ` : sets the default program to be loaded to the UR when ` /dashboard_client/load_program ` is selected
31- - ` window.name ` : sets the name that appears in the bar at the top of the UI window
32- - ` window.stylesheet ` : Qt format stylesheet, enables users to customize the look and feel of the UI
33- - ` logo_file_name ` : the filepath to the logo to be displayed in the UI window
34- #### Two arm use
28+ ## Usage
29+
30+ On its own ` drt_ur_gui ` is configured to command up to two URs at once using launch files.
31+ However, more configuration files can be used to command any number of active UR arms.
32+
33+ ### One arm use
34+
35+ ``` bash
36+ # To connect to a hardware UR dashboard client
37+ ros2 launch drt_ur_gui one_arm.launch.py
38+
39+ # To launch a simulated client for development and testing
40+ ros2 launch drt_ur_gui one_arm.launch.py mock_dashboard:=true
41+ ```
42+
43+ - ` one_arm.launch.py ` is used to run a singular UR arm using the settings in ` config/one_arm.yaml ` :
44+ - ` dashboard_client_name ` : name of the UR ` dashboard_client ` node, must match or UR communication will fail
45+ - ` program ` : sets the default program to be loaded to the UR when ` /dashboard_client/load_program ` is selected
46+ - ` window.name ` : sets the name that appears in the bar at the top of the UI window
47+ - ` window.stylesheet ` : Qt format stylesheet, enables users to customize the look and feel of the UI
48+ - ` logo_file_name ` : the filepath to the logo to be displayed in the UI window
49+
50+ ### Dual arm use
51+
3552- ` two_arm.launch.py ` is used to run two URs at once, typically in a "humanoid" left-right configuration
3653 - ` ros2 launch drt_ur_gui two_arm.launch.py `
3754 - Configured by ` config/two_arm_left.yaml ` and ` config/two_arm_right.yaml `
3855 - Parameters exposed in the two arm configuration files are the same as the one arm configuration parameters explained above
39- #### * N* arm use and use with other robots
56+
57+ ### * N* arm use and use with other robots
58+
4059- ` drt_ur_gui ` can command any number of UR arms in (probably) any robot setup
4160 - Every ` drt_ur_gui ` backend node communicates with an arm's respective ` dashboard_client ` node
4261 - The UI can be run from the command line without configuration files as long as the correct ` dashboard_client ` node name is provided as a parameter
0 commit comments