View Single Post
  #5   Spotlight this post!  
Unread 30-04-2013, 11:42
DjScribbles DjScribbles is offline
Programming Mentor
AKA: Joe S
FRC #2474 (Team Excel)
Team Role: Mentor
 
Join Date: Oct 2011
Rookie Year: 2012
Location: Niles MI
Posts: 284
DjScribbles is a splendid one to beholdDjScribbles is a splendid one to beholdDjScribbles is a splendid one to beholdDjScribbles is a splendid one to beholdDjScribbles is a splendid one to beholdDjScribbles is a splendid one to beholdDjScribbles is a splendid one to beholdDjScribbles is a splendid one to behold
Re: Innovative Controls

This year was still pretty basic for controls on our team.

We used a Hall-Effect Sensor (https://www.sparkfun.com/products/9312 using the typical 3 wire circuit described in the datasheet) coupled with two magnets on our shooter wheel to compute RPM. The RPM was fed into a bang-bang control (which switched to power control mode during shots) to control our single-wheel curved-shooter RPM.

We used a gyroscope (kit) at the front-center of our robot to make sure our multi-disk autonomous routine drove straight. We simply used the output of the gyro to feed the myRobot.Drive(speed,angle); function, with the angle input capped at 10degrees. We also hoped to use this to drive a center-line autonomous, but I didn't see the need for it on Galileo, where most floor loaders that were better than us already had it.

I hoped to use encoders on our drive wheels to use position control during autonomous, but we were unable to get them working before bag date, and found tweaking time was good enough.

I had thought to use an accelerometer to help compensate our loader mechanism (which picks disks up from the floor, lifts up, and tosses them into a large tray where they funnel into our shooter bucket) so that we would load more gently while driving back, and more powerfully while driving forward, and not load at all while spinning. The code is in place, but I never had time to test it, since it solved a fairly minor/controllable problem.

We also had a 9-shot autonomous routine that was very close to working, however I couldn't get the team motivated enough to test it (tried it 5 times in practice, one or two more would have probably had it working, but the problems were with the timing on the first two disks, which messed up the rest of the routine, so it looked bad to them). We definitely had a robot capable of doing the 9 shot, I wish we could have completed it.