Use Case
For the interaction with different objects, knowledge is required about their shape. Automation increasingly employs computational paradigms for interacting with objects. Computational paradigms depend on formal representations of required knowledge. Therefore, the goal of this experiment is to validate instances of the formal knowledge representation schemes
- Fuzzy Sets and
- Ontologies.
Fuzzy Sets can be used to approximately model inexact shapes. Ontologies can be used as a comittment on how to describe shapes exactly.
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 OmiArm1 can be called via a REST service. The basic address of the web services is:
http://austria.omilab.org/omirob/dobot1/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.
- /positionXYZ: By sending a GET to this resource, the robotarm will return his current coordinates. As response a JSON String will be sent.
- /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:
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.