Mobility's sensor controlled functions (Drive Straight, Turn Degrees, and Drive Distance) need manual controls (meaning they don't use sensors, incase the sensors break). Things that need manual controls:
[x] Drive Straight (Gyro)
[ ] Turn Degrees (Gyro)
[x] Drive Distance (Encoders)
Suggestions for how to implement "dumb mode"
Drive Straight - just set both motors to the same speed and hope it works
Turn Degrees - Time based. Measure the rotation speed of the robot, and then just divide the degrees you want to turn by the measured rotation speed (rotation speed should be stored in a constant so we can update it easily for the real robot)
Drive Distance - Time based. Measure the linear speed of the robot, then divide the distance you want to travel by the measured speed (again, store the speed in a constant for easy updating)
Finished drive distance framework with 2731eab. Just need to fill the DISTANCES_TO_TIMES array for the real robot. It currently has working values for the anderson bot
Mobility's sensor controlled functions (Drive Straight, Turn Degrees, and Drive Distance) need manual controls (meaning they don't use sensors, incase the sensors break). Things that need manual controls:
Suggestions for how to implement "dumb mode" Drive Straight - just set both motors to the same speed and hope it works Turn Degrees - Time based. Measure the rotation speed of the robot, and then just divide the degrees you want to turn by the measured rotation speed (rotation speed should be stored in a constant so we can update it easily for the real robot) Drive Distance - Time based. Measure the linear speed of the robot, then divide the distance you want to travel by the measured speed (again, store the speed in a constant for easy updating)