Saturday, March 7, 2009

Final results

The contest is over, the robot and tools are packed, and many people are now sleeping. Final scores:

Team NameTotal ScoreRounds
Completed
Heat
Auburn University3314A
University of Tennessee Knoxville2654A
University of Central Florida2544B
University of North Florida2014A
Tennessee Tech University1924A
Christian Brothers University1614B
Western Kentucky University1494A
Virginia Military Institute1444B
UNC Charlotte1144B
University of Louisville1054B
Pellissippi State Tech CC874A
University of Miami854A
FAMU FSU CoE764B
Mississippi State University724B
Clemson University604B
University of South Florida534B
Georgia Southern University202B
University of Florida192A
The Citadel182B
Embry Riddle Aeronautical University182A
Jackson State University172A
University of Kentucky172B
Florida A&M University162A
University of Alabama Birmingham102A
Southern Polytechnic State University102B
Murray State University101B
Guliford Tech CC102A
Mercer University92B
University of South Carolina92A
Virginia Tech02B
Virginia Commonwealth University02A
Old Dominion University02B
University of Alabama Huntsville02B
University of Memphis02B
University of Evansville02A
University of Alabama-12B
NC State University-382A
University of Georgia-5331A

Final round

The robot picked up two items (a can and a plastic bottle, I think) but mis-sorted one. It tried and tried to lift a glass bottle, but couldn't. We received 30 points for the round.

Still waiting

At first, the finals format of running one robot at a time was fun, since everyone could see and cheer eat robot. Now, however, it's just getting long. There are a lot of very tired team members here...11 more robots to go...

Final round 1 complete

Round 1 of the finals is complete now; round 2 begins in a minute or so. There haven't been any particularly high scorers this match; Auburn continues to lead. The current scores:

Team NameTotal ScoreRounds
Completed
Heat
Auburn University2173A
University of Central Florida1543B
University of Tennessee Knoxville1353A
Christian Brothers University1323B
University of North Florida1273A
Tennessee Tech University1173A
Western Kentucky University1093A
Virginia Military Institute993B
UNC Charlotte993B
FAMU FSU CoE663B
University of Louisville653B
Clemson University603B
University of Miami603A
Mississippi State University423B
Pellissippi State Tech CC423A
University of South Florida313B
Georgia Southern University202B
University of Florida192A
Embry Riddle Aeronautical University182A
The Citadel182B
Jackson State University172A
University of Kentucky172B
Florida A&M University162A
Southern Polytechnic State University102B
University of Alabama Birmingham102A
Murray State University101B
Guliford Tech CC102A
Mercer University92B
University of South Carolina92A
Virginia Tech02B
Virginia Commonwealth University02A
Old Dominion University02B
University of Alabama Huntsville02B
University of Memphis02B
University of Evansville02A
University of Alabama-12B
NC State University-382A
University of Georgia-5331A

Final round 1 results

The robot moved and tried hard to gather bottles, but kept running into multiple bottles / cans being swept. So, it never lifted them. Finally, after getting stuck on the field, it backed into the wall and the team ended the match.

Up soon

MSU is coming up soon. We hope it works well...

The matches are fun to watch. Everyone applauds when a robot grabs a recyclable and cheers when the match is finished. That's neat to see.

SECON observations, part II

Miscellaneous thoughts:
  • ESOS is a good thing. The control of a real robot is complex enough that something better than straight-line code is essential. However, for code needing that level of complexity, I'm tempted to develop in Python/Java/whatever on a laptop, then run on a Gumstix when attached to the robot, while doing all low-level code on a PIC via USB.
  • We need some langauge that allows easy creation of a GUI for visualization and control. I'm tempted to just use MATLAB, since that plays so easily with my robotics program. I've found an used a decent package for Java, but it was fairly painful to get a plot up and running. I'm not sure about Python. I'd suspect any C/C++ plot utility would likewise be on the complex side.
  • I'd like to increase the bootloader speed by a factor of 10 and add an auto-bootload on file changed option.
  • There needs to be a better, simple way to exchange data between the PIC and PC. The bootloader could use a little debug window: configureDataExchange(dataType, "printf format string") and send(&ptr, numBytes) with some macros to make calling a bit easier. Also, I need to implement a simple trace buffer for ISR debug.
  • SVN is a good thing. Although I'd like to try GIT when the Windows GUI is a bit more mature. Having version control at the competition (hosted on Steven's laptop) is very important.
  • Bluetooth is a good thing. I'd like to see more use made of it, via robot status / health in a GUI, to give insight into robot behavior. I think enabling programming via Bluetooth would be very helpful.
  • Some sort of simulator to allow firmware development to run more in parallel with mechanical modifications would be very helpful. Perhaps an ESOS PC port with virtual peripherals? Especially for the higher-level control code, this would be nice.
  • Write lots of testbenches, which verify functionality: does A/D, PWM, etc. work when the appropriate inputs are provided or outputs are measured?
  • Use real connectors, not a number of random 0.1" center pins with round female posts. Just buy good connectors and use them. A centralized mounting plate where all connectors go would be very good. Disadvantage: swapping around one IR or disconnecting an antenna is harder if everything is placed in a central connector. Instead, a number of per-peripheral connectors would probably work better. We need to learn how to crimp 0.1" connectors and order lots of pins plus plastic housings.
  • Students need access to the shop -- they need to have keys, since that hour of free time doesn't always match up with someone being there in the shop to allow access. This slowed mechanical progress significantly.
  • It would be nice to have some sort of SECON x1 PCB that's pretty generic -- just a large pinout PIC, voltage supplies, buck converters, probably servo and IR headers -- for earlier experimentation. The 28 pin platforms weren't as helpful in terms of code development.
  • Have a social team event -- a party, or whatever -- at some point, so the team can meet in a non-work environment.
  • Use as much Vex as possible. Get the laser cutter to the point that it's easy to use and have supplies ready so it can be rapidly prototyped. Can we use it to engrave cut or drill points on a piece of metal? In any case, need much better rapid proto abilities.

