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

Revision:
45:81dd782bc0b4
Parent:
44:b4a00fbab06b
Child:
46:df2c2d25c070
diff -r b4a00fbab06b -r 81dd782bc0b4 main.cpp
--- a/main.cpp	Sun Jul 28 01:22:01 2019 +0000
+++ b/main.cpp	Sun Jul 28 01:52:34 2019 +0000
@@ -53,19 +53,18 @@
     buttonsInit();
 
     // Test routines
-    //testMotors();
+    //testButtons();
     //testEncoders();
+    //testMotors();
     //testMotorSpeed();
-    //testLineSensors();
     //testL3g();
     //testL3gAndShowAverage();
     //testTurnSensor();
     //testReckoner();
-    //testButtons();
-    testDriveHome();
-    //testFinalSettleIn();
-    //testCalibrate();
-    //testLineFollowing();
+    //testDriveHome();
+    //testFinalSettleIn();  // doesn't really work
+    //testLineSensorsAndCalibrate();
+    testLineFollowing();
     //testTurnInPlace();
     //testCloseness();
     //testLogger();
@@ -137,13 +136,22 @@
 
 void loadLineCalibration()
 {
-    /** QTR-3RC **/
-    lineTracker.calibratedMinimum[0] =  100;
-    lineTracker.calibratedMinimum[1] =   94;
-    lineTracker.calibratedMinimum[2] =  103;
-    lineTracker.calibratedMaximum[0] =  792;
-    lineTracker.calibratedMaximum[1] =  807;
-    lineTracker.calibratedMaximum[2] = 1000;    
+    // QTR-3RC calibration from contest in 2014.
+    //lineTracker.calibratedMinimum[0] =  100;
+    //lineTracker.calibratedMaximum[0] =  792;
+    //lineTracker.calibratedMinimum[1] =   94;
+    //lineTracker.calibratedMaximum[1] =  807;
+    //lineTracker.calibratedMinimum[2] =  103;
+    //lineTracker.calibratedMaximum[2] = 1000;    
+
+    // QTR-3RC calibration from David's home setup, 2019-07-27.
+    // Generated with testLineSensorsAndCalibrate().
+    lineTracker.calibratedMinimum[0] = 210;
+    lineTracker.calibratedMaximum[0] = 757;
+    lineTracker.calibratedMinimum[1] = 197;
+    lineTracker.calibratedMaximum[1] = 1000;
+    lineTracker.calibratedMinimum[2] = 203;
+    lineTracker.calibratedMaximum[2] = 746;
 }
 
 void updateReckoner()