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

Committer:
DavidEGrayson
Date:
Fri Feb 28 01:07:14 2014 +0000
Revision:
24:fc01d9125d3b
Parent:
22:44c032e59ff5
Child:
28:4374035df5e0
Fixed the problem with LineTracker always thinking the line was visible.

Who changed what in which revision?

UserRevisionLine numberNew 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 21:c279c6a83671 6 void waitForSignalToStart();
DavidEGrayson 24:fc01d9125d3b 7 void findLineAndCalibrate(); void loadCalibrationAndFindLine(); // two alternatives
DavidEGrayson 21:c279c6a83671 8 void turnRightToFindLine();
DavidEGrayson 21:c279c6a83671 9 void followLineToEnd();
DavidEGrayson 21:c279c6a83671 10 void driveHomeAlmost();
DavidEGrayson 21:c279c6a83671 11 void finalSettleIn();
DavidEGrayson 21:c279c6a83671 12
DavidEGrayson 21:c279c6a83671 13 void updateReckonerFromEncoders();
DavidEGrayson 21:c279c6a83671 14 float determinant();
DavidEGrayson 21:c279c6a83671 15 float dotProduct();
DavidEGrayson 22:44c032e59ff5 16 bool calibrationLooksGood();
DavidEGrayson 21:c279c6a83671 17
DavidEGrayson 21:c279c6a83671 18 extern Reckoner reckoner;
DavidEGrayson 21:c279c6a83671 19 extern LineTracker lineTracker;