Need Feedback Device

Our robot canon is amazing but we are having difficulty finding a suitable device to send the coordinates back to the frc controller to tell what the canon is pointed at, any solutions?

Anthony Peck,
Integration Manager
Team 1806

Their are several choices, All with various levels of coding difficulty. You can use pots to get the relationship between your robots frame and where the cannon is pointed, if your cannon can point separately from the bots frame. You can use the vision system to tell where your frame is pointed in relation to the target. You can use the gyro sensor to measure relative rotation from a known starting point and the acceleration sensor to get a relation ship between the sensors angle and down when things are not moving and a indication of movement along two axis when properly mounted. You can bolt the cannon down and turn the bot, or you can have a cannon that moves relative to the frame (as long as it doesn’t reach outside of the 38 by 28 starting boundary of the bot) Hope this give you some idea of what to do further research on. The Tips doc that first publishes is also a good starting point. http://www2.usfirst.org/2006comp/other/FIRST_Guidelines,Tips,&_Good_Practices_Rev_B.pdf

Pots give an absolute position information back. If the power is removed, pots will give you the same info when the power is restored. Encoders and rate sensors (gyros) are relative devices. Once power is turned on, these devices re-initialized.

Each type have their advantage and disadvantage, Pots (once set) are very easy to read but are not accurate. Encoders and rate sensors are very accurate but more difficult to program. Also, the robot must start in the exact same position.

A lot of factors become involved in selecting the right type of sensor. Example, adding an encoder on a canon that has a lot of mechanical backlash is a lot of work. A pot would be a better selection.

Unfortunately, there is no easy answer. Too many variables.

Just do what the camera does, and I will leave it at that to make it fun :wink: No gyroscopial accelerometers needed :smiley:

The camera uses pots (in the servos) to get it’s degree measurements, which is why having centered servo’s is important. I think using potentiometers has been mentioned. Also a shaft encoder (probabely visual would be best) would work fine.

Encoders can be used to obtain “absolute” position by generating an index pulse using a switch that is hit when you move past the position you’d like to call 0. We used this feature for our arm’s manipulator on last year’s robot.

Encoders are nice when you want to make something spin more than 360 degrees, just create a function that watches for X number of encoder pulses and shuts the motor down after that occurs. If you keep counting pulses even after the motor “shuts down” you can keep track of how much further you went as a result of inertia and other delays.

I can give you the code we generated last year to do some of these simple motion tasks. It’s ugly but it works and I’ll actually share it all with you instead of keeping the “secret sauce” to myself. Send me a PM on here if you are interested.

Best of luck with your rookie year,
-Eric

One thing you have to be very careful about when using encoders is slippage. Using encoders during autonomous mode when the robot is in minimal contact with objects that would cause traction lose (like other robots smashing into you :ahh: ) is very useful, but when you move into a match setting your encoder derived position will slowly become less accurate due to slippage, sliding perpendicular to your drive wheels, etc.

One other solution is an ultrasonic sensor:

http://www.parallax.com/detail.asp?product_id=28015-5pack

One team has already posted a PICTURE of their setup using this particular parallax model.

Other than that, your safest bet would probably be the camera :wink:

good luck with your rookie season!