Project

ur-sock

0.0
No release in over 3 years
Low commit activity in last 3 years
see https://github.com/fpauker/ur-sock
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 0.3.6, ~> 0
 Project Readme

ur-sock

Universal robot interface implementation in ruby. This library provides functions using different interfaces of the universal robot. Primary this was designed for the new e-series.

Requirements

This software requires URControl version newer than 5.1. Latest supported URControl vresion: 5.5

Getting Started

This library uses 3 interfaces of the universal robot:

  • RTDE Interface (port 30002)
  • Primary/Secondary Interface (port 30003)
  • Dashboard Interface (port 29999)

Prerequisites & Intallation

To run the server we need the following packages:

#installation of the necessary packages
gem install xml-smart

#installation of the gem
gem install ur-sock

Interfaces

RTDE

The Real-Time Data Exchange (RTDE) interface can be configured with an XML file.

  • Output: robot-, joint-, tool- and safety status, analog and digital I/O's and general purpose output registers
  • Input: digital and analog outputs and general purpose input registers

The complete documentation of all available in- and outputs can be found on: https://www.universal-robots.com/how-tos-and-faqs/how-to/ur-how-tos/real-time-data-exchange-rtde-guide-22229/

  • Loading Config file
#Loading the config file
conf = UR::XMLConfigFile.new "test.conf.xml"

#configure output
output_names, output_types = conf.get_recipe('out')
### Set Speed to very slow
# speed_names, speed_types = conf.get_recipe('speed')
# speed = con.send_input_setup(speed_names, speed_types)
# speed["speed_slider_mask"] = 1
# speed["speed_slider_fraction"] = 0
# con.send(speed)

#connecting to the RTDE interfaces on port 30002
rtde = UR::Rtde.new ('192.168.1.2').connect

Examples

Loading Config for RTDE interface

Connecting to robot

#connecting to the proimary/secondary interface (psi) on port 30003
psi = UR::Transfer.new('192.168.1.2').connect

#connecting to the dashboard interface on port 29999
dash = UR::Dash.new('192.168.1.2').connect

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Authors

  • Florian Pauker
  • Jürgen Mangler

See also the list of contributors who participated in this project.

License

This project is licensed under the LGPL3 License - see the LICENSE.md file for details