Skip to content

Pro/opcua-device-skills

Repository files navigation

Hardware-Agnostic OPC UA Skill Model

Build Status

This repository contains the Model.xml files for a generic Hardware-Agnostic OPC UA Skill Model.

Further details on the Model.xml format can be found here: https://opcua.rocks/custom-information-models/

The model is based on the publication:

S. Profanter, A. Breitkreuz, M. Rickert, and A. Knoll, "A Hardware-Agnostic OPC UA Skill Model for Robot Manipulators and Tools," in Proceedings of the IEEE International Conference on Emerging Technologies And Factory Automation (ETFA), Zaragoza, Spain, Sep. 2019

The full-text PDF is available here: https://mediatum.ub.tum.de/1507596

Will this model be supported by the OPC Foundation?

There's currently an official VDMA and OPC Foundation joint working group for a skill concept which can be used inside OPC UA.

Service-Oriented Architectures and real-time Control (SOArc)

We as fortiss are involved in that joint working group with the goal to publish an easy-to-use skill model for any system components.

This repository is a first draft of a possible skill model, which acts as a basis for further improvement inside the working group.

Therefore we are happy for any feedback. Just create a new issue inside this repository, or contact me directly: https://www.fortiss.org/en/about-us/people/stefan-profanter/

How to use

The master branch only contains the *Model.xml files, not the compiled NodeSet2.xml files.

On every push to a branch, an automatic build is executed and the resultin model files are pushed back to the branch 'master-published'.

Have a look at the resulting files here: https://github.com/Pro/opcua-device-skills/tree/master-published/Published

If you like to manually build the files on your machine, follow these steps: (as executed by the automatic build in the .drone.yml file)

This build process is using a pre-built docker container based on the official UA-ModelCompiler source code. There's currently an open pull-request (OPCFoundation/UA-ModelCompiler#36) to add the necessary docker files to the official repository. In the meantime you can use my docker container: sailavid/ua-modelcompiler.

  1. Install docker on your machine
  2. Clone this repository
  3. cd opcua-device-skills
  4. Then run the docker container for fortiss_di:
    docker run \
    	  --mount type=bind,source=$(pwd),target=/model/src \
    	  --entrypoint "/app/PublishModel.sh" \
    	  sailavid/ua-modelcompiler \
    	   /model/src/fortiss_di/fortissDiModel fortiss_di /model/src/Published
  5. Then fortiss_robotics:
    docker run \
    	  --mount type=bind,source=$(pwd),target=/model/src \
    	  --entrypoint "/app/PublishModel.sh" \
    	  sailavid/ua-modelcompiler \
    	   /model/src/fortiss_robotics/fortissRoboticsModel fortiss_robotics /model/src/Published
  6. And kuka_iiwa:
    docker run \
    	  --mount type=bind,source=$(pwd),target=/model/src \
    	  --entrypoint "/app/PublishModel.sh" \
    	  sailavid/ua-modelcompiler \
    	   /model/src/kuka_iiwa/kukaIiwaModel kuka_iiwa /model/src/Published

This will create all the compiled NodeSet2.xml files inside the Published folder. With this command you can also compiler your own model files, just adapt the last line accordingly.

About

OPC UA Device-Independent Skill Model

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages