3216's gear placing autonomous

Because it doesn’t seem to me that many teams are offering autonomous gear placement this year, I thought I’d show off what we finished today.

Videos:
https://drive.google.com/file/d/0B9aKcUEuZ-9fWW5lcHBMQ3E1STA/view?usp=sharing
https://drive.google.com/file/d/0B9aKcUEuZ-9fd0syX2habng5M2c/view?usp=sharing
https://drive.google.com/file/d/0B9aKcUEuZ-9fdmVEX05Qc2ZrOTQ/view?usp=sharing

The autonomous routine checks the value of a SendableChooser on the dashboard so we can select where we’re starting from. It can either go straight, or turn left or right in order to hit the peg from any starting position. The entire algorithm is backed up by rangefinders, vision, and gyroscopes to make it a very repeatable and robust system. It can also be activated in teleop (last video) so the driver is spared the careful lining up of a gear placement.

We have yet to debug the next portion of the code, which is designed to check if we’re in the right spot (left side of blue or right side of red), that would allow us to target the high goal and shoot balls right after we place a gear, as we should have an extra 5-10 seconds in auton that we won’t want to waste.

If you’re wondering, there isn’t a gear on the robot because of the placement of the camera on this particular test bot. Obviously this won’t be an issue during the competition when we can do this on our real bot.