Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
…
4 pages
1 file
Developing software for controlling robotic systems is costly due to the complexity in- herent in these systems. There is a need for tools that permit a reduction in the program- ming effort, aiming at the generation of modular and robust applications, and promoting software reuse. The techniques which are of common use today in other areas are not adequate to deal with the complexity associated with these systems (1). This document presents CoolBOT, a component oriented framework for programming robotic systems, based on a port automata model (2) that fosters controllability and observability of software components. CoolBOT (3) (4) is a C++ component-oriented framework for programming robotic systems that allows designing systems in terms of composition and integration of soft- ware components. Each software component (5) is an independent execution unit which provides a given functionality, hidden behind an external interface specifying clearly which data it needs and which data i...
2004 2nd International IEEE Conference on 'Intelligent Systems'. Proceedings (IEEE Cat. No.04EX791), 2004
Developing software for controlling robotic systems is costly due to the complexity inherent in these systems. There is a need for tools that permit a reduction in the programming efforts, aiming at the generation of modular and robust applications, and promoting software reuse. The techniques which are of common use today in other areas are not adequate to deal with the complexity associated with these systems. In this work we present CoolBOT, a component oriented framework for programming robotic systems, based on the Port Automata model that fosters controllability and observability of software components. A simple demonstrator illustrates the benefits of using the proposed approach in the development of a robotic application.
Lecture Notes in Computer Science, 2002
This paper introduces at the specification level CoolBOT, a component-oriented programming framework for robotics designed to assist robotic system developers in obtaining more structured and reusable systems without imposing any specific architecture. Within this framework components are conceived as Port Automata (PA)[8] that interact through their ports and that can be composed to build up new components from existing ones. Components, no matter if they are atomic or compound, are internally modeled as Discrete Event Systems and controlled using the same state control graph. CoolBOT hides the programmer any aspects related to communications and provides standard mechanisms for different modes of data exchange between components, exception handling and support for distributed computing environments. * NOTE: The monitoring port is also transparently defined * by the software framework. */ basecommands to Door.basecommands, Corridor.basecommands, FreeWay.basecommands; headcommands to Door.headcommands, Corridor.headcommands, FreeWay.headcommands; }; internal mapping { /* * NOTE: The framewok establishes transparently internal * connections between control and monitoring ports of * each instance and the supervisor.
2004
Developing software for controlling robotic systems is costly due to the complexity inherent in these systems. There is a need for tools that permit a reduction in the programming efforts, aiming at the generation of modular and robust applications, and promoting software reuse. The techniques which are of common use today in other areas are not adequate to deal with the complexity associated with these systems. In this work we present CoolBOT, a component oriented framework for programming robotic systems, based on the Port Automata model that fosters controllability and observability of software components. A simple demonstrator outlines the bene ts of using the proposed approach in the development of a robotic application.
This paper describes a component-oriented programming framework for robotics, CoolBOT, which is actually under development at the University of Las Palmas de Gran Canaria (ULPGC). The framework has been designed to assist robotic system developers in building more structured and reusable systems. Components are the basic building blocks used in this framework, modeled as Port Automata, PA , that interact through their ports and that can be composed to build up new components from existing ones. Components, whether atomic or compound, are internally modeled as Discrete Event Systems and controlled using the same state control graph. CoolBOT hides any aspects related to communications and provides standard mechanisms for different modes of data exchange between components, exception handling and support for distributed computing environments.
Lecture Notes in Computer Science, 2010
The idea of component-based software engineering was proposed more that 40 years ago, yet only few robotics software frameworks follow these ideas. The main problem with robotics software usually is that it runs on a particular platform and transferring source code to another platform is crucial. In this paper, we present our software framework Fawkes which follows the component-based software design paradigm by featuring a clear component concept with well-defined communication interfaces. We deployed Fawkes on several different robot platforms ranging from service robots to biped soccer robots. Following the component concept with clearly defined communication interfaces shows great benefit when porting robot software from one robot to the other. Fawkes comes with a number of useful plugins for tasks like timing, logging, data visualization, software configuration, and even high-level decision making. These make it particularly easy to create and to debug productive code, shortening the typical development cycle for robot software.
The paper presents a methodology for the development of robot software controllers, based on actual software component approaches and robot control architectures. This methodology defines a process that guides developers from the analysis of a robot controller to its execution. A proposed generic software controller architecture, useful for analysis and integration, and a dedicated component-based language, focusing on modularity, reusability, scalability and upgradeability of controller architectures parts during design and implementation steps, are briefly presented.
2007
Applying software reuse to many Embedded Real-Time (ERT) systems poses significant challenges to industrial software processes due to the resource-constrained and real-time requirements of the systems. Autonomous Mobile Robot (AMR) system is a class of ERT systems, hence, inherits the challenge of applying software reuse in general ERT systems.
IEEE Robotics & Automation Magazine, 2009
This article is the first of a two-part series intended as an introduction to Component-based Software Engineering (CBSE) in Robotics.
2001
We will present an overview of the CLARAty architecture which aims at developing reusable software components for robotic systems. These components are to support autonomy software which plans and schedules robot activities. The CLARAty architecture modifies the conventional threelevel robotic architecture into a new two-layered design: the Functional Layer and the Decision Layer. The Functional Layer provides a representation of the system components and an implementation of their basic functionalities. The Decision Layer is the decision making engine that drives the Functional Layer. It globally reasons about the intended goals, system resources, and state of the system and its environment. The Functional Layer is composed of a set of interrelated object-oriented hierarchies consisting of active and passive objects that represent the different levels of system abstractions. In this paper, we present an overview of the design of the Functional Layer. The Functional Layer is decomposed into a set of reusable core components and a set of extended components that adapt the reusable set to different hardware implementations. The reusable components: (a) provide interface definitions and implementations of basic functionality, (b) provide local executive capabilities, (c) manage local resources, and (d) support state and resource queries by the Decision Layer.
2007
In this paper we present our software framework for robotic applications, jde-neoc. This is the second implementation of our cognitive behavior-based architecture JDE, and it is aimed to overcome some of the limitations observed in three years using the first one. jde-neoc uses schemas as the basic component of robot applications, which are combined in dynamic hierarchies to unfold the global behavior. Each schema is built separatedly into a plugin and dynamically linked to the framework when needed. It keeps its own graphical user interface. Some tools like a hierarchy oscilloscope and a 3D sensors-and-motors GUI have been created and added to the framework.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
Lecture Notes in Computer Science, 2005