Friday, June 1, 2012

Competition

Our robot came in second place in the competition. There were five groups and the group with the largest amount of points (earned per round) won the competition. Our robot performed excellently during most of the matches, but our major flaw that put us only in second place was that our robot still did not have enough traction to push certain robots.

Our group took recordings of matches with our robot against opposing robots. Here are a few examples of our robot's successes and failures.


Competition match. Our robot is the left one.
Competition match. Our robot is the lower left one.
Competition match. Ours is the left one.

Competition match. Ours is the left one.

Competition match. Ours is the right one.


Thursday, May 31, 2012

Week 9 Update

Currently, we have the NXT sumo robot ready for the competition, which will be tomorrow, June 1st.

There were some more minor modifications in order to prepare the robot for it's weight requirements as well as it's ability to perform in the competition.

After further testing the robot in the ring, we noticed how the ultrasonic sensor apparently sensed an object in front of it even if there was nothing there. We then realized that it was sensing the ramp when it is deployed to the ground. To deal with this dilemma, we raised the ultrasonic sensor by one "unit" of a LEGO piece with the intention that it will no longer sense the ramp. The modification proved to be a success, as it now performs exactly as we intended to.

We also had to adjust the weight of the robot in order to meet the requirements of 1 kilogram and below.
Luckily, there were extra pieces on the robot that were not needed and were removed to reduce weight. As of now, our robot meets the required weight limit, as shown in the picture below.

Our current robot weighing in at 999.9 grams (0.2 grams away from exceeding the weight limit).

In addition, we have also had the opportunity to test our sumo robot against another group's robot. The video below shows the robots competing against each other.

 
 Our robot (left) competing against an opposing robot (right) in a practice match.

Friday, May 25, 2012

Week 8 Update

This week we mainly focused on calibrating the code and modifying the body in order to perfect our design. For example, we realized that our robot was a little bit too large from front to back, so we had to relocate the front light sensor in order to meet the size requirements. This change also altered the readings of the light sensor to a degree, however a simple recalibration of the values fixed the problem.

One other modification to the robot body is that added more weight towards the front of the robot. Before the light sensor was able to detect the outer edge, the skid we have in the back of the robot was knocked off the ring and was caught on the edge when the robot tried to move forward. This meant that we had too much weight focused towards the rear of the robot. To balance the weight, we placed more LEGO pieces towards the front of the robot. While doing this, we were also constantly measuring its total weight after each major addition in order to stay under the requirement of 1 kilogram.

With the competition happening next week, our group is confident that our sumo robot will be a major success. After testing it with a basic NXT robot (shown below), we feel that our robot has a sturdy design that will win us the competition.


Here is a video of our sumo robot (right) testing against the basic robot we built (left) to get a general idea of how our robot will fare in the upcoming competition.

Thursday, May 17, 2012

Week 7 Update

After making some additional modifications to the design, we now have a complete NXT sumo robot.

One modification was the removal of the ultrasonic sensor located at the back of the robot. Previously, our group had trouble programming the robot with two ultrasonic sensors gathering information at the same time as seen in the video uploaded last week. We ultimately decided to remove the back ultrasonic sensor and have our robot rely solely on the forward sensor as well as the two light sensors.

We have also created and attached the ramp which is used to disrupt the opposing robot's maneuverability. Once the opposing robot is within a certain range determined by the ultrasonic sensor, the ramp will rise up with the intention of providing defensive and offensive protection.

The code has now been modified for the newly modeled robot. After testing the code, the results proved that the code is adequate enough to be able to compete.

The only major objective we have next week is to adjust any part of the code that needs to be adjusted in order to be prepared for the upcoming competition.

Below is a video of our robot running on the most current version of our code. We used a water bottle to get a basic idea of it's accuracy since there were no other NXT sumo robots to test with at the time.

Basic test of our robot's code.

The video below is humorous test run of an idea that occurred on the spot. We decided to upload this because we may create a new offensive tool based off this idea to aid us in the competition.

A random idea that the group came up with. Our idea was to trap the opposing robot in a box and push it out of the ring easily.

Thursday, May 10, 2012

Week 6 Update

We have finished designing the main body of the sumo robot.We've also added the two ultrasonic sensors for detecting the opposing robot and two light sensors to detect if it is heading towards the edge of the ring.

In addition, we also tested the code we had created the previous week before. As of right now, the ultrasonic sensor on the front side of the robot is reacting exactly the way we want it; when it senses anything in the range it was coded with, it will keep moving forward until the front light sensor detects the edge of the ring. The back ultrasonic sensor, however, is currently not responding properly. We will edit the code further that will make the ultrasonic sensor perform the way we want it.

Below are pictures of the robot as well as a video of the current program.

