Learning serious knowledge while “playing” with robots
Zoltán ISTENES

Presentation of the used material to build and program robots
Most of the hardware components are used from the  LEGO Mindstorms Robotics Invention System 2.0 box. The central element of the robots is the RCX, which is a palm size box, containing a microprocessor (16MHz), a memory (32KByte), an infra red connection port, an LCD display, buttons and batteries. Three sensors, such as light intensity, touch or rotation sensors, and three actuators, such as motors or lamps can be simply connected to one RCX. 
The robot controlling programs created on a desktop computer can be written in C, Java or assembly-like sublanguages, or else, and then downloaded trough an infra red connection into the RCX memory. Then the RCX can execute the downloaded program autonomously, or execute the received commands via the IR port. The  IR connection port allows the communication amongst different RCXs too. This flexible hardware background facilitates the construction of a vide variety of programmable robots.
Examples of programming and using robots
Students working in teams have built and programmed already several robots.
In the simple “line following” project, students may find several solutions. They have to consider real time constraints (sensor, processing and robot speed), and they have to use fault tolerant, “error recovering” solutions (what if the line is “lost”, how to find it again), using 1, 2 or 3 light intensity sensors. 
In the different “game playing” project (as tik-tak-toe or battleship) students have to program the communication protocols. In these cases RCXs communicate via the IR connection, implementing a client-server architecture or electing a game master amongst each other.
In the latest “camera guided discovering robots“ project, students have to confront more complex and difficult tasks. They have to write programs on the desktop computer, recognising on the camera image the moving robots and their obstacles, then using artificial intelligence techniques to find a path to the target area, and then sending the guiding information to the robots. 
Educational benefits of programming and using robots in the informatics
Building and programming a robot requires knowledge from several different fields of informatics, such as programming languages and techniques, communication and networks, artificial intelligence and agents, pattern recognition, etc. Students at their different courses learn about several kind of methods, which they can after tangibly and easily try, use and test on programming the robot RCX. The results are immediate and evident just such as problems or failures. 
Robotics can be seen as a reduced test environment of the real world, where problems arise faster since the hardware and software limits are reached sooner. This allows the students to confront problems as they might find, later on, in the real world, but in a smaller and easier way, facilitating them to find out and apply solutions, and gives them a large experience in solving problems in the future. 
Students enjoy this kind of thinking, programming and learning. They work in a team, they have to use their creativity, both in constructing a project and realising it, and at the end they present a tangible, working result to the others.
Finally student use and learn serious knowledge while having the feeling of “just playing with robots”.