Communication Avec Un Robot Lego Mindstorms

Total Page:16

File Type:pdf, Size:1020Kb

Communication Avec Un Robot Lego Mindstorms Communication avec un Robot Lego Mindstorms Binome : Encadrants : DANELON Céline Jérôme ERMONT LAFFITTE Julien Frédéric BONIOL Projet Long - DANELON Céline LAFFITTE Julien Remerciements Nous tenons à remercier l’ensemble des personnes qui nous ont aidé dans nos recherches : Pour le protocole µIP : Adam Dunkels. Pour le protocole LNP : Jérôme Ermont et Emmanuel Chaput qui ont grandement facilité notre compréhension du code. Pour les questions concernant les Lego Mindstorms : le forum Freelug et plus particulièrement Khan et Philo. D’une manière générale toutes les personnes qui ont répondu à nos mails : Ecole des Mines de Nantes, Club de Robotique de l’INSA. Frédérique Coudret, pour sa disponibilité et ses conseils concernant l’environnement LINUX. Nos encadrants : Jérôme Ermont et Frédéric Boniol pour leur disponibilité et leurs conseils. 2 Projet Long - DANELON Céline LAFFITTE Julien Sommaire 1. INTRODUCTION............................................................................................................ 5 2. QUE SONT LES ROBOTS LEGO MINDSTORMS ? [LEGO01-02]........................ 5 2.1. HISTORIQUE ................................................................................................................ 5 2.2. ORGANISATION DE LA BRIQUE RCX............................................................................ 5 2.3. COMMUNICATION INFRA ROUGE (IR) SUR LA BRIQUE RCX DE BASE [IR 01] ............. 6 2.3.1. Caractéristiques ................................................................................................. 6 2.3.2. Le protocole........................................................................................................ 6 2.3.2.1. Introduction ................................................................................................ 6 2.3.2.2. Commande ................................................................................................. 7 2.3.2.3. Paquet......................................................................................................... 7 2.3.2.4. RS232 [IR 01] ............................................................................................ 8 2.3.2.5. Transmission .............................................................................................. 9 2.3.3. Les limites d’une communication IR .................................................................. 9 2.4. LA PROGRAMMATION RCX ......................................................................................... 9 3. BRICKOS [BRICK01-02] ............................................................................................. 10 3.1. PRESENTATION.......................................................................................................... 10 3.2. LE NOYAU BRICKOS.................................................................................................. 10 3.3. GESTIONNAIRE DE PROCESSUS .................................................................................. 11 3.4. DESCRIPTEUR DE PROCESSUS .................................................................................... 11 3.5. ETATS ET TRANSITIONS D’UN PROCESSUS.................................................................. 11 3.6. L’ORDONNANCEUR BRICKOS.................................................................................... 12 3.7. GESTION MEMOIRE .................................................................................................... 13 3.8. LES SEMAPHORES ...................................................................................................... 13 3.9. BRCIKOS ET LE TEMPS REEL ..................................................................................... 13 4. LNP : LEGOS NETWORK PROTOCOL [LNP01-03].............................................. 14 4.1. PRESENTATION.......................................................................................................... 14 4.2. LA PILE DE COMMUNICATION .................................................................................... 14 4.2.1. Pré-requis......................................................................................................... 14 4.2.2. Du point de vue de l’ordinateur ....................................................................... 14 4.2.3. Du point de vue du RCX................................................................................... 15 4.2.4. Schémas récapitulatifs...................................................................................... 15 4.2.4.1. Les services LNP...................................................................................... 15 4.2.4.2. Organisation générale............................................................................... 16 4.3. LES MESSAGES LNP .................................................................................................. 16 4.4. CONSTRUCTION DES ADRESSES ................................................................................. 17 4.5. ATTRIBUTION DES ADRESSES..................................................................................... 18 4.6. LA DETECTION DE COLLISION .................................................................................... 18 4.7. LE DEMON LNPD [LNP 01] ...................................................................................... 18 5. µIP [UIP01] .....................................................................................................................19 5.1. CARACTERISTIQUES .................................................................................................. 19 5.2. GESTION MEMOIRE .................................................................................................... 20 5.3. API ........................................................................................................................... 20 3 Projet Long - DANELON Céline LAFFITTE Julien 5.4. IMPLANTATION DE µIP.............................................................................................. 20 5.4.1. La boucle de contrôle principale ..................................................................... 21 5.4.2. Internet Protocol .............................................................................................. 21 5.4.2.1. Fragmentation IP...................................................................................... 21 5.4.2.2. Broadcast et multicast .............................................................................. 22 5.4.3. ICMP : Internet Control Message Protocol..................................................... 22 5.4.4. TCP : Transmission Control Protocol ............................................................. 22 5.4.5. UDP : User Datagram protocol...................................................................... 22 5.5. SERVICES OFFERTS PAR LNP A µIP........................................................................... 22 5.5.1. Pré-requis......................................................................................................... 22 5.5.2. Intégration dans le kernel de BrickOS ............................................................. 23 5.5.3. TCP/IP et le démon LNPd................................................................................ 23 6. CONSEILS D’INSTALLATION [HOWTO 01] ......................................................... 24 6.1. CONSTRUCTION DU CROSS COMPILER........................................................................ 24 6.1.1. Binutils ............................................................................................................. 24 6.1.2. Installation du GCC Cross Compiler............................................................... 24 6.2. BRICKOS................................................................................................................... 25 6.3. POUR TESTER L’INSTALLATION ................................................................................. 26 6.3.1. Télécharger le firmware................................................................................... 26 6.3.2. Lancer le programme de Démo........................................................................ 26 6.4. CHARGEMENT DE µIP................................................................................................ 27 7. RESULTATS OBTENUS.............................................................................................. 27 8. CONCLUSION............................................................................................................... 28 4 Projet Long - DANELON Céline LAFFITTE Julien 1. Introduction Ce projet présente une étude des robots Lego Mindstorms, petits calculateurs très prisés dans les laboratoires de recherche aussi bien pour faire du temps réel que de l’intelligence artificielle. Notre but était d’analyser la capacité de communication des ces robots afin de modéliser un système temps réel de base. La principale difficulté consistait à comprendre comment cette communication était mise en œuvre et à l’intégrer sur le robot. Dans un premier temps, nous nous sommes intéressés à BrickOS, système d’exploitation dédié à la gestion de la communication sur les mindstroms et à l’utilisation maximale de leurs capacités calculatoires. En complément de celui-ci a été développé un protocole spécifique pour la communication infra rouge entre un PC et un ou plusieurs robots, le protocole LNP. Ensuite, nous nous sommes interrogés sur les possibilités de mise en place d’une pile IP réduite. Pour cela nous avons étudié le protocole µIP, ses
Recommended publications
  • Notions of Minimalism and the Design of Interactive Systems
    Where »less« is »more« – notions of minimalism and the design of interactive systems: A constructive analysis of products & processes of human-computer-interaction design from a minimalist standpoint Dissertation zur Erlangung des Doktorgrades an der MIN-Fakultät Department Informatik der Universität Hamburg vorgelegt von Hartmut Obendorf Hamburg 2007 Genehmigt von der MIN-Fakultät Department Informatik der Universität Hamburg auf Antrag von Prof. Dr. Horst Oberquelle Erstgutachter(in)/Doktorvater Prof. Dr. Horst Oberquelle Zweitgutachter(in) Hamburg, den _______________ Datum der Disputation 4.4.2007 Prof. Dr. ____________________________ Leiter Department Informatik (Prof. Dr. N. Ritter) OVERVIEW 1 Designing for an Age of Complexity 11 Computing has added complexity to our lives. The search for machine beauty motivates the transfer of the notion of minimalism from art and music to the design of interactive systems, trying to explain simplicity, and to differentiate paths of reduction. For a concise example, four notions of minimalism are presented and discussed. 2 In Search of ‚Minimalism‘ – Roving in art history, music and elsewhere 21 Examples of works in art, music and literature that were collectively described with the label of Minimalism by contemporary criticism and art history are revisited. This chapter follows a historical rather than a conceptual order and aims not at a single definition of Minimalism, but instead tries to illustrate both the breadth of concepts underlying works characterized as minimal, and the recurrence of attributes of minimal art in different disciplines. 3 A Role for Minimalism in the Use-Centered Design of Interactive Systems 61 Based on these shared aspects of minimalism, four principles, namely functional, structural, constructional and compositional minimalism, are introduced.
    [Show full text]
  • Escuela Politécnica Nacional
    ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA CONSTRUCCIÓN Y PROGRAMACIÓN DE UN GRUPO DE ROBOTS MÓVILES SOBRE LA BASE DEL PRODUCTO LEGO MINDSTORMS NXT PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN ELECTRÓNICA Y CONTROL MEDARDO ÁNGEL SILVA AMORES [email protected] DIRECTORA: Ing. ANA RODAS [email protected] Quito, julio de 2011 i DECLARACIÓN Yo, Medardo Ángel Silva Amores, declaro bajo juramento que el trabajo aquí descrito es de mi autoría; que no ha sido previamente presentado para ningún grado o calificación profesional; y, que he consultado las referencias bibliográficas que se incluyen en este documento. A través de la presente declaración cedo mis derechos de propiedad intelectual correspondientes a este trabajo, a la Escuela Politécnica Nacional, según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y por la normatividad institucional vigente. _______________________ Medardo Ángel Silva Amores ii CERTIFICACIÓN Certifico que el presente trabajo fue desarrollado por Medardo Ángel Silva Amores, bajo mi supervisión. _________________________ Ing. Ana Rodas B. DIRECTORA DEL PROYECTO iii AGRADECIMIENTO Mi profundo agradecimiento a la Ing. Ana Rodas, cuya ayuda y estímulo ha sido determinante para facilitar la terminación de este tan esperado proyecto. iv DEDICATORIA Mucho tiempo tomó el llegar a este momento y posiblemente la persona que más se alegrará porque finalmente se produjo es mi madre, a quien va dedicado este trabajo. v RESUMEN El presente trabajo tiene como principal objetivo el construir y programar un conjunto de robots móviles sobre la base del producto Lego Mindstorms en su versión NXT 1.0.
    [Show full text]
  • Developing Real-Time Applications with LEGO Mindstorms
    Studienarbeit Lucas Carvalho Cordeiro 1928 SA Development real time applications with LEGO Mindstorms Stuttgart, 30th October 2003 Tutors: Prof. Dr.-Ing. Dr. h. c. Peter Göhner M.Sc. Paulo Urbano Dipl.-Ing. Thomas Wagner Acknowledgements The material in this these has been developed over the last three months and its results were driven in a valuable way. I would like to thank my family who supported me over the last years to the completion of my studies. I would also like to thank Prof. Göhner for giving me an opportunity to complete my undergraduate project at IAS. I am very thankful to my advisor Paulo Urbano for sharing his ideas and helping to complete my project. Finally, I thank Ursula Habel for essential support throughout the UNIBRAL project and by the grammatical correction of my abstract in German. Especially thanks to CAPES for the scholarship offered over the UNIBRAL project. 2 Abstract As the computers became smaller, faster, cheaper and more reliable their range of application is expanding. Computers are used to control a wide range of systems ranging from simple home appliances to entire manufacturing. These computers interact directly with hardware device controlling a physical, dynamic process. The software in these systems is an embedded real-time system that must react to events occurring in the control process and issue control signals in response to these events. It is embedded in some larger system and must respond, in real time, to changes in the system’s environment. The LEGO MINDSTORMS kit allows a wide variety of physical models to be built, which may be programmed via the RCX processor integrated into them.
    [Show full text]
  • Lego Chess Robot
    Department of Computing Science and Department of Electronic and Electrical Engineering University of Glasgow Team E Project Report Level 3, 2004/2005 Lego Chess Robot by Stewart Gracie, Jonathan Matthey, David Rankin, Konstantinos Topoglidis We hereby give our permission for this project to be shown to other University of Glasgow students and to be freely distributed in an electronic format. Please note that you are under no obligation to sign this declaration, but do- ing so would help future students. Stewart Gracie Jonathan Matthey David Rankin Konstantinos Topoglidis i Abstract As Team E, we aim to build a fully interactive robot that will play chess on a physical board against a human player. This robot's movements will be dictated by a chess engine written in C running under a Windows environment on a desktop computer. The computer and robot will interact via infra red transmissions. The human's moves are detected by a specially built chess board that is connected to the PC via USB using Phidgets technology. The Robot's movement is controlled by motors and sensors which are operated through RCXs which are programmed in NQC. The setup o®ers a strong game supporting all legal chess moves such as castling, en passant and promoting pieces. Once complete a human player is able to play against a computer chess program without the distractions of the computer. The game is played on an actual chess board and, after setup, the computer can be ignored altogether. An LCD display, LED lights and sound e®ects keep the user continually informed.
    [Show full text]
  • An Embedded Javavm for a Robot Development Kit (LEGO Mindstormstm RCX)
    An Embedded JavaVM for a robot development kit (LEGO MindstormsTM RCX) Java User Group Stuttgart (JUGS) SIG Embedded Java 2002-09-12 2002-09-12 / leJOS.ppt / v1.1 / Slide 1 © 2002 Jochen Hiller Jochen Hiller [email protected] http://www.bauer-partner.com Principal Consultant Head of Research 2002-09-12 / leJOS.ppt / v1.1 / Slide 2 © 2002 Jochen Hiller Agenda • An Introduction to LEGO Mindstorms • leJOS – LEGO Java Operating System • Java Robotics Programming –Examples –Live Demos • Other Examples / Outlook 2002-09-12 / leJOS.ppt / v1.1 / Slide 3 © 2002 Jochen Hiller LEGO MindstormsTM – Introduction • History • The Brick • Sensors • Motors • LEGO Parts • The RCX Software Development Kit 2002-09-12 / leJOS.ppt / v1.1 / Slide 4 © 2002 Jochen Hiller LEGO MindstormsTM –History • Mindstorms concept: partnership / sponsorship – LEGO Group – MIT Media Laboratory • MIT activities – Starting 1987: Programmable Brick – 4 Versions until 1998, latest big red brick – Driven by Fred G. Martin • LEGO Group – Development from ground up, reuse philosophy – Brick based software programming for kids – 1998: 1st commercial version available, 80.000 kits/200$/3 months 2002-09-12– / leJOS.ppt Strategic / v1.1 / Slide 5 product for LEGO, „Legoland“ activity too © 2002 Jochen Hiller LEGO MindstormsTM –RIS • RIS: Robotics Invention System – v1.0, v1.5, v2.0 • Family of products – computer controlled robots • Latest product: – Vision Command: Camera (Logitech) 2002-09-12 / leJOS.ppt / v1.1 / Slide 6 © 2002 Jochen Hiller LEGO MindstormsTM – The Brick
    [Show full text]
  • Using the LEGO Mindstorms RCX in 2017
    Using the LEGO Mindstorms RCX in 2017 John Holbrook | [email protected] | http://johnholbrook.us May 2017 Contents 1 Introduction 2 2 Why use an RCX? 2 3 Hardware Guide 3 3.1 RCX Brick . 3 3.2 Infrared Tower . 3 3.2.1 USB Infrared Tower on 64-bit Windows . 4 3.3 Motors . 4 3.4 Sensors . 5 3.5 Wires . 6 3.6 Remote . 7 4 Buying an RCX 7 4.1 Buying a Set . 7 4.2 Buying Individual Parts . 8 5 Programming an RCX 9 5.1 Windows . 9 5.2 Linux . 10 5.3 Mac . 11 6 Resources 12 6.1 Hardware/Building Guides . 12 6.2 Software/Hacking . 12 6.3 Sharing . 12 6.4 General/Miscellaneous . 13 6.5 Books . 13 7 Frequently Asked Questions 13 1 1 Introduction Despite being the oldest of the three Mindstorms programmable bricks, the RCX remains my favorite. I love its simplicity, small size, and its relative reliance on traditional LEGO R studs, rather than Technic beams. However, using an RCX is in some ways harder and more complicated than when it was first released in 1998. This article will attempt to summarize some of the equipment, software, and techniques necessary to use an RCX in 2017. 2 Why use an RCX? There are several reasons you might want to use an RCX instead of an NXT or EV3: 1. You already have one. Maybe you’re a teacher, and your school never bought newer Mindstorms sets. Maybe you found your old RCX equip- ment in the attic, and want to play with it again.
    [Show full text]
  • LEGO MINDSTORMS Masterpieces Building & Programming Advanced Robots Copyright © 2003 by Syngress Publishing, Inc.All Rights Reserved
    243_Mindstorms_fm.qxd 4/18/03 6:45 PM Page i [email protected] With more than 1,500,000 copies of our MCSE, MCSD, CompTIA, and Cisco study guides in print, we continue to look for ways we can better serve the information needs of our readers. One way we do that is by listening. Readers like yourself have been telling us they want an Internet-based ser- vice that would extend and enhance the value of our books. Based on reader feedback and our own strategic plan, we have created a Web site that we hope will exceed your expectations. [email protected] is an interactive treasure trove of useful infor- mation focusing on our book topics and related technologies. The site offers the following features: I One-year warranty against content obsolescence due to vendor product upgrades. You can access online updates for any affected chapters. I “Ask the Author” customer query forms that enable you to post questions to our authors and editors. I Exclusive monthly mailings in which our experts provide answers to reader queries and clear explanations of complex material. I Regularly updated links to sites specially selected by our editors for readers desiring additional reliable information on key topics. Best of all, the book you’re now holding is your key to this amazing site. Just go to www.syngress.com/solutions, and keep this book handy when you register to verify your purchase. Thank you for giving us the opportunity to serve your needs. And be sure to let us know if there’s anything else we can do to help you get the maximum value from your investment.
    [Show full text]
  • Table of Contents
    1 Lego and BrickOS 1.1. BrickOS Software Development Environment The hardware of the BrickOS software development environment includes a PC running Windows 2000/XP, a USB Lego infrared communication tower, and the RCX box, commonly called RCX brick. The PC is used as the development environment for the Lego robots, where the BrickOS kernel may be build and C/C++ programs are coded and then cross compiled using the GCC cross compiler. The BrickOS kernel needs to be downloaded to the Lego brick before any other program is loaded to the brick. The executable code is downloaded to the Lego brick through the infrared tower. The downloaded program(s) may be started for execution by a button of the Lego brick. Cygwin is a program that runs on top of Microsoft Windows 2000/XP to provide a Unix- like environment, where many Unix-utility programs such as GCC cross-platform compilers, make, vi etc. The BrickOS source is stored in a directory of Cygwin. The GCC cross-platform compiler is used to first compile the BrickOS environment containing the BrickOS kernel, a utility called firmdl3 to download the BrickOS kernel to the RCX brick, another utility called dll to download executables to the RCX brick. Application Programs C/C++ Library BrickOS Firmware in ROM Hitachi H8/3292 Figure 1 BrickOS Architecture 2/9/2007 -- 11:36 AM 1-44 Figure 2 BrickOS software development environment. The software architecture includes BrickOS kernel, which is downloaded to the RCX brick first. The C/C++ library is built on top of the BrickOS.
    [Show full text]
  • Low-Cost Commercial LEGO© Platform for Mobile Robotics
    Please cite this article as: Cuevas, E., Zaldivar, D., Pérez-Cisneros, M. Low-cost commercial Lego™ platform for mobile robotics, International Journal of Electrical Engineering Education 47 (2), (2010), pp. 132-150. Low-cost commercial LEGO© platform for mobile robotics Erik Cuevas, Daniel Zaldivar and Marco Pérez-Cisneros Departamento de Ciencias Computacionales Universidad de Guadalajara, CUCEI Av. Revolución 1500, Guadalajara, Jal, México {erik.cuevas, daniel.zaldivar, marco.perez}@cucei.udg.mx Abstract This paper shows the potential of a Lego© based low-cost commercial robotic platform for learning and testing prototypes in higher education and research. The overall setup aims to explain mobile robotic issues strongly related to several fields such as Mechatronics, Robotics, and Automatic Control theory. The capabilities and limitations of LEGO© robots are studied within two projects. The first one involves a robotic vehicle which is able to follow several predefined paths. The second project concerns to the classical problem of position control. Algorithms and additional tools have been fully designed, applied and documented with results shown throughout the paper. The platform is found to be suitable for teaching and researching on key issues related to the aforementioned fields. 1. Introduction In the past decades, revolutionary technologies have allowed the development of innovations which have deeply transformed our lives. Mechatronics, a synergistic procedure of mechanical, electronics, software, and control engineering, is breeding a significant contribution to the design and conception of innovative and versatile products. Robotics is becoming more important both for industry and for the design of everyday life. Teaching of Mechatronics and Robotics while focusing on design, optimization, experi- mentation and development of real-time systems, can be facilitated by the availability of flexible and yet inexpensive rapid prototyping systems.
    [Show full text]
  • Railbricks 3.Pdf
    The Tips & Tricks Issue Issue 3 - Spring 2008 TM dorsed b En y A peak inside FreeLUG - the French Enthusiasts LEGO© User Group INSIDE: The Diesels of Dara Norman (aka Swoofty) Building Realistic Wooden Trestles PBricks and Pushing the 9v Limits Power Functions Train Tricks And Much More! CONTENTS Next Stop… Chicago! June 19-22, 2008 • Chicago, Illinois www.Brickworld.us CONTENTS Issue 3 - SPRING 2008 Next Stop… The Whistle Stop.....................................................................4 Chicago! LEGO Factory Update...............................................................5 Blue Brick Review.....................................................................6 Breaking the Code...................................................................8 Club Spotlight: FreeLUG..........................................................9 Flashback Review: 7760.......................................................10 Builder Spotlight: Swoofty....................................................12 Reverse Engineering Challenge............................................16 Power Functions + 9v Train Tricks........................................19 Keeping 9v Alive....................................................................20 Advanced 9v Track Modification..........................................22 Use the World as Your Inspiration.......................................26 A Bridge Too Far.....................................................................27 Selective Compression..........................................................34
    [Show full text]
  • SATAKUNTA UNIVERSITY of APPLIED SCIENCES Tero Mäkelä
    SATAKUNTA UNIVERSITY OF APPLIED SCIENCES Tero Mäkelä USING BRICKOS WITH LEGO MINDSTORMS RCX BRICK AND ESTABLISHING INFRARED COMMUNICATION Information Technology training programme Degree Programme in Software engineering 2007 BRICKOS:IN KÄYTTÖ LEGO MINDSTORMS RCX PALIKAN KANSSA JA INFRAPUNAYHTEYDEN LUOMINEN Mäkelä, Tero Kristian Satakunnan ammattikorkeakoulu Tietotekniikan koulutusohjelma Ohjelmistotekniikan suuntautumisvaihtoehto Tammikuu 2007 Niemi Juha, DI UDK: 004.41, 004.42, 004.45 Sivumäärä: 52 Avainsanat: Tietotekniikka, Ranska, Robotin Ohjelmointi, Cygwin, Firmware __________________________________________________________ Opinnäytetyössä tutkittiin vaihtoehtoisen käyttöjärjestelmän brickOS:in asentamista LEGO Mindstormsin RCX palikkaan sen ohjelmointia C ja C++ kielillä sekä RCX:n reaaliaikaista kontrollointia käyttäen PC:tä ja infrapunatornia. Projektin aihe annettiin Valenciennesin yliopistolta Ranskasta, jossa tekijä oli vaihto- opiskelijana työharjoittelua suorittamassa kolmen muun suomalaisopiskelijan kanssa. Ilman aiempaa kokemusta kyseisestä aiheesta täytyi ensin selvittää miten kaikki toi- mii ja miten asiat saadaan toimimaan. brickOS:in ja RCX:n tutkiminen oli asia johon paneuduttiin ennen kuin alettiin tekemään mi tään muuta. Ensimmäinen selvitettäväk- si annettu tehtävä oli se, että pyyhkiytyykö alkuperäinen firmware pysyvästi pois, kun brickOS asennetaan ja kävi ilmi, että näin käy joka kerta kun patterit poistettiin joten se ei ollut enään jatkamisen esteenä. Seuraavaksi selvitettiin oikea tapa asentaa tarvittavat
    [Show full text]
  • High Level Paradigms for the Structuring of Concurrent Systems
    High Level Paradigms for the Structuring of Concurrent Systems a thesis submitted to The University of Kent at Canterbury in the subject of Computer Science for the degree of Doctor of Philosophy. By Jonathan Simpson March 2012 Generated: 23/06/2014 Abstract ¿e need for so ware concurrency and the availability of hardware parallelism exist in symbiosis; the ability to exploit parallelism via concurrency is an increasingly important part of so ware design and development. Process-oriented design provides a model, of systems composed from networks of concurrently executing communicating processes, which eases the creation of concurrent programs that behave correctly. Robots are agents in the world and typically have many tasks to achieve simultaneously; writing robot control so ware requires coordination of these tasks. Given their interaction with the world, the need to complete concurrent tasks and the availability of parallel hardware, it is natural to consider designing and implementing robot control systems using a programming model specialised for concurrent systems. ¿is thesis presents the application of process-oriented design and programming to ro- botic control through the re-design and re-implementation of existing so ware architectures and hardware interfaces. ¿e contributions made in this thesis demonstrate properties con- sistent with a closeness of mapping between the domain and programming model. Evidence is presented that application of a concurrent process-oriented programming model does not negatively eect the responsiveness of systems and facilitates more direct representation of the concurrency inherent to the task. ¿is thesis presents a visual program design tool, POPed, which is able to produce executable programs using process-oriented design techniques involving the structured composition of processes.
    [Show full text]