Final Design of the robot. The front of the robot has an ultrasonic sensor aimed forward and a light sensor pointing down.

Back side of the robot. Includes an ultrasonic sensor pointing forward and a light sensor pointing down.





 
A test run to see how our code is translating into the robot. The back ultrasonic sensor was not working the way we intended it to.

Thursday, May 3, 2012

Week 5 Update

        As it turns out, the treads we ordered from the website were discontinued. As of this moment, the design to incorporate treads is scrapped. Our new idea is to shorten the length between the two wheels (two powered by one motor) in order to better distribute the weight of the robot.

        After taking measurements of our robot, we learned that it exceeded the length limit it was allowed to be. As a result, we have decided to create a new design that will be more compact. We are also, at the same time, addressing the problem of the instability the wheels previously were experiencing.

        We have also developed a general code that should program the robot to do what we want. Since we don't really have a functioning model yet, however, we can't officially test the code at this time. We plan that this new, revised design will be functioning by next week and will be ready to test our program on.

Saturday, April 28, 2012

Week 4 Update

We have a few modifications to our robot design.

First off, it was decided that we will use a normal light sensor to detect the outer ring of the arena as opposed to the color sensor.  At first, we tested the color sensor by creating a code that will show us the results of it directed at a white color and a black color. The results were not consistent and  therefore unreliable for our needs. We've performed these same tests with the light sensor. The results from this particular sensor gave us a distinct difference between the two colors. We tested this further by creating a simple code that told the robot to move indefinitely on a black surface until the light sensor detected the white edge. The light sensor successfully differentiated between the two colors and stop just as it sensed the difference.

Construction is still under way. Our wheels have trouble performing a zero point turn because there is not much weight keeping in on the ground. We have ordered extra LEGO parts online that will be used in out design.One of these parts include treads that we intend to incorporate into the design to going better traction.

Thursday, April 19, 2012

Project Overview


Problem Overview
            The Sumo Robot is a competition where two robots compete against each other.  They are confined in a ring of a specified size from which they will be competing in. The goal is simple: The robot needs to push the opposing robot out of the ring and avoid falling out itself. An entire match consists of three rounds that can last up to a maximum of three minutes. The first robot to push the opposing out of the ring during a round will receive one point. If a robot moves outside the ring on its own, the opposing robot also receives one point. The team whose robot scores two points first is declared the winner of the match.

Design Constraints
            The competition allows design of various dimensions and weight depending on the class the robots will be under. By using a Lego NXT kit to construct a sumo robot, certain requirements must be made in order for the robot to be able to compete. The ring the robots will be competing in will have a diameter of 77 centimeters and a height of 2.5 centimeters. The robots themselves have a weight limit of 1,000 grams, or about 2.2 pounds. The size of the robot is restricted to a 15 cm x 15 cm area. The height, however, has no restrictions and can be made into any length desired.

            The Lego class sumo robots are only allowed to be autonomous. This means that the robot must be fully capable of competing in a match on its own without the aid of human remote control or networking. The design of the robot is restricted from using certain tools that have the potential to damage the ring or the opposing robot. Such restrictions include, but are not limited to: jamming devices, flammable materials, or sharp edges capable of damaging the ring. For this specific case, the robot must be constructed using only Lego pieces.

Pre-Existing Solutions
            Many of the previous competitors of the Robot Sumo competition have utilized a defensive design in order to protect the robot from certain obstacles. One of these defensive designs includes the addition of a ramp. As seen in Figure 1, the robot has an inclined plane used as a ramp placed in front of the robot’s main body. It extends from the top of the robot to the floor in order to prevent any obstruction to slide underneath the robot and potentially disrupt its maneuvering capabilities. Also, while protecting the robot from being scooped up, it could also scoop under the opposing robot and cause it to flip over and become disabled.
           

Figure 1: A Lego NXT Robot with a ramp installed in front of the main body.
            An even greater defensive design is the protection of the robot’s locomotion. Some designers have gone as far as to use pieces to make a guard for their wheels as shown in Figure 2 below. In the picture you can see the structure built around the wheels to protect them being dislodged and also to prevent the gears from being disrupted. Without these the wheels could become loose, and eventually the robot would become immobilized.


Figure 2: Lego NXT Robot. A cage-like shell is encased around the wheels of the robot to protect it from potential damage.

Pertaining to how the robot will sense the environment around it, one idea most designers include is the use of a color sensor to detect where it is in the ring based on the change of color as seen in Figure 3. The ring will be colored black and the outer line that extends to the edge of the ring will be colored white. When the color sensor senses this change, it should know that it is about to be taken outside of the ring and should perform evasive maneuvers to avoid falling out.

