Is it possible to do Odometry for Vex IQ with Tracking wheels. Because I haven’t found any device like an encoder for Vex Iq to measure the position of the robot. We have a robot motor limit in vex IQ, and I want a tracking wheel that tracks side ways movement to make sure that it doesn’t go side ways. Any help would be highly appreciated !
I have been trying to figure out odometry in IQ for the past three months. I think you would have to use the brain’s inertial sensor to track non-linear movement (forward and back). The gen2 inertial sensor can track you x, y, and z axis accelerations, so it is techinaclly possible. However, my VRC friends said that you uslly need two or three inertial sensors to get an accurate reading (use a kalman filter) I do think that it is possible, and it would almost garuntee you a judged award (if you have good notebooking skills) and possible skills champion.
Good luck! (and if you igure out how to track your x and y axis, acceleration please tell me!)
The brain inertial itself has it, and I have a gen two, can I use that ?
There are no shaft encoders for Vex IQ at this point, so motors are the only way at this point to track motion beyond trying to use the Gen 2 brain inertial, which is probably going to be difficult to get an exceptionally accurate track.
This would be quite impractical for actual competition use, but it could be great notebook material: Gyro-based Odometry. I don’t mean the regular use of the gyros, where they sense robot rotation, but rather having them sense axle rotation by being attached to the axles. Due to the cables connecting the gyros to the brain, however, the connection would have to be gear-based, with two gyros switching off. One gyro would be spun until it reaches a predetermined point and then a PTO or similar mechanism would make the other gyro be the one spun. While one gyro is spinning, a mechanism would have to return the other gyro to its home position (likely gravity-powered) so that its cord wouldn’t wrap around the axle.
You could try painting half a wheel/gear another color and using a color sensor to look at that wheel/gear. When the wheel has changed color twice, it has made a full rotation.
Hi, can you say some more about this? The usable space on the IQ field is ~6x6’ so it’s a 1/4 of the VRC field. It’s a one min period, so the time is 1/2 of VRC. In that small space and in that small time it would be hard for it to drift that much. I watched teams last week at a VRC event do a pretty decent job with only one IMU.
Thanks.
@Foster fair question. What I was trying to refer to was using only the IMU for odometry, vs also having independent tracking wheels to augment the true position calculation. Which, with no rotational shaft encoder for VIQ, would make for a more difficult usage of the ‘typical’ odometry since the motor encoders on the drivetrain are likely the only method.
Certainly the Gen 2 IMU is verrrrry capable when it comes to sensing robot azimuth orientation on the field. Working to try to utilize the accelerometer portion of that information likely could augment the position a little more. That’s also a lot of very advanced math that I would think would be beyond the reach of most elementary and middle schoolers. Granted, there are things like the V5 JAR template and others to draw from, but modifying for IQ is likely going to present some challenges.
OK, this is the part I was most interested in. I’ve been seeing posts for Odometry and I’ve been going “Hey all that stuff exists in the V5 metal program, go do that.”
I’m pretty much against a drop in library for IQ that would do pathing. The rules state in V5 that the software should match the skill level of the roboteers. Since I see VRC roboteers that don’t understand PID, it’s unlikely that ES students will understand odomentry.
I am often confused why teams don’t use the floor stripes to manage where they are. Line following is super simple and the goals this year correspond to the lines. Thanks Mike for the post.
How would you prove to the judges that you understand the math? I am working on odometry, and I know and understand the math behind it. I just don’t want the judges to think that we cheated…
My recommendation, as a mentor, would be to have calculations that you have done in the notebook. Explain the steps, how that is done with the robot components, when your code has a problem and doesn’t work like you had intended, show a very detailed breakdown of how you manage to troubleshoot and find the cause of what did not work.
Thanks! This helps.