After Performance Report Of the Robot Engineering 112 Spring 2007 Instructor: Dr. Ghada Salama By Mahmudul Alam Tareq Al Maaita Ismail El Ebiary Section- 502 Date: May 2, 2007
Introduction: The report presents the performance of our robot that was built as part of the final semester project, programmable robotics. The purpose of this project was to introduce the computer programming as a problem solving tool of modern engineering problems. The robot was constructed from the Lego Mindstorm NXT s programmable Lego set. The Lego Mindstorm NXT is commercially known as Robotic Inventions Systems (RSI), and their lego kits are often used for educational purposes. The Lego set was provided by the Engineering 112 instructors, Dr. John A Bryant, and Dr. Ghada Salama. Task Description: The Robot was required to navigate through a specific path, which was determined by the professor himself, and then the programming had to be done accordingly. The whole path was named Aggie Roundabout, which has been illustrated in the following figure: Dark Black Lines Start/End Line Figure: Aggie Roundabout The radius of the inner circle was 55 centimeters while the radius of the outer circle was 67.5 centimeters. The roundabout was consisted of continuous walls of approximately 15.5 centimeters height. The dark lines that connected the roundabout with the start/end point were actually electrical tapes of 12 millimeters width and the lines were approximately 2 meters long. Using the sensors installed in it, first the robot had to follow that path from the start line to the end line. Next, upon entering the Aggie roundabout, the robot was required to navigate through it to
exit from the roundabout. As soon as the robot exit, the robot then either had to throw something beyond the finish line or had to follow the dark line until it reached the finish line. Robot construction: The construction of the robot was quite easy and pretty straightforward because for the basic construction, we simply followed the instructions of the manual that came along with the lego package. The main body of the robot was constructed of sensors, lego bricks, axles, beams, pneumatic parts, and other automated and interactive systems. As for the sensors; we used only two sensors: light sensor and the ultrasound sensor. The light sensor was placed at the bottom of the robot with the light facing the floor. The ultrasound sensor was placed right above the light sensor, and its position was parallel to the floor. The positions of both of the sensors have been illustrated in the following figure, which was retrieved form the internet (http://images.amazon.com/images/g/01/toys/promo/mindstorms-combinations.jpg), but it exactly looks like our robot. Ultrasound Sensor Programming: Figure 1: The position of the sensors in the robot Light Sensor The main thing that formed the basis of the programming was the analysis of the problem, which was actually task that the robot was required to do. First, the input of the programming was identified, since the corresponding outputs had be defined based on the input. Observing the task requirement of the robot, two obvious external stimuli were chosen as the inputs for it: darkness (the black electrical tape) and obstacle (the walls of the Aggie Roundabout). Due to time constraint and to avoid complication, no other stimuli were considered for inputs. The corresponding outputs for these inputs have been listed in the following table.
Table 1: The basic input and output of the robot Input Darkness (1 st time) Obstacles Darkness (2 nd time) Output Follow the line using the light sensor Use the ultrasonic sensor to determine the distance of the obstacle and then move left in a counter clockwise direction Throw the ball The table above just shows the basic input-outputs, but the robot was also given some other minor instructions, which have been illustrated in the flowchart, attached in the following page. In the whole program, there were four loops. The whole programming was done in graphical user interface system, and the programmed instructions were downloaded to the RAM of the robot directly through a USB cable.
Performance on the Race Day: On the race day, the performance of our robot was pretty well, except some hiccups at the beginning of its route. Soon after the robot was put on the track at starting point, it experienced a bit difficulty in finding the dark line, and consequently it was just rotating about its own axis. Also during its navigation through the dark line, it deviated quite a few times, and therefore it had to be assisted by one of the team members to remain on the track. Entering the Aggie roundabout, it worked amazingly as it steered itself to the exit without any interruptions. Finally, the robot threw the ball successfully beyond the finishing line. Modifications for Better Performance: For better performance, we recommended the following Use of some other sensors would have improved the performance of the robot. After programming the robot, testing had to be done before the final show. It is because adopting trial-error method would certainly help us in programming the robot more precisely.