A Wrapper Component-Based Methodology for Integrating Distributed Robotics Systems
Guedea Elizalde, Federico
MetadataShow full item record
Building an intelligent robot system has been an extensive research area. There are many advances in components needed to construct a robotic system, such as vision systems, sensory systems, and planning systems among others. Integration of these components represents a big challenge for robot designers, because each component comes from different vendors and they run with different interfaces or under different operating systems. This will be even more difficult if the overall system development has to deal with environmental uncertainties or changing conditions. In these cases, new tools and equipments are necessary to adapt the initial configuration to the new changing requirements. Each added component increases the complexity of integration due to the interconnection required with the previous components. This thesis research presents a novel approach to solve the integration problem using the concepts of distributed framework and distributed computing systems. We named this methodology DWC (Divide-Wrap-Connect). This methodology is based on the mechanisms used by standard middleware software to provide transparency and porta- bility among different operating systems and languages. The idea is to define software modules named Wrapper Components, which are object-oriented modules that create an abstract interface for a specific class of hardware or software components. These modules are the components of a bigger system. Basic steps in this methodology are: a) Divide, b) Wrap and c) Connect. The creation of Wrapper Components is the core activity of the second step (b) but its design is af- fected by the first and third step of this methodology. We provide some basic definitions in order to clarify the scope of different design alternatives. Furthermore, we present how using standard mechanisms from distributed computing such as Event services and Naming services, the third step (c) is improved. We tested our approach by solving an experimental classical AI problem, block-world problem. The intelligent functions are object recognition, environment recognition, planning, tracking capabilities, tasks control and robot arm control. These functions were developed into several components and a coordinator module. This coordinator modules interacts with the user and the other components in order to solve the block- world problem. The construction of the system was done in an incremental way showing the benefits of this methodology.