Finals schedule

Here's the schedule for the final round.

IDTeamRound #
79University of Central Florida3
80Virginia Military Institute3
81University of Louisville3
82Tennessee Tech University3
83Clemson University3
84UNC Charlotte3
85University of Miami3
86Mississippi State University3
87University of North Florida3
88Auburn University3
89Western Kentucky University3
90University of South Florida3
91Christian Brothers University3
92FAMU FSU CoE3
93Pellissippi State Tech CC3
94University of Tennessee Knoxville3
95Pellissippi State Tech CC4
96Tennessee Tech University4
97Christian Brothers University4
98Western Kentucky University4
99University of Central Florida4
100University of North Florida4
101University of South Florida4
102FAMU FSU CoE4
103UNC Charlotte4
104Clemson University4
105University of Tennessee Knoxville4
106Virginia Military Institute4
107Auburn University4
108University of Miami4
109University of Louisville4
110Mississippi State University4

In the finals

In spite of a bad second round, we're still in the finals. However, the scores are cumulative, so placing well will be a big challenge. It starts at 2:00 PM, thirty minutes from now. The firmware team is still staring at the robot, trying to coax it to behave...

Current scores:

Team NameTotal ScoreRounds
Completed
Heat
Auburn University1772A
Western Kentucky University1302A
University of Tennessee Knoxville1252A
Tennessee Tech University1032A
Christian Brothers University932B
University of Central Florida872B
University of North Florida742A
Virginia Military Institute652B
Clemson University502B
UNC Charlotte442B
Pellissippi State Tech CC432A
University of Louisville402B
Mississippi State University392B
University of Miami352A
FAMU FSU CoE292B
University of South Florida212B
Georgia Southern University202B
University of Florida192A
The Citadel182B
Embry Riddle Aeronautical University182A
Jackson State University172A
University of Kentucky172B
Florida A&M University162A
University of Alabama Birmingham102A
Southern Polytechnic State University102B
Murray State University101B
Guliford Tech CC102A
Mercer University92B
University of South Carolina92A
Virginia Tech02B
Virginia Commonwealth University02A
Old Dominion University02B
University of Alabama Huntsville02B
University of Memphis02B
University of Evansville02A
University of Alabama-12B
NC State University-382A
University of Georgia-5331A

Round 2 results

It didn't work -- open the arms but never moved. So not even 10 points for moving. It looks like it was programmed with the wrong code right before we started, rather than the reverted code. Very, very painful...

Competing soon

MSU will soon be up. We're currently 4th our our heat, though10 overall. We're later in the round this time. We hope and pray for the best...

MSU currently #4

The live scoreboard is up, and we're currently #4. Round 2 starts now, so expect other schools to jump ahead as they rack up additional points. Our heat starts at noon, when we hope to do some damage! The current scores:

Team NameTotal ScoreRounds
Completed
Heat
Christian Brothers University631B
Auburn University571A
University of Central Florida471B
Mississippi State University391B
Western Kentucky University371A
Tennessee Tech University331A
Pellissippi State Tech CC331A
Virginia Military Institute301B
University of Louisville251B
UNC Charlotte141B
University of Florida101A

(and many more 10 point scores, then lower)

Heat B Run 1

