The project dealt with finding an object in a room, while given its approximate location, aligning beside the object using color & light estimation, and moving the object to a second location.
Abstract
The project dealt with finding an object in a room, while given its approximate location, aligning beside the object using color & light estimation, and moving the object to a second location. All was done using robots which were built with lego bricks and controlled using lego RCX controller, and used lego sensors.
The problem
Each robot is located in a different location in a room. The robots should find independently the beam, and move it to the second location, while coordinating within themselves. It was required to design each robot, and select the sensors it will use, while the controllers are limited by the numbers of sensors they can use, the type of sensors, and the sensors quality.
The solution
(Both robots were built almost identically. Each one of them had two motors, which enabled it to rotate like a tank. Each robot used two light sensors, which were directed to the floor, and one rotation sensor, which measured the number of motor rotations. The moving of the object was implemented with turning it in a given angle, and pushing it forward afterwards in a given distance. Using the rotation sensors, the robots were sent to the approximated location of the beam, from that position, the controller started to sample the color of the floor using the light sensors. To the beam bottom was taped a paper which was colored in four grayscale colors, and the controllers were designed to align along the edges of the beam, while using the paper colors as a reference to their location. After aligning along the edges, one robot was used as a pivot, and the other pushed the beam edge forward in 4 degrees intervals, until fulfilling pushing the beam in the required angle. Then a final align was made of both robots along the beam, and they pushed it forward in the desired distance. The coordination between the robots was made using infrared transmitter/receiver, which is an integrated part of the RCX controller.
Tools
The robots were built using Lego bricks, and were based on a design taken from “Legos – MindStorms – Mars Exploration Kit”. And altered in order to meet the project requirements. The robots used Lego RCX 1.5 (“MindStorms”) controllers, loaded with RCX1.0 firmware (the controller operating system). The controllers code was written on PC under Windows, using BricxCC programming environment, and was compiled with NQC (Not Quite C) compiler. NQC: http://www.enteract.com/~dbaum/nqc/index.html BricxCC: http://members.aol.com/johnbinder/bricxcc.htm Later the compiled code was downloaded to the RCX controllers using ”Lego – MindStorms” infrared transmitter. The robots controllers used rotation sensors, and light sensors which were designed by Lego to the RCX controllers. The colored paper was drawn using Adobe PhotoShop, and was printed using a wax printer (Tektronix Phaser 850DP).
Acknowledgments
We would like to thank our supervisor Elad Yom-Tov who instructed us during the making of the project and Johanan Erez and the laboratory staff whom helped us during the project. We would also like to acknowledge The Ollendorff Minerva Center Fund which constantly supports the laboratories research projects.















