Break out the CIM class to avoid duplication
Before this patch we had 7 identical copies of the CIM class. Now it's
in its own module.
More de-duplication to come.
Change-Id: I598224020e50e8ec63584333dc080d34a2407cde
diff --git a/y2015_bot3/control_loops/python/polydrivetrain.py b/y2015_bot3/control_loops/python/polydrivetrain.py
index 9aa4821..88caa73 100755
--- a/y2015_bot3/control_loops/python/polydrivetrain.py
+++ b/y2015_bot3/control_loops/python/polydrivetrain.py
@@ -6,6 +6,7 @@
import drivetrain
import control_loop
import controls
+from frc971.control_loops.python.cim import CIM
from matplotlib import pylab
__author__ = 'Austin Schuh (austin.linux@gmail.com)'
@@ -183,8 +184,8 @@
self.right_gear = VelocityDrivetrain.LOW
self.left_shifter_position = 0.0
self.right_shifter_position = 0.0
- self.left_cim = drivetrain.CIM()
- self.right_cim = drivetrain.CIM()
+ self.left_cim = CIM()
+ self.right_cim = CIM()
def IsInGear(self, gear):
return gear is VelocityDrivetrain.HIGH or gear is VelocityDrivetrain.LOW
@@ -413,8 +414,7 @@
else:
dog_loop_writer.Write(argv[1], argv[2])
- cim_writer = control_loop.ControlLoopWriter(
- "CIM", [drivetrain.CIM()],
+ cim_writer = control_loop.ControlLoopWriter("CIM", [CIM()],
namespaces=['y2015_bot3', 'control_loops'])
if argv[5][-3:] == '.cc':
@@ -472,7 +472,7 @@
cim_velocity_plot = []
cim_voltage_plot = []
cim_time = []
- cim = drivetrain.CIM()
+ cim = CIM()
R = numpy.matrix([[300]])
for t in numpy.arange(0, 0.5, cim.dt):
U = numpy.clip(cim.K * (R - cim.X) + R / cim.Kv, cim.U_min, cim.U_max)