omiarm2 - OMiLab Robotic Arm 2

Keywords:

Use Case

Processes in systems of interacting components require more knowledge than the knowledge of each individual component. The trend in computer science suggests that more and more processes will be goverened by computational paradigms in the future. Because computational paradigms rely on formailzed knowledge, the goal for this experiment is to validate instances of 

  • Production Systems and
  • Process Models.

Production Systems contail knowledge that is formalized into a set of rules and mechanisms to achieve goals. Process models focus on prescriptive, descriptive and explanatory knowledge formaizations that often rely on domain-specific modeling methods.

Experiment

The validation environment used provides an industrial grade robot arm with

  • 4 axis,
  • 500g payload
  • high position accuracy (0.2 mm).

The arm is controled by open source firmware and drivers. Integration in the OMiLab Portal is archieved by consolidating REST interfaces in a microservice running on a Raspberry 3. The execution environment is monitored by webcams providing three livestreams via websockets.

 

The OmiArm2 can be called via a REST service. The basic address of the web services is:

     http://austria.omilab.org/omirob/dobot2/rest

The most important functions of the robotarm can be reached through the following resources:

  • /positionXYZ: By sending a PUT to this resource, the robotarm will move to the transmitted coordinates. The coordinates must be formatted as JSON.

  •  
  • /reset: By sending a POST to this resource, the robot arm will calibrate itself. This will be necessary, if the movement of the robot arm was blocked and the internal coordinates of the robot arm don’t correspond with the real coordinates of the arm.  
     
  • /grabOn: By sending a POST to this resource, the pump and valve will be triggered. Therefore, a Boolean must be transmitted as a parameter. If it is TRUE, then an item can be grabbed and if the Boolean is FALSE, the item will be dropped.

 

The header of the calls must contain an authorization token or the robot arm will not work. The details to the tokens can be found on the main page of this project.

For more detailed information on the call of the resources and other functions, the source code can be found under the following link:

     https://gitlab.dke.univie.ac.at/OMiROB/RobotArm/blob/master/src/main/java/org/omilab/omirob/Service.java

 

The following screenshots show a PUT call to /positionXYZ via Postman. The call was split in two screenshots, so that the header and the data can be shown.

 

Results