David's line following code from the LVBots competition, 2015.
Dependencies: GeneralDebouncer Pacer PololuEncoder mbed
Fork of DeadReckoning by
main.h@31:739b91331f31, 2014-03-04 (annotated)
- Committer:
- DavidEGrayson
- Date:
- Tue Mar 04 03:04:00 2014 +0000
- Revision:
- 31:739b91331f31
- Parent:
- 28:4374035df5e0
- Child:
- 32:83a13b06093c
testLineSensors seems to work fine with QTR-3RC.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
DavidEGrayson | 21:c279c6a83671 | 1 | #pragma once |
DavidEGrayson | 21:c279c6a83671 | 2 | |
DavidEGrayson | 21:c279c6a83671 | 3 | #include "reckoner.h" |
DavidEGrayson | 21:c279c6a83671 | 4 | #include "line_tracker.h" |
DavidEGrayson | 21:c279c6a83671 | 5 | |
DavidEGrayson | 28:4374035df5e0 | 6 | void loadCalibration(); |
DavidEGrayson | 28:4374035df5e0 | 7 | |
DavidEGrayson | 21:c279c6a83671 | 8 | void waitForSignalToStart(); |
DavidEGrayson | 28:4374035df5e0 | 9 | void findLineAndCalibrate(); void findLine(); // two alternatives |
DavidEGrayson | 21:c279c6a83671 | 10 | void turnRightToFindLine(); |
DavidEGrayson | 21:c279c6a83671 | 11 | void followLineToEnd(); |
DavidEGrayson | 21:c279c6a83671 | 12 | void driveHomeAlmost(); |
DavidEGrayson | 21:c279c6a83671 | 13 | void finalSettleIn(); |
DavidEGrayson | 21:c279c6a83671 | 14 | |
DavidEGrayson | 28:4374035df5e0 | 15 | void updateMotorsToFollowLine(); |
DavidEGrayson | 21:c279c6a83671 | 16 | void updateReckonerFromEncoders(); |
DavidEGrayson | 21:c279c6a83671 | 17 | float determinant(); |
DavidEGrayson | 21:c279c6a83671 | 18 | float dotProduct(); |
DavidEGrayson | 22:44c032e59ff5 | 19 | bool calibrationLooksGood(); |
DavidEGrayson | 21:c279c6a83671 | 20 | |
DavidEGrayson | 21:c279c6a83671 | 21 | extern Reckoner reckoner; |
DavidEGrayson | 21:c279c6a83671 | 22 | extern LineTracker lineTracker; |