mirror of
https://github.com/trc492/FtcTemplate.git
synced 2025-07-01 13:01:24 -07:00
Update README.md
This commit is contained in:
committed by
GitHub
parent
379d17debf
commit
7677bcf3de
@ -25,7 +25,7 @@ That's it. Your robot is now ready to be driven in TeleOp mode. The default driv
|
||||
In addition, there are a few more buttons on the driver gamepad that modify how the robot is driven. Click the right bumper on the driver gamepad will toggle between Robot and Field Oriented driving modes. Our library also supports Inverted driving mode allowing the robot to switch the front and back end. This is useful for a robot that has an end effector such as an intake at the back so that the drivers can drive the robot around as if the intake is in front. Press and hold the left bumper allows you to drive the robot at slow speed. This is useful for delicate movement of the robot.
|
||||
|
||||
### Making Drive Base Odometry Work
|
||||
Our library supports both drive wheel motor odometry (using drive wheel motor encoders) and passive wheel odometry (aka dead-wheel odometry or odo pods). To select which odometry to use, change RobotParams.Preferences.useExternalOdometry to true to use passive wheel odometry or false to use drive wheel motor odometry. When using odo pods, you need to provide the odo pod placement info relative to the robot's centroid (*_ODWHEEL_*_OFFSET in RobotParams). To determine the robot's centroid, draw a rectangle with each drive wheel being the corners of the rectangle. The centroid is the center point of this rectangle. It is very important to provide accurate distance offsets of each odo pod wheel to the robot centroid because this affects the accuracy of the odometry calculation. We recommend measuring the offset distances from the CAD model if possible. Measuring the offset distances by hand introduces a lot of error and therefore not recommended. Our library uses ENU (East-North-Up) coordinate system for the robot which means robot centroid on the ground is the origin with X-axis pointing to robot right, Y-axis pointing to robot forward and Z-axis pointing up. Therefore the left odo pod will have a negative x-offset from robot centroid and the right odo pod will have a positive x-offset from robot centroid and so on. Even though our library supports 2 to 4 odo pods, the template code assumes you are using 3 odo pods, 2 pointing forward, typically one on the left and one on the right (Y-axis) and one pointing sideway (X-axis). Our library uses gyro (IMU) to keep track of the robot heading. In theory, it could use the odo pods to calculate the robot's heading but gyro is much more accurate than using odo pods. The picture below shows a typical arrangement of three odo pods on an 18-inch by 18-inch robot. The left parallel odo wheel has the location at (-7.5, 1.5), right parallel odo wheel at (7.5, 1.5) and the perpendicular odo wheel at (0, -6). All units are in inches.
|
||||
Our library supports both drive wheel motor odometry (using drive wheel motor encoders) and passive wheel odometry (aka dead-wheel odometry or odo pods). To select which odometry to use, change RobotParams.Preferences.useExternalOdometry to true to use passive wheel odometry or false to use drive wheel motor odometry. When using odo pods, you need to provide the odo pod placement info relative to the robot's center of rotation (*_ODWHEEL_*_OFFSET in RobotParams). To determine the robot's center of rotation, draw a rectangle with each drive wheel being the corners of the rectangle. The center of rotation is the center point of this rectangle. It is very important to provide accurate distance offsets of each odo pod wheel to the robot's center of rotation because this affects the accuracy of the odometry calculation. We recommend measuring the offset distances from the CAD model if possible. Measuring the offset distances by hand introduces error in the odometry calculation that causes odometry drift and therefore not recommended. Our library uses ENU (East-North-Up) coordinate system for the robot which means robot's center of rotation on the ground is the origin with X-axis pointing to robot right, Y-axis pointing to robot forward and Z-axis pointing up. Therefore the left odo pod will have a negative x-offset from robot's center of rotation and the right odo pod will have a positive x-offset from robot's center of rotation and so on. Even though our library supports 2 to 4 odo pods, the template code assumes you are using 3 odo pods, 2 pointing forward parallel to the driving wheels (parallel odo pods), typically one on the left and one on the right (Y-axis) and one pointing sideway (X-axis), the perpendicular odo pod. Our library uses gyro (IMU) to keep track of the robot heading. In theory, it could use the odo pods to calculate the robot's heading but gyro is much more accurate than using odo pods. The picture below shows a typical arrangement of three odo pods on an 18-inch by 18-inch robot. The left parallel odo wheel has the location at (-7.5, 1.5), right parallel odo wheel at (7.5, 1.5) and the perpendicular odo wheel at (0, -6). All units are in inches.
|
||||
|
||||
**Odo Wheel Layout**
|
||||

|
||||
|
Reference in New Issue
Block a user