The Development of Khepera
نویسندگان
چکیده
This short paper explains how the Khepera robot was developed, from the initial idea to the its commercialisation by K-Team. The goal of this paper is not a scientific analysis but an historical overview of the steps made in the development of this robot since 1991. The papers introduces first the situation of the team who started the development, then decisions made in creating the actual Khepera are briefly described, as well as some important steps in the commercialisation of the robot. We conclude with the current status of Khepera, and introduce other products that have evolved from Khepera. 1 Starting conditions Khepera was born at the Microcomputing Laboratory (LAMI) of the Swiss Federal Institute of Technology of Lausanne (EPFL) in 1991. Observing the evolution of robotics technology and the developments of other universities, Prof. Jean-Daniel Nicoud, head of the laboratory, decided to start development of a mobile robot occupying less than one cubic inch of volume. The Squirt robot [1] developed in the same period at MIT and the well known Swiss know-how in miniature mechanics and watches probably played an important role in this decision. The development started as a student project by Kaspar Suter [2] and finished in December 1991 with the first prototype. This robot was equipped with a 68HC11 processor, two asymmetric wheels controlled by DC motors with integrated reduction gears, watch batteries, and infrared sensors like the Khepera of today. An obstacle avoidance behaviour was demonstrated at the end of the student project. During the same period, Francesco Mondada and Edo Franzi were also working at LAMI in the framework of a research project on Artificial Intelligence and robotics, supported by the Swiss National Research Foundation (project PNR23). LAMI was involved in this national project as experts in the field of Artificial Neural Networks (ANNs). After an initial implementation of Artificial Neural Networks on robotic arms by Laurent Tettoni, Mondada and Franzi were convinced that the field of mobile robotics was a good one for testing neural networks. A quick research of existing experimentation tools showed that the only robots available on the market were expensive and difficult to use. The requirements for a mobile robot tool necessary for the ANN project were very different than the specifications of existing robots. As LAMI had all the competences required to build this type of robot, it was decided to link the PNR23 research project with the miniature mobile robot developed by Kaspar Suter. Hence the desired characteristics of the robot: • Physically compact, with motors, sensors, batteries and processor all included. • Onboard computation capability able to support complex algorithms like ANNs. • Easy to use in basic experiments not only by engineers but also by biologists collaborating with the LAMI group. This was a real problem with existing robots at this period, most of them programmed in very strange languages and therefore not accessible to non-specialists. • Modular, allowing extensions for use in new experimental fields of research. • Permits investigation into collective robotics. • Includes a lot of new technology. The goal of the development was to build around 10 robots for use at LAMI. The team working on this project was composed of: • Edo Franzi: responsible for all electronics design and low level software. • André Guignard: responsible for mechanics, electronics layout and prototyping. • Francesco Mondada: responsible for the development of tools to implement ANNs on the robot. 2 Creation of the first prototype A preliminary design and prototype was completed in 1992 based on the above characteristics. This first robot (see figure 1) was used for research activity and for demonstrations at several conferences and workshops. Figure 1. The first Khepera robot built at LAMI. This version had an unusual wheel fixation and no battery recharger connector between the two front sensors. The connection with a recharger was made using contacts placed under the robot. Some additional interesting features emerged from the use of the first prototypes: • The robot can be connected to the computer with a wire without disturbing operation (see figure 2). This enable control of the robot from a host computer. • Being small, a robot has much better relative mechanical resistance. This physical property can be understood by considering a large robot with a diameter of 1 m running into a wall at a speed of 1 m/s and a small robot with a diameter of 1 cm running into a wall at a speed of 1 cm/s. The first case results in catastrophe, the second not. Figure 2. This figure, representing the robot in its desktop environment, appears in many papers and manuals because it shows the main feature of the Khepera robot: the fact that it can be used on a table near a computer connected with a cable. 2.1 Technical hardware choices In 1992, the new generation of Motorola microcontrollers and in particular the MC68331 provided a new and better solution for building powerful miniature systems. The CPU board of the current Khepera has been built around this microcontroller and is a complete 32bit machine including a 16MHz microcontroller, system and user memory, analogue inputs, extension busses and a serial link allowing a connection to different host machines (terminals, visualisation software tools, etc.). The microcontroller includes all the features needed to easily interface extensions: memory interfaces, I/O ports and external interrupts. Moreover, the large number of timers and their ability to work in association with the I/O ports are a great advantage. Due to the size of the connectors and the space needed for the components, a second board was devoted to the sensory/motor functionality. This second board includes two DC motors coupled with magnetic incremental sensors, eight analogue infra-red (IR) proximity sensors and the onboard power supply. The magnetic incremental sensors were chosen for their low power consumption and facility of use. Placing these sensors before the reduction gear yields an encoder resolution of 600 pulses per wheel revolution. The eight analogue IR proximity sensors were also very compact in comparison to other distance sensors. A dedicated electronic interface was built with multiplexers, sample/hold and operational amplifiers. This permits the measurement of the absolute ambient IR light, and by reflection of the emitted IR light, an estimation of the relative position of an object from the robot. One of the most interesting features of Khepera is the possibility of connecting extension modules on two different busses. One parallel bus is available to connect simple experimentation turrets. An alternative and more sophisticated interface scheme implements a small local communication network; this allows the connection of intelligent turrets (equipped with a local microcontroller) and the migration of conventional or neural pre-processing software layers closer to the sensors and actuators. This communication network uses a star topology; the main microcontroller of the robot acts as a master (at the centre of the star). All the intelligent turrets are considered as slaves (on the periphery of the star) and use the communication network only when requested by the master. This topology makes it possible to implement distributed biological controls. Examples are arm movement coordination or feature extraction in vision, as observed in a large number of insects. The multi-microcontroller approach allows the main microcontroller of Khepera to execute only high level algorithms; therefore attaining a simpler programming paradigm. Figure 3. The structure of the Khepera robot: a basic configuration and an extensible structure. 2.2 Low level software support Managing all the Khepera resources was not a simple task. Controlling the large number of asynchronous events, and the necessity of sharing some critical interfaces led to the development of a complete low-level software system organised as a collection of basic I/O primitives. In addition, the multi-microcontroller approach and the management of complex tasks required a hierarchical approach to the software structure. This concept shows real efficiency improvements when distributed computation and intelligent turrets (equipped with a microcontroller) are used. Two software structures are implemented: a single high-level application program and a number of stand-alone local processes. Stand-alone local processes (e.g., for IR sensor sequencing, motion control, wheel incrementalsensor counting, etc.) are executed cyclically according to their own event timer and possibly in association with external interruptions. The high-level application software runs the control algorithm and communicates with the Motor PWM Multi-microcontroller extension network MC68331 16MHz 32-bit microcontroller 512-KByte of RAM and EPROM 6 x analog inputs with 10-bit resolution Asynchronous serial link A Control 2 x motors 2 x incremental sensors (600 imp./turn) 8 x IR proximity sensors 4 x NiCd accumulators Synchronous multi-microcontroller link Serial link (RS232) Vision Processor-less turrets for:
منابع مشابه
Trajectory Tracking of Two-Wheeled Mobile Robots, Using LQR Optimal Control Method, Based On Computational Model of KHEPERA IV
This paper presents a model-based control design for trajectory tracking of two-wheeled mobile robots based on Linear Quadratic Regulator (LQR) optimal control. The model proposed in this article has been implemented on a computational model which is obtained from kinematic and dynamic relations of KHEPERA IV. The purpose of control is to track a predefined reference trajectory with the best po...
متن کاملThe Khepera IV Mobile Robot: Performance Evaluation, Sensory Data and Software Toolbox
Taking distributed robotic system research from simulation to the real world often requires the use of small robots that can be deployed and managed in large numbers. This has led to the development of a multitude of these devices, deployed in the thousands by researchers worldwide. This paper looks at the Khepera IV mobile robot, the latest iteration of the Khepera series. This full-featured d...
متن کاملA Q-learning Based Continuous Tuning of Fuzzy Wall Tracking
A simple easy to implement algorithm is proposed to address wall tracking task of an autonomous robot. The robot should navigate in unknown environments, find the nearest wall, and track it solely based on locally sensed data. The proposed method benefits from coupling fuzzy logic and Q-learning to meet requirements of autonomous navigations. Fuzzy if-then rules provide a reliable decision maki...
متن کاملÓòøöóðððòò Øøø Ãããôöö Êóóóø Ý Aeaeùööð Aeaeøûóöö Åóùðð×
In this paper we present neural network modules that are capable of controlling the miniature robot Khepera. As an interesting application we decided to tackle the task of playing golf with the Khepera. Several challenging subtasks have to be fulfilled to perform the complex behaviour needed. Our special focus of interest lies on: building a map, localization within the map, hitting the ball an...
متن کاملGolf Playing Khepera
1 Problem description As an interesting application we present the task of playing golf with the Khepera. Several challenging have to be fulfilled to perform the complex behaviour needed. Our special focus of realization lies on: building a map, localization within the map, hitting the ball and local reactive path planning using neural network approaches. The golf playing Khepera with the attac...
متن کاملEvolution of a Robust Obstacle-avoidance Behavior in Khepera: a Comparison of Incremental and Direct Strategies
An incremental approach is used to simulate the evolution of neural controllers for robust obstacle-avoidance in a Khepera robot and proves to be more eecient than a direct approach. During a rst evolutionary stage, obstacle-avoidance controllers in medium-light conditions are generated. During a second evolutionary stage, controllers avoiding strongly-lighted regions, where the previously acqu...
متن کامل