9 research outputs found

    A component-oriented programming framework for developing embedded mobile robot software using PECOS model

    Get PDF
    A practical framework for component-based software engineering of embedded real-time systems, particularly for autonomous mobile robot embedded software development using PECOS component model is proposed The main features of this framework are: (1) use graphical representation for components definition and composition; (2) target C language for optimal code generation with small micro-controller; and (3) does not requires run-time support except for real-time kernel. Real-time implementation indicates that, the PECOS component model together with the proposed framework is suitable for resource constrained embedded systems

    Build and Interface Internet Mobile Robot using Raspberry Pi and Arduino

    Get PDF
    In the recent years, the increasing use of wireless applications and the demand for a system that could easily connect devices for transfer of data over a long distance without cables became worldwide. This paper presents the Build and interface of a real time wheeled mobile robot installed above it an arm and a camera. Software system can be built in three various programming languages and   controlled via the internet using webpage protected with a username and password to make sure it cannot be hacked. The webpage is designed to control the mobile robot remotely through the internet by any web browser such as Mozilla Firefox. Camera is mounted on the animated base in two axes in order to have better visibility.The designed mobile robot can be remotely operated from everywhere around the world without being near the robot. It can be controlled by using any device, whether a laptop, a mobile or a tablet. It can move forward, reverse, turn right and left for a specific distance according to the controller specification. The mobile robot system is used to transfer foreign objects and access to areas that are unable to be accessed by humans. It is also used for purposes of monitoring to fit a camera. The development of this robot is based on Arduino Mega platform which will be interfaced with the microcomputer that is placed on the robot running as a server. After completing the design and testing the robot, time delay is calculated in different cases (LAN and WAN) network. Finally, this prototype of the robot is expected to solve many problems such as placing or picking objects that are far away from the user, picking and placing hazardous objects in the fastest and easiest way. Keywords: Internet Mobile Robot;Raspberry Pi ; Arduino

    MARIE, une architecture d'intégration de composants logiciels hétérogènes pour le développement de systèmes décisionnels en robotique mobile et autonome

    Get PDF
    ""Aujourd'hui, la création de systèmes décisionnels en robotique mobile et autonome requiert l'intégration de nombreuses capacités motrices, sensorielles et cognitives au sein de chacun des projets réalisés. Ces capacités sont généralement issues de différents domaines de recherche, comme par exemple la navigation autonome, la planification, les interactions humain-machine, la localisation, la vision artificielle et le contrôle d'actionneurs, pour ne nommer que ceux-ci. D'un point de vue logiciel, deux défis de taille sont issus de ce besoin d'intégration : 1) la complexification de l'analyse des requis pour choisir, construire et interconnecter les différents composants logiciels qui permettent la réalisation de ces capacités, et 2) l'interconnectivité limitée des composants logiciels disponibles dans la communauté robotique causée par le fait qu'ils sont typiquement hétérogènes, c'est-à-dire qu'ils ne sont pas complètement compatibles ou interopérables. Cette thèse propose une solution principalement au défi d'interconnectivité limité en se basant sur la création d'une architecture d'intégration logicielle appelée MARIE, qui permet d'intégrer des composants logiciels hétérogènes utilisant une approche de prototypage rapide pour le développement de systèmes décisionnels en robotique mobile et autonome. Grâce à cette approche, la réalisation de systèmes décisionnels complets pourrait se faire plus tôt dans le cycle de développement, et ainsi favoriser l'analyse des requis nécessaires à l'intégration de chacun des composants logiciels du système. Les résultats montrent que grâce au développement de l'architecture d'intégration logicielle MARIE, plus de 15 composants logiciels provenant de sources indépendantes ont été intégrées au sein de plusieurs applications robotiques (réelles et simulées), afin de réaliser leurs systèmes décisionnels respectifs. L'adaptation des composants déjà existants dans la communauté robotique a permis notamment d'éviter la tâche souvent ardue de réécrire le code nécessaire pour chacun des composants dans un seul et même environnement de développement. Les résultats montrent également que grâce à une méthodologie d'évaluation logicielle appelée ARID, nous avons pu recueillir de l'information utile et pertinente à propos des risques associés à l'utilisation de MARIE pour réaliser une application choisie, sans devoir construire une application de test et sans avoir recours à de la documentation complète de l'architecture logicielle ni celle de l'application à créer. Cette méthode s'inscrit ainsi dans la liste des outils qui permettent de faciliter l'analyse des requis d'intégration reliés à la création de systèmes décisionnels en robotique mobile et autonome."

    Formal mission specification and execution mechanisms for unmanned aircraft systems

    Get PDF
    Unmanned Aircraft Systems (UAS) are rapidly gaining attention due to the increasing potential of their applications in the civil domain. UAS can provide great value performing environmental applications, during emergency situations, as monitoring and surveillance tools, and operating as communication relays among other uses. In general, they are specially well suited for the so-called D-cube operations (Dirty, Dull or Dangerous).Most current commercial solutions, if not remotely piloted, rely on waypoint based flight control systems for their navigation and are unable to coordinate UAS flight with payload operation. Therefore, automation capabilities and the ability for the system to operate in an autonomous manner are very limited. Some motivators that turn autonomy into an important requirement include limited bandwidth, limits on long-term attention spans of human operators, faster access to sensed data, which also results in better reaction times, as well as benefits derived from reducing operators workload and training requirements.Other important requirements we believe are key to the success of UAS in the civil domain are reconfigurability and cost-effectiveness. As a result, an affordable platform should be able to operate in different application scenarios with reduced human intervention.To increase capabilities of UAS and satisfy the aforementioned requirements, we propose adding flight plan and mission management layers on top of a commercial off-the-shelf flight control system. By doing so, a high level of autonomy can be achieved while taking advantage of available technologies and avoiding huge investments. Reconfiguration is made possible by separating flight and mission execution from its specification.The flight and mission management components presented in this thesis integrate into a wider hardware/software architecture being developed by the ICARUS research group.This architecture follows a service oriented approach where UAS subsystems are connected together through a common networking infrastructure. Components can be added and removed from the network in order to adapt the system to the target mission.The first contribution of this thesis consists, then, in a flight specification language that enables the description of the flight plan in terms of legs. Legs provide a higher level of abstraction compared to plain waypoints since they not only specify a destination but also the trajectory that should be followed to reach it. This leg concept is extended with additional constructs that enable specification of alternative routes, repetition and generation of complex trajectories from a reduced number of parameters.A Flight Plan Manager (FPM) service has been developed that is responsible for the execution of the flight plan. Since the underlying flight control system is still waypoint based, additional intermediate waypoints are automatically generated to adjust the flight to the desired trajectory.In order to coordinate UAS flight and payload operation a Mission Manager (MMa) service has also been developed. The MMa is able to adapt payload operation according to the current flight phase, but it can also act on the FPM and make modifications on the flight plan for a better adaption to the mission needs. To specify UAS behavior, instead of designing a new language, we propose using an in-development standard for the specification of state machines called State Chart XML.Finally, validation of the proposed specification and execution elements is carried out with two example missions executed in a simulation environment. The first mission mimics the procedures required for inspecting navigation aids and shows the UAS performance in a complex flight scenario. In this mission only the FPM is involved. The second example combines operation of the FPM with the MMa. In this case the mission consists in the detection of hotspots on a given area after a hypothetical wildfire. This second simulation shows how the MMa is able to modify the flight plan in order to adapt the trajectory to the mission needs. In particular, an eight pattern is flown over each of the dynamically detected potential hot spots

    Interaktive Verhaltenssteuerung für Robot Companions

    Get PDF
    Kleinehagenbrock M. Interaktive Verhaltenssteuerung für Robot Companions. Bielefeld (Germany): Bielefeld University; 2004.Das Bestreben in der Robotikforschung, Roboter zu entwickeln, die dem Menschen gewisse Dienste erweisen, ist nach wie vor ungebrochen. Dabei konzentriert sich die aktuelle Entwicklung zunehmend auf den Privatgebrauch: Es ist das Ziel, persönliche Roboter zu entwickeln, die in Zukunft mit Menschen, einem Kameraden ähnlich, das Zuhause teilen können. Damit Menschen geneigt sind, sich einen solchen Robot Companion zuzulegen, muss er nützlich und einfach zugänglich sein. Somit sind einerseits Fähigkeiten, wie z.B. "Tisch abräumen" und "Blumen gießen", zu realisieren. Andererseits sind die wenigsten Menschen Experten für Robotik. Daher sollte der Roboter intuitiv bedienbar sein, so dass ein natürlicher Umgang zwischen Mensch und Robot Companion entsteht. Folglich muss der Roboter Dialoge in natürlicher Sprache führen können und Zeigegesten erkennen. Da solche Interaktionen in Privatwohnungen stattfinden, kann der Roboter weder die Umgebung noch alle dort denkbaren Gegenstände im Voraus kennen. Somit muss er dieses Wissen erlernen, um es in weiteren Interaktionen nutzen zu können. Um diese Herausforderungen zu lösen, war es ein Ziel dieser Arbeit, eine Software-Architektur für Robot Companions zu entwickeln. Das Konzept der Architektur sollte möglichst flexibel und erweiterbar sein, um diverse Interaktionsfähigkeiten integrieren zu können. Als weiteres Ziel sollte die Basis zur Interaktion mit Menschen geschaffen werden. Dazu wurde ein neuartiges multimodales Personen-Tracking entwickelt, das mit weiteren Interaktionsmodulen in der realisierten Architektur zu integrieren war. Das entwickelte Personen-Tracking ist multimodal, da es Daten von drei verschiedenen Sensorsystemen verarbeitet, um vor dem Roboter anwesende Personen robust zu verfolgen. Zur Sensordatenfusion wurde das "Multimodale Anchoring" entwickelt. Dieser neuartige Ansatz erlaubt es, gleichzeitig mehrere Personen anhand ihrer Gesichter, Oberkörper, Stimmen und Beine zu verfolgen, und sie auch voneinander zu unterscheiden. Somit kann eine Person bevorzugt betrachtet werden, indem die Sensoren auf sie gerichtet werden. Durch zugehörige Experimente wird die Leistungsfähigkeit des multimodalen Verfahrens belegt. Neben dem Personen-Tracking werden jeweils eine Aufmerksamkeitssteuerung für Personen und Objekte und eine Dialogsteuerung vorgestellt. Diese Module sind im Rahmen anderer Promotionsvorhaben entwickelt worden und es galt, sie ebenfalls im Gesamtsystem zu integrieren. Die Aufmerksamkeitssteuerung für Personen setzt auf dem Personen-Tracking auf und bestimmt den Interaktionspartner des Roboters. Zur sprachlichen Kommunikation mit dem Benutzer ist die Dialogsteuerung verantwortlich. Für das Erfassen von zu lernenden Gegenständen dient die Aufmerksamkeitssteuerung für Objekte, die sprachliche und gestische Informationen kombiniert. Zur Entwicklung der Software-Architektur wurden Architekturen bestehender Robotersysteme untersucht und funktionale und strukturelle Anforderungen an einen Robot Companion formuliert. Das daraus entwickelte Architekturkonzept ist eine besonders flexible Drei-Ebenen-Architektur, die zur Koordination des Systems einen zentralen "Execution Supervisor" (ESV) besitzt und per XML kommuniziert. Der ESV empfängt von angebundenen Modulen Nachrichten, die Aktionen auslösen, wie z.B. das Weiterleiten von Daten an andere Module und das Rekonfigurieren des Systems. Dieses Konzept wurde schließlich für den Roboter BIRON umgesetzt. Dabei wurde der ESV so implementiert, dass er äußerst generisch ist: Um ihn zu modifizieren, muss nur eine Konfigurationsdatei angepasst werden, die ebenfalls in XML spezifiziert ist. Die Kommunikation basiert dabei auf dem "XML enabled Communication Framework" und ist somit äußerst transparent. Außerdem wurden Benutzerexperimente mit BIRON durchgeführt, wobei dessen Interaktionsfähigkeiten als recht natürlich eingestuft wurden. Da für eine flüssige Interaktion das System nicht zu langsam reagieren darf, wurden auch gewisse Zeitmessungen vorgenommen. Diese zeigen, dass der Zeitaufwand, der durch die Architektur verursacht wird, im Vergleich zu den Berechnungen der integrierten Module gering ist und somit eine flüssige Interaktion erlaubt. Das System wurde außerdem auf der IST 2004 in Den Haag präsentiert, wo zwei BIRONs an drei Tagen insgesamt 24 Stunden lang erfolgreich präsentiert wurden. Folglich bietet das präsentierte Architekturkonzept eine hervorragende Basis zur Entwicklung von Robot Companions. Durch die Integration der vorgestellten Modulen ergibt sich bereits ein grundlegendes System zur natürlichen Mensch-Roboter-Interaktion. Da es auf Erweiterbarkeit ausgelegt ist, können andere Funktionalitäten einfach hinzugefügt werden. Diese Generizität wird insbesondere durch XML ermöglicht. XML wird zur Konfiguration des ESV und zur Kommunikation mit den angebundenen Modulen verwendet. Nur so kann das bereits umfangreiche System auch in Zukunft noch umfangreich erweitert werden

    A component framework for autonomous mobile robots

    No full text
    The major problem of robotics research today is that there is a barrier to entry into robotics research. Robot system software is complex and a researcher that wishes to concentrate on one particular problem often needs to learn about details, dependencies and intricacies of the complete system. This is because a robot system needs several different modules that need to communicate and execute in parallel. Today there is not much controlled comparisons of algorithms and solutions for a given task, which is the standard scientific method of other sciences. There is also very little sharing between groups and projects, requiring code to be written from scratch over and over again. This thesis proposes a general framework for robotics. By examining successful systems and architectures of past and present, yields a number of key properties. Some of these are ease of use, modularity, portability and efficiency. Even though there is much consensus on that the hybrid deliberate/reactive is the best architectural model that the community has produced so far, a framework should not stipulate a specific architecture. Instead the framework should enable the building of different architectures. Such a scheme implies that the modules are seen as common peers and not divided into clients and servers or forced into a set layering. Using a standardized middleware such as CORBA, efficient communication can be carried out between different platforms and languages. Middleware also provides network transparency which is valuable in distributed systems. Component-based Software Engineering (CBSE) is an approach that could solve many of the aforementioned problems. It enforces modularity which helps to manage complexity. Components can be developed in isolation, since algorithms are encapsulated in components where only the interfaces need to be known by other users. A complete system can be created by assembling components from different sources. Comparisons and sharing can greatly benefit from CBSE. A component-based framework called ORCA has been implemented with the following characteristics. All communication is carried out be either of three communication patterns, query, send and push. Communication is done using CORBA, although most of the CORBA code is hidden for the developer and can in the future be replaced by other mechanisms. Objects are transported between components in the form of the CORBA valuetype. A component model is specified that among other things include support for a state-machine. This also handles initialization and sets up communication. Configuration is achieved by the presence of an XML-file per component. A hardware abstraction scheme is specified that basically route the communication patterns right down to the hardware level. The framework has been verified by the implementation of a number of working systems
    corecore