/urua

OPC UA server for universal robots

Primary LanguageRubyGNU General Public License v3.0GPL-3.0

URUA

A simple OPC UA server for Universal robots in ruby, which uses the ur-sock and opcua-smart library.

Getting Started

A simple ruby server, which uses the ur-sock and opcua-smart library.

Prerequisites & Intallation

For this server the OPC UA installation of the opcua-smart gem is required. Please follow the instructions at https://github.com/etm/opcua-smart and install the opcua gem.

Additionally you have to install the URUA gem with:

gem install urua

If you want to develop or extend the server, just use the following instruction

git clone https://github.com/fpauker/urua
git clone https://github.com/fpauker/ur-sock
git clone https://github.com/etm/opcua-smart

Just follow the install instructions of the 3 projects. After installing all packages do

cd urua/server

in this directory the devserver.rb and the devserver.config are located.

Starting the server

To start the server type in the following commands:

cd urua/server
./uruaserver.rb start

or

cd urua/server
./devserver.rb start 

to start the developing server.

Adress space

The server's adress space is shown in the pictures below.

Architecture Architecture Architecture Architecture

It offers several features combining 3 different interfaces of the Universal robot. It uses the

  • Primary Secondary Interface for direct execution of UR scripts
  • Dashboard server for orchestration functions e.g. starting/stopping a program
  • RTDE interface for getting the robot states

Contributing

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

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Florian Pauker - OPC UA Modelling -
  • Jürgen Mangler - Ruby Support -

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

License

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

Acknowledgments

  • This work has been funded by the FFG