Changed butterknife's constants to fix drivetrain.

Fixed test.

Change-Id: I1474ea42e2b613a9e87438a472159e7087669001
diff --git a/frc971/control_loops/drivetrain/drivetrain_config.h b/frc971/control_loops/drivetrain/drivetrain_config.h
index 24cc628..efb5f59 100644
--- a/frc971/control_loops/drivetrain/drivetrain_config.h
+++ b/frc971/control_loops/drivetrain/drivetrain_config.h
@@ -51,6 +51,10 @@
   bool default_high_gear;
 
   double down_offset;
+
+  double wheel_non_linearity;
+
+  double quickturn_wheel_multiplier;
 };
 
 }  // namespace drivetrain
diff --git a/frc971/control_loops/drivetrain/drivetrain_lib_test.cc b/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
index aa18aec..8c739cd 100644
--- a/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
+++ b/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
@@ -49,7 +49,13 @@
 
       ::y2016::control_loops::drivetrain::kHighGearRatio,
       ::y2016::control_loops::drivetrain::kLowGearRatio,
-      kThreeStateDriveShifter, kThreeStateDriveShifter, false, 0};
+      kThreeStateDriveShifter,
+      kThreeStateDriveShifter,
+      false,
+      0,
+
+      0.25,
+      1.00};
 
   return kDrivetrainConfig;
 };
@@ -88,8 +94,7 @@
   // Constructs a motor simulation.
   // TODO(aschuh) Do we want to test the clutch one too?
   DrivetrainSimulation()
-      : drivetrain_plant_(
-            new DrivetrainPlant(MakeDrivetrainPlant())),
+      : drivetrain_plant_(new DrivetrainPlant(MakeDrivetrainPlant())),
         my_drivetrain_queue_(".frc971.control_loops.drivetrain", 0x8a8dde77,
                              ".frc971.control_loops.drivetrain.goal",
                              ".frc971.control_loops.drivetrain.position",
diff --git a/frc971/control_loops/drivetrain/polydrivetrain.cc b/frc971/control_loops/drivetrain/polydrivetrain.cc
index 121a231..407c23b 100644
--- a/frc971/control_loops/drivetrain/polydrivetrain.cc
+++ b/frc971/control_loops/drivetrain/polydrivetrain.cc
@@ -112,15 +112,18 @@
   const bool quickturn = goal.quickturn;
   const bool highgear = goal.highgear;
 
-  const double kWheelNonLinearity = 0.25;
   // Apply a sin function that's scaled to make it feel better.
-  const double angular_range = M_PI_2 * kWheelNonLinearity;
+  const double angular_range = M_PI_2 * dt_config_.wheel_non_linearity;
 
   wheel_ = sin(angular_range * wheel) / sin(angular_range);
   wheel_ = sin(angular_range * wheel_) / sin(angular_range);
   wheel_ = 2.0 * wheel - wheel_;
   quickturn_ = quickturn;
 
+  if (!quickturn_) {
+    wheel_ *= dt_config_.quickturn_wheel_multiplier;
+  }
+
   static const double kThrottleDeadband = 0.05;
   if (::std::abs(throttle) < kThrottleDeadband) {
     throttle_ = 0;
diff --git a/y2014/control_loops/drivetrain/drivetrain_base.cc b/y2014/control_loops/drivetrain/drivetrain_base.cc
index 96b27a6..4df1a0f 100644
--- a/y2014/control_loops/drivetrain/drivetrain_base.cc
+++ b/y2014/control_loops/drivetrain/drivetrain_base.cc
@@ -32,7 +32,9 @@
       constants::GetValues().left_drive,
       constants::GetValues().right_drive,
       true,
-      0};
+      0,
+      0.25,
+      1.0};
 
   return kDrivetrainConfig;
 };
diff --git a/y2014_bot3/control_loops/drivetrain/drivetrain_base.cc b/y2014_bot3/control_loops/drivetrain/drivetrain_base.cc
index bca3f24..1ebc4e9 100644
--- a/y2014_bot3/control_loops/drivetrain/drivetrain_base.cc
+++ b/y2014_bot3/control_loops/drivetrain/drivetrain_base.cc
@@ -37,7 +37,10 @@
       // No shifter sensors, so we could put anything for the things below.
       kThreeStateDriveShifter,
       kThreeStateDriveShifter,
-      false};
+      false,
+      0.0,
+      0.60,
+      0.60};
 
   return kDrivetrainConfig;
 };
diff --git a/y2014_bot3/control_loops/python/drivetrain.py b/y2014_bot3/control_loops/python/drivetrain.py
index b0555a0..4c3577b 100755
--- a/y2014_bot3/control_loops/python/drivetrain.py
+++ b/y2014_bot3/control_loops/python/drivetrain.py
@@ -75,9 +75,9 @@
     # Mass of the robot, in kg.
     self.m = 37
     # Radius of the robot, in meters (requires tuning by hand)
-    self.rb = 0.601 / 2.0
+    self.rb = 0.45 / 2.0
     # Radius of the wheels, in meters.
-    self.r = 0.0508
+    self.r = 0.04445
     # Resistance of the motor, divided by the number of motors.
     self.resistance = 12.0 / self.stall_current
     # Motor velocity constant
diff --git a/y2016/control_loops/drivetrain/drivetrain_base.cc b/y2016/control_loops/drivetrain/drivetrain_base.cc
index 9aeb4c8..1674540 100644
--- a/y2016/control_loops/drivetrain/drivetrain_base.cc
+++ b/y2016/control_loops/drivetrain/drivetrain_base.cc
@@ -37,7 +37,9 @@
       kThreeStateDriveShifter,
       kThreeStateDriveShifter,
       true,
-      constants::GetValues().down_error};
+      constants::GetValues().down_error,
+      0.25,
+      1.0};
 
   return kDrivetrainConfig;
 };