Within the last hour before Heat B, we worked on the whole system test. On the first try, Bull-E opened its arms and then did nothing. After quick debugging we were able to get the robot moving, but we encountered issues with the IRs and the dog fence. During the last run, Bull-E ran into the hard tube boundary and opened its arms several times against the boundary. Bull-E was moved and continued towards the middle of the practice field, but the right arm fell off. In a haste we cable tied the arm back to its servo because it is essential to have both arms for acquisition. We picked up Bull-E and ran to the competition room. With a full house waiting for Heat B, Thomas and Jeff took the robot to the waiting area while the team and the MSU fans eagerly waited in the stands.

After Heat A, Auburn led with 57 points and Western Kentucky was in second with 37 points. MSU was called to the rightmost field. At the start, Bull-E opened its arms and flap and then took off to the middle of the field. The robot first acquired a glass bottle and successfully stored it. Bull-E then continued forward and acquired a plastic bottle. The plastic was correctly detected, but the lift jammed as it raised the bottle. Thanks to good fail-case coding, Bull-E lowered the bottle to the ground and moved back. It reengaged the bottle again and tried to raise it but jammed and was forced to disengage the bottle. Bull-E tried one more time with the same result. After the third time, the robot continued forward until it passed the dog fence and hit the hard boundary. Jeff tossed a red flag to call time and end the run. With the correctly stored glass bottle and a successful start, our score was 39, which placed us in second. After our run, Christian Brothers scored 63 points, which now places us in third place. Currently Heat B is finishing its first run, and then Heat A will start its second run at 11am. Our second run will be at noon, so check back later for more news...

Final Preparation

The heats have been announced and we are in Heat B. There are 36 teams that have qualified, so they estimate the preliminary round to last around 2 hours. As of now we have 1 hour left until Heat A begins. According to the rules, the scores for each round will accumulate as the robots advance, so after the final round the robot with the highest overall score wins. Initially only 8 teams would make the final round but I believe that more teams will be allowed to advance.

We completed the sorting test with the 2 IRs placed over the top of the lift. The navigation code was tested for corners and Bull-E was successfully able to escape the corners. The object detection IRs were tested on a practice field and a few of them were giving false positives, but now they are working correctly. After IR calibration, we will run full system tests and then prepare for the competition.

At 8am today the team will have gone 24 hours without sleep, but we are still pushing ourselves forward with high spirits. Dr. Jones has been gracious in helping us acquire the parts and tools necessary for the robot redesign, and Ricky Gray, a grad ECE student, has been very helpful in our brainstorming and rebuilding. We will continue to update during the heats as long as we have internet.

Roaming

Just a quick update. Bull-E has been fully wired with all the IRs and antennas in place. We finally got a chance to use a practice field, so we able to calibrate the antennas with the dog fence. Bull-E was able to roam around the field while remaining within the dog fence boundary. There were a few cases where the robot would reach a corner and would continuously turn left and right withoug leaving the corner. While the navigation code is reexamined to handle the fail cases, the rest of use are testing the acquistion arms and the sorting. The arms seem capable of acquiring all three types of containers, so we are now focused on the sorting. More updates to come...

Friday, March 6, 2009

Qualified!

Good news, Bull-E has qualified to compete in the competition! The robot met all the size requirements and was able to travel a foot autonomously. We will be competing in Heat B this morning, which gives us some more time to test the software and finish the wiring. Here are some before and after pictures of the bottom of Bull-E:














As you can see, we had to remove all the tracks and reposition the motors to the rear in order to move the wheels. The primary issue now is that the bottom of the frame slightly drags on the Astroturf which can cause the wheels to spin out. To fix this, we are trimming the front and back of the bottom to provide more clearance.

From looking at the competition, it appears that most of the robots are using cameras to detect the containers on the field and and an arm to lift the containers to the compartments. We will post pictures of the other robots soon, but we feel confident that we Bull-E can seriously compete now that it is finally qualified. We will continue to post updates throughout the night and day to keep checking out the blog.

It's Alive!

After lying silently on the operating table all afternoon, Bull-E has finally come to. The robot drove back and forth and turned left and right a few times just before dinnertime. And, to our pleasant surprise, it has gained a noticeable amount of speed since this morning.

We're off soon to test it on the practice fields and try to qualify. Hopefully, someone can post some before and after photos in a little while.

The Story Behind the Wheel

We here in Atlanta are greatly indebted to Krishna, the smiling Indian man you see here:You see, Krishna packed the little green wheels we are using with our redesigned robot. We think everyone should know that Krishna packed said wheels in his personal belongings; for what reasons, we are unsure. Either way, he brought them and should he have elected to leave them behind, we might be in the middle of a radical redesign.

Here are some photos of our redesign process. Note that we have set up a robotics lab (complete with oscilloscopes, multimeters, power supplies, hand drills, power tools, hack saws and otherwise) in Team B's hotel room.


