View Single Post
  #4   Spotlight this post!  
Unread 23-03-2003, 16:57
StevenT StevenT is offline
Registered User
#0111 (Wildstang)
 
Join Date: Dec 2002
Location: Schaumburg, IL
Posts: 2
StevenT is an unknown quantity at this point
StangPS

Quote:
1. This robot knew where it was
2. This robot knew where it wanted to go
3. This robot had the means to get there
Thanks for the compliment and thanks for noticing! I'm so glad that someone not on our team realized what happened during that match. The students and adults that worked on our positioning system (called "Stang Positioning System" aka "StangPS") thought that was great but we figured that no one else would appreciate it.

Your three observations above are exactly correct.
1)The robot knows where it is by using our custom circuit (with a Motorola HC08 processor) that reads a homemade encoder wheel, the gyroscope and the wheel direction pot. The pot tells the custom circuit where the "crab" wheels are pointed relative to the frame of the robot. The gyro is integrated to tell us exactly where the robot is pointing on the field (like a compass). With that information, as the wheel moves, we can map our current location to an X,Y coordinate on the field. So, the custom circuit always knows where the robot is on the field (within about an inch...although position is reported to the RC in 2" increments).

2/3)The robot location is passed from the custom circuit to the RC, which is programmed up with a list of X,Y "waypoints" on the field. Each loop, the RC uses trigonometry (TAN) to calculate the angle the that the "crab" wheels need to be pointed so they are always aimed at the next target waypoint (what a great real world application of trigonometry!) Anyway, the robot can be pushed off course or twisted but we will continue to try and get to our next waypoint.

We also have some features programmed into the RC where we will determine the most efficient direction to aim the drive wheels to get to our next waypoint. I can go into details, but the idea is we don't program in how to drive the wheels, we program in waypoints and the RC figures out the most efficient way to get to that waypoint based on its current location on the field.

One other nice feature is that the robot is constantly correcting its angle (or compass reading) on the field so that it will hit the bins exactly square with the wings every time. The match you were talking about, we ended up getting turned so much by the wall that we couldn't correct fast enough, but in a normal run we will hit the bins perfectly straight every time. Even if we are hit and twisted, or a bin is placed in the way we will constantly correct.

There were numerous WildStang members at GLR that were taking video of the matches for soap108.com, so I'll make sure that someone posts a link to the video of this match.

I'll also have someone post screen shots of the computer program we have that allows you to click on points on the field and this program will output the waypoints that are programmed into the RC. This allows us to write new programs or make modification while at a competition.

We have a few students that wrote the majority of the software logic in the RC (with help from the engineers) to implement this autonomous operation and I am sure they would be happy to explain it in more detail either at the Midwest Regional or on this thread so feel free to post any questions you might have!

PS: Here is why we hit the ramp wall in the first place...Just prior to that match we had a problem with the chain on our wings and we were working like mad to fix it prior to the match. We were in the pits and actually saw the video feed of our match being setup on the field. We ran down the hallway and onto the field. In the rush, we didn't setup our wheels to be aimed in the correct direction. Since our wheels only have 360 degrees of rotation (not continuous turn) the RC ended up calculating that our only way to get the top of the ramp was to reverse the direction of the drive wheels (instead of the usually smooth arching turn we usually use) and this caused us to hit the ramp wall...for a bit!

Last edited by StevenT : 23-03-2003 at 22:31.