Overview of the Khepera Robot

Robert Harlan

Shelley McClarigan

Copyright 2000

 

The Khepera robot is a miniature mobile robot with similar capabilities to larger sized robots that are most often used in research, educational facilities, and other real-world environments. Its small size (55 mm diameter, 30 mm height), light weight (approx. 70 grams), and compact shape are ideal for micro-world experimentation with control algorithms.

 

Figure 1: Khepera schematic showing 8 sensors and two actuators

   The Khepera has sufficient sensors and actuators to ensure that it can be programmed to complete a wide variety of tasks. Its eight infrared sensors can sense both ambient light levels and proximity to nearby objects. It also has two DC motors that are capable of independent variable-speed motion, allowing the robot to move forwards, backwards, and to complete a variety of turns at different speeds.

    The Khepera has several extension modules that can be plugged in to the top of the robot. These include a gripper arm, a two-dimensional vision system and a digital camera.

The Khepera can be run autonomously or tethered to a host computer. The Khepera has an onboard Motorola 68331 processor, 256k RAM, and 256k ROM. It also has a rechargeable NiCd Battery that allows it up to 30 minutes of high-activity autonomy.

 

Running Modes of the Khepera

Khepera robots can run autonomously, run tethered to a host computer that 

Figure 2: Khepera in autonomous mode

controls the robot, or run in a mixed mode with real-time communication between a computer and the robot.

    The autonomous mode (Figure 1) requires that the control program be written on a computer and downloaded by tether or radio to the robot. The program is run on the robot with no real-time connection to the computer.  

    This method has the advantage of allowing the robot to run independent of the host computer: there is no tether to restrict the robot’s movement. 

    There are several disadvantages to this mode. It is very difficult to understand and debug code written this way, for there is no way to trace individual instructions and their effects. It is also very time consuming to have to compile and download the code to the robot every time a change must be made. Moreover, the amount of memory on the robot limits the size and complexity of controlling programs.

 

Figure 3: Khepera in tethered mode

   The second or tethered mode (Figure 2) involves writing and running the control program on a host computer and communicating with the robot during the run of the program (Figure 3). The control program can query the robot’s sensors and actuators and send command to the actuators. This will be the preferred mode for experimenting in our robotics lab

    This mode has the advantage of splitting the control of the Khepera between the robot’s processor itself and the host computer: the Khepera handles very low-level tasks such as reading from the infrared sensors and controlling the motors, and the computer handles higher level behaviors such as planning and interaction with the user.    

 

Figure 4: Khepera in combined mode

    Debugging and understanding code is much easier using this method, and the type of programs you can write is nearly unlimited. A disadvantage is that the environment must allow for the tether, but this can be overcome by adding radio communications between the host computer and the robot.

    The last method of communication is a combination of both of the above techniques (Figure 4). The programmer can decide which modules of code can be downloaded to the robot and run on its processor and which should be run on the host computer. The two programs can communicate in real time as required.

This has the advantage of allowing the programmer to write very powerful and efficient programs and is used for final version of control programs.

 

Khepera Links

 

 

Back to Robotics Page

Back to the Computer Science Home Page

Last update: 8/2000