Coordinación de manipuladores en entornos dinámicosmodelo de programación para laboratorios virtuales y remotos
- Ruiz Saez, Almudena
- Humberto Martínez Barberá Director/a
- Francisco Esquembre Director/a
Universidad de defensa: Universidad de Murcia
Fecha de defensa: 14 de julio de 2017
- Vicente Matellán Olivera Presidente/a
- David Herrero Pérez Secretario
- Carlos A. Jara Bravo Vocal
Tipo: Tesis
Resumen
ABSTRACT Robotics has become an indispensable tool in different areas such as industry, engineering, education or research. In each of these areas, the coordination of different robots both in static and dynamic environments is one of the main questions to be analyzed. The coordination of robots is much more than just avoiding possible collisions among them. Users desire a perfect synchronization among the robots so that they can work as a team and complete tasks that a single robot would be unable to do by itself. Evidently, the use of multiple robots that share the same workspace could improve the productivity and increase the versatility of the applications to more difficult tasks. However, when more than one robot is moving in a common workspace, each of them becomes an obstacle for the others. A good way to understand and study the complex behavior of these robots is to create virtual and remote laboratories. One of the main problems the user faces when designing these robotic simulations is that each robot has its own programming language. This fact, together with the own peculiarities of each robot, makes difficult the implementation of common operations and reduces the possibility to reuse the code. In this thesis, a new Java library has been modeled, conceptualized and designed, for the coordination of manipulator robots in both statics and dynamics environments. This library sets a HAL (hardware abstraction layer) and facilitates an API (application programming interface) that includes all basic operations required when working with manipulator robots: positioning, path planning, definition of restrictions, collision detection, 3D visualization and communication with the real robots. Furthermore, this library offers a super class RoboticsLab that allows to easily coordinate the movements of all the elements of the robotic lab and so to avoid the collisions that might take place. This API has been implemented for two particular manipulator robots: the TX60L from Stäubli and the Scara from Omron. At the same time, it has integrated other elements that will be essential at the time of configuring the robotic lab; for example, a conveyor belt. This list of elements can be easily extended to other robots or robotic elements, since such implementations have been done in a transparent way for the user and can be easily reused. Our library is user friendly, open source, and compatible with the majority of operating systems (all that support Java). All these features allow Java programmers to create virtual and remote labs with ease at a high level, in a simple and reusable way. Furthermore, this library has been embedded in Easy Java Simulations (EJS) authoring tool. Such implementation has taken place by defining new model elements for EJS that incorporate all the operations and properties of the new API. The main advantage of such implementation is that it allows Java programmers and non-programmers to create virtual and remote robotic labs without the need of having high skills of either Java or Robotics. In conclusion, the new library presented in this thesis is a very useful tool in various fields: in education, since it allows the learning of Robotic concepts in a simple way; in the research field, because it allows researchers to represent complex robotic situations for their study; in engineering, practice as basis for the creation of prototypes of industrial plants that are composed of manipulator robots.