View Single Post
  #11   Spotlight this post!  
Unread 09-04-2007, 09:47
Bongle's Avatar
Bongle Bongle is offline
Registered User
FRC #2702 (REBotics)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2002
Location: Waterloo
Posts: 1,069
Bongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond reputeBongle has a reputation beyond repute
Send a message via MSN to Bongle
Re: Off-season project ideas?

As someone not in high school anymore, I really wish I had a RC and OI to do this stuff myself, they're all pretty fun programming challenges.

Idea #1
If you didn't have an autonomous mode this year, make a successful one. Something I noticed is that 2006 and 2007 had very similar autonomous modes (follow the light->do game action). Having an already-done autonomous for 2006 would have vastly helped any team this year.

Idea #2
Make a general-purpose dead reckoning system with the gyro and accelerometer. Drop a RC, OI, wheel counters, and the gyro/accelerometer chips in your programmers lap and tell him to do it (that's all he needs. He can tape the chips to the RC and just move it around to test). Make it so that you can just call a single function in code like "driveTo(x,y)", and your robot will go there. If you make it so that driveTo(x,y) doesn't return (this can be done with a while loop inside the function that does your getdata/putdata) until your robot is there, then it makes for a VERY easy autonomous mode:

Code:
if(wereHittingTheOtherSideOfTheRack)
{
  driveTo(otherSideOfRackX,otherSideOfRackY) // goes to the other side of the rack
}
doAutonomous() // finds the light and score from current position
Idea #3 (to be used in conjuction with idea #2)
Make an on-robot interface that allows you to specifiy a position on-field for your robot to go to in autonomous without having to recompile the code. At first, this can just be potentiometers for x and y coordinates, but a team at nationals last year had a touchscreen display of the field that allowed them to plan an entire defensive path while they were setting up their robot on-field.

Idea #4
Insipired by pattern-running torpedoes, make a defensive autonomous mode where if it doesn't hit the target the first time, it turns around and tries again with a slightly different aim point. You can use the accelerometer and watch for spikes to detect a hit. Another torpedo-inspired autonomous mode would run a certain pattern once it got to its target point: widening circles, a mow-the-lawn pattern, etc.
Code could look like:
Code:
driveTo(rampPositionX,rampPositionY)
if(weHitObject())
{  nudgeEnemy();
}
else
{  driveTo(startPositionX,startPositionY); // makes another pass
}

Idea #5
Haha, I've been playing too many submarine games lately. Inspired by acoustic torpedoes: Build a microphone that can detect a nearby robot in autonomous mode. If you're playing a defensive autonomous, then you should be able to shut down anything that makes noise on your robot, while the attacking robot will be making lots of noise: driving, shooting, scoring noises. The microphone setup could be very simple: a microphone inside a cone atop a servo. Come to think of it, I don't think there is any way other than this to detect another robot, and I don't think I've ever seen it in action. Code would be very similar to the camera code. To make this a more challenging build, make a parabolic cone so that it detects only in a straight line, and soundproof it so that it still works when your robot is moving.
Edit: This would probably take quite long to do. You'd have to test several mics and tweak your cone so that it only detected things within 5ft of you. You don't want it to detect the audience screaming (and once your opponents determine that you have an acoustically-hunting autonomous mode, they'll be screaming). You'd also have to do lots of tweaking to make it as small as possible while still being useful. You don't want a satellite dish on your robot.

Idea #6
Wire-guided autonomous mod... hahah, just kidding

Last edited by Bongle : 09-04-2007 at 10:37.
Reply With Quote