Writing a GUI for the Epuck Robot
1 Introduction
Epuck is a miniature mobile robot with a functionality similar to larger robots used in research and education (Fig. 1). Its main features are: two controllable stepper motors, eight proximity as well as ambient light sensors, several LEDs, Bluetooth communication and a camera.
Figure 1: The epuck robot.
2 Task
Write a GUI for the Epuck. Keep usability in mind! Decide yourself, what functionality you offer to the user.
Download and extract the file Epuck.zip from the GUI homepage1. It contains the interface to the robot, as well as a simple test program and a Makefile to compile it. Un- fortunately their seem no sufficient information available on the interpretation and valid ranges of the Epuck functions parameters and return values. So, you have to play around with it and find out yourself. Some sparse information can be found in the sections of www.e-puck.org->Robot.
3 Getting Started with the Epuck
1. Start the robot with the mode selector in position 3!
2. Communication with an Epuck requires a Bluetooth connection. Activate a bluetooth adapter!
3. Create a Bluetooth connection to the robot! Use the robot’s number as the PIN!
4. In order to test the connection, open a terminal on the newly created serial port.
5. Now you can compile and run the test program.
(a) Open a terminal!
1http://www.imd.uni-rostock.de/ma/rs/lv/lvgui.html
1
(b) Unzip the provided files!
(c) Change into the newly created directory!
(d) Run make!
(e) Run ./web <robot number>with your robot’s number!
To compile your own programs, read the source code of the file test.cpp. The interface is defined in the file EpuckInterface.hpp. The corresponding types are defined in the file epuck types.hpp. Due to changes of the Epuck hardware, the file EpuckInterface.h is provided for backward compatibility to older programs. However a slight change is required:
The classnameEpuckInterfacemust be replaced bygui::EpuckImpl, as can be seen in the filetest.cpp.
4 Need help? Criticism? Want the robots?
Ask Matthias (Room 1212, phone 7282). Keep in mind: We need your feedback to know what we can do better next year.
Have fun, Ralf & Matthias
2