David's dead reckoning code for the LVBots competition on March 6th. Uses the mbed LPC1768, DRV8835, QTR-3RC, and two DC motors with encoders.
Dependencies: PololuEncoder Pacer mbed GeneralDebouncer
reckoner.h
- Committer:
- DavidEGrayson
- Date:
- 2014-02-24
- Revision:
- 17:2df9861f53ee
- Parent:
- 13:bba5b3abd13f
- Child:
- 21:c279c6a83671
File content as of revision 17:2df9861f53ee:
class Reckoner { public: Reckoner(); // Together, cos and sin form a vector with a magnitude close to 2^30 that indicates // the current position of the robot. // cos corresponds to the x component of the orientation vector. // sin corresponds to the y component of the orientation vector. int32_t cos, sin; // Together, x and y are a vector that points from the starting point to the // robot's current position. // The untis are Df / (1<<14), where Df is the distance the robot moves forward // or backwards due to a single encoder tick. int32_t x, y; void handleTickLeftForward(); void handleTickLeftBackward(); void handleTickRightForward(); void handleTickRightBackward(); void handleForward(); void handleBackward(); void handleRight(); void handleLeft(); }; extern Reckoner reckoner;