Brooke and Thomas

Kevin Vu recalibrating some FSR values

Thomas drilling some stuff on the bottom of the robot.

Jonathon, Krishna, and Steven enjoying fruit while watching Thomas

Finally, Vu is showing off the t-shirt he designed. We will all wear one tomorrow.

Grace

In looking for ways to redesign our robot, we pondered the use of some omnidirectional wheels the University of Memphis was using. So, I asked if we could buy some from them. They were happy to, and even mentioned they had spare motors and many others things. That's amazing; we certainly owe them a thank-you. As it turns out, we'll use the wheels we have, since the omnidirectional wheels were a little fatter, making it harder to squeeze them in the size constraints.

A quick trip to pick up pizza

Being cheap, I (along with Johnathan and Davis) decided to pick up Papa John pizza rather than have them deliver it. Besides, I wanted to swing by a grocery store to get snacks for the team. Then, it turned out we needed a charger for the cordless drill (ouch! important item for major mechanical modifications) and rulers. But Lowe's didn't sell rules, so we went to Office Depot. While there, the team asked for a 1/2" drill bit, so we went back to Lowe's. While in transit, we sampled the pizza for quality assurance purposes and reported to the team back at the hotel that the quality was very acceptable. They didn't seem pleased. But we finally got back, after a 2 1/2 hour supply run.

Did you know that battery chargers for Black and Decker drills, labeled "charges any battery between 9.6 and 18 V" don't actually fit the 18V B&D battery we have? Ricky and Krishna are now on the road.

On another note, mechanical modifications look very doable and should come together sometime soon. We must qualify the robot at 6:00 AM tomorrow morning. T-12 hours, 30 minutes and counting. Hopefully, snacks will power the team as they work through the night...

Size surprise

The judges just informed us that our robot is too big: the footprint on the floor must be 12x12. Relevant rules (lines 44-48 on page 2):

2. The robot must be able to fit in a 12x12x18 inch (LxWxH) box at the start of each match.

3. After the beginning of the round, expansion is unrestricted, but nothing can touch the playing field outside the 12”x12” footprint. The robot does not have to return to its original size.

FAQs:
7. The rules say that the robot must be 12"x12"x18" is the 18" required to be the height?

-Technically no, those are the dimensions of the box. Be careful, see updated rules concerning expansion.

22. I am somewhat confused about this statement "After the beginning of the round, expansion is unrestricted, but nothing can touch the playing field outside the 12"x12" footprint." Say we have a design that included a fold out ramp that scraped the ground in front of the bot outside of the 12 X 12 footprint; would we be disqualified or is this allowed?

-Yes a ramp scraping on the playing field would violate that rule. Any wheels, casters, slides that contact the ground for "load baring reasons" must stay in the 12"x12" footprint. If you have something like a brush or something that sweeps the bottles onto the robot and the brush makes contact with the playing field, that is fine.


We think the FAQs and rules were updated at nearly the same time -- we read an updated rule, but not the changed FAQ. It's time for an Apollo 13...

Current plan: the rules allow a robot that exceeds the 12x12 footprint IF it doesn't touch the ground outside the 12x12 area. So, perhaps we'll replace the tracks with wheels and move them inside the frame. A quick meeting with the judges verified that this is legitimate and even expected (one other team is taking this approach).

Breakfast

Waffle house is convenient and tasty, a great way to start the day!

SECON observations

Part of the fun is wandering the floor and asking other teams how they've done things. My notes:

The University of Kentucky team is primarily composed on MEs. Our team stated that the mechanical design was the most challenging aspect. For Memphis, their ME senior design is two semesters while EE is one semester, so they've lost a lot of their EE support when the spring semester started. They're using a robostix, an add-on board for a gumstix, but withut the gumstix (since, I believe, all they really need is a microcontroller, not a full processor). However, they've run out of pins to drive all their servos.

They make extensive use of Vex: they found linear actuators, tracks (like our team), chains, and so on. Here's their robot, followed by a close-up of the linear actuators. Very slick.


Thursday, March 5, 2009

Road trip beginnings

Here's what a van fully loaded looks like -- 11 passengers (the max), 1 robot, and lots to look forward to. More tomorrow!

On the road again...

MSU SECON Team 2009 begins its road trip to Atlanta.

Wednesday, March 4, 2009

Looks like another late night

We're on the home stretch now, and will be pulling some late nights getting everything ready to go. We're leaving for Atlanta tomorrow and I am willing to bet that most of us will sleep in the van on the way there.

Expect an update tomorrow when we arrive in Hotlanta.

Monday, March 2, 2009

Welcome!

Welcome to Mississippi State's SoutheastCon 2009 Hardware team's blog. We will update this blog throughout the competition, so keep checking back.