Hardware/Software FPGA Architecture for Robotics Applications Juan Carlos Moctezuma Eugenio and Miguel Arias Estrada National Institute for Astrophysics Optics and Electronics, INAOE Street Luis Enrique Erro no.1, Puebla-Mexico jcmoctezuma@inaoep.mx http://ccc.inaoep.mx Abstract. This work presents a Hardware/Software FPGA Robotics Architecture for applications on Mobile Robotics. A test mobile robot was built and it is based in a commercial programmable robot called Create from iRobot, also the test platform has additional components like sonars, infrared sensors and a robotic arm, these components are used to increase robot’s functionality and to show that it is feasible to build any kind of hybrid robot. The Hardware/Software Architecture is a complete Embedded System (ES). Hardware side includes processor, buses, memory and peripherals like co-processors, sensors, robotic arm, controllers, UARTs, etc., Software side includes a Linux OS with a set of libraries that performs different functionalities and to control all com- ponents in FPGA, these functions are easy-understanding for robotic programmers. The main purpose of this work is to show the advantages of using FPGAs to implement Robotics Platforms. Some of these advan- tages are parallelism, flexibility and scalability. Finally some experiments was performed to show these advantages 1 Introduction Mobile Robotics works with robots that are ables to navigate in their environ- ment with certain grade of intelligence. A mobile robot is a set of subsystems for locomotion, sensing, decision making and communication between components [1]. Since movement and behavior of these kind of robots are based on what they are sensing, a systems development that can manipulate many hardware components, communicate between them, support real-time responses and have software support for user programs are very important. On the other hand, an ES is a computer for specific purpose, these systems can be optimized since they are focus to perform special functions, reducing cost and size of the final product. The four major components of an ES are: Processor, Buses, Memory and Peripherals [2, 4]. Embedded Systems have some special features like: performance specific task, real-time requirements, interact- ing with its environment (re-actives), dedicated hardware, which be optimized, among others. These features make an ES a suitable option to implement Robotic Platforms. J. Becker et al. (Eds.): ARC 2009, LNCS 5453, pp. 27–38, 2009. c Springer-Verlag Berlin Heidelberg 2009