Figure 3: A robot design with the color sensor positioned downward. It is used by sensing the change in color of the arena. That is when it should know that it is about to fall out of the ring.
            To sense where the opponent is located, the general idea is to utilize an ultrasonic sensor. By sending out a sound wave signal and detecting the time it takes for the signal to return, it can determine how far an object is. As seen in Figure 4, the ultrasonic is positioned at the front of the robot. The idea is to use the sensor to detect the opposing robot. When it does detect, the robot will perform the maneuvers necessary to push the robot out of the ring.

Figure 4: A robot design with an ultrasonic sensor. It is used to detect the opposing robot  in order to find out where it needs to move.
Design Goal
The main goal of the project at hand is to design a robot that will portray sumo-like characteristics. In order to achieve the main goal, two main attributes have to be discussed: The offensive attributes of the robot and the defensive attributes.
In regards to the defensive attributes, the robot will be constructed with a low gear ratio, which will provide more torque, which would provide more power rather than more speed. This trait will pose a great effect while the robot is under attack. If the other robot is pushing on our group’s robot the torque will provide a robust grip and power, hence defending itself against an enemy push. The sumo-robot will also have 8 wheels, which will help keep traction while an enemy is pushing. The color sensor will be extremely important in the defensive aspect of the competition. There will be a white line tracing a circle of 77 cm where the inside of the circle will be a dark color. Two color sensors will be place at each end of the sumo-robot facing downwards in order to detect the change of color and back up in order to stay in the circle. There is a specific difference with pre-existing designs; our robot will have two color sensors instead of a classic one-color sensor robot. This is mainly because an enemy robot could be pushing the side of the robot that does not have the sensor and when the robot reaches the line it will be too late for the sensor to react because more than half of the robot would be already over the line. Therefore 2 sensors at back and front of the robot will avoid that problem.

In regards to the offensive attributes of the robot, there will be two ultrasonic sensors placed at the top of the robot in order for the robot to detect an enemy and attack it. The reason behind two ultrasonic sensors instead of the common one sensor is simple. With two sensors our robot would detect the enemy robot faster and attack faster anticipating an enemy attack. Another fundamental offensive characteristic that the robot will have in order to successfully push the robot out of the ring is a motor-operated lifter. It will be placed at the front of the robot and the target of this offensive trait is to lift the opposing robot so the wheels of the robot will be useless and therefore leave the enemy robot completely defenseless. A third motor will operate this lifter. On the back of the robot there will be a slanted surface which will lessen the force of an enemy attack because it is much harder to push on an angle. These offensive attributes differ from pre-existing models because a pre-existing model will have only one attack mechanism, and normally a motor does not power it. In this particular case, the robot has two attack mechanisms, which prevents an attack from the back. Therefore the robot can defend itself from the front and the back.
Project Deliverables
This group will be handing in a working NXT robot that will compete against other robots in the final competition. At the end of the term, this robot will be completed to what is shown in the Project Schedule below. However, some minor modifications may be done over the course of the term.

Project Schedule
Week 3
To have a strong chassis, working gear system for the wheels, and ideas about where to place certain sensors
Week 4
To stabilize the gears, provide protection for the wheels by constructing a low clearance wall, and developing a design for a ramp to place at the front of the robot 
Week 5
Finish the set physical design for the robot and smooth out any flaws
Week 6
Start developing the code for each specific sensors and start to develop a search pattern to find the other robot
Week 7
Modify the search pattern and start to integrate each piece of coding from each sensor
Week 8
Modify the code to make sure that it works as designed and fine tune any bugs in the program
Week 9
Test the robot against another robot and see what needs to be fixed or changed
Week 10
Make sure the robot works as intended and begin the competition

Projected Budget
 There is no projected budget for the project. When or if extra parts are required, they can be provided via the Engineering Labs in Bossone. However, if the parts required for our design are not available for the Labs to provide, the group will directly pay for the parts.

References

[1] R. Primerano. (2012). Engineering 103: Introduction to Engineering III [Online]. Available: http://core.coe.drexel.edu/engr103/downloads/websiteInstruction.pdf
[2] (2004-2011). Unified Sumo Robot Rules [Online]. Available FTP: http://robogames.net/rules/all-sumo.php

Thursday, April 12, 2012

Student Biography

STUDENTS:
  • Phillip Panuccio
  • pjp59@drexel.edu
  • Civil Engineering
  • Design/Blog Website Overview


 


  • Charles Cramer
  • cbc46@drexel.edu
  • Electrical Engineering
  • Design/Construction of NXT Robot 














  • Thomas Vasile
  • twv25@drexel.edu
  • Computer Engineering
  • Design/Programming the NXT Robot




















  • Sebastian Borja
  • esb47@drexel.edu
  • Civil Engineering
  •  Dsign/Contruction of NXT Robot














    ADVISOR(S):
    • Eli Fromm
    • fromm@drexel.edu
    • College of Engineering