Add drivetrain position velocity plots
These velocity plots are useful for tuning the robot.
Change-Id: If1df10133141e5a2fcf1bd1916e9d296a7b77af7
diff --git a/frc971/control_loops/drivetrain/drivetrain_plotter.ts b/frc971/control_loops/drivetrain/drivetrain_plotter.ts
index f1ddd75..90c58cf 100644
--- a/frc971/control_loops/drivetrain/drivetrain_plotter.ts
+++ b/frc971/control_loops/drivetrain/drivetrain_plotter.ts
@@ -176,16 +176,6 @@
polyRightVelocity.setColor(CYAN);
polyRightVelocity.setDrawLine(false);
- const splineLeftVelocity = velocityPlot.addMessageLine(
- status, ['trajectory_logging', 'left_velocity']);
- splineLeftVelocity.setColor(RED);
- splineLeftVelocity.setDrawLine(false);
-
- const splineRightVelocity = velocityPlot.addMessageLine(
- status, ['trajectory_logging', 'right_velocity']);
- splineRightVelocity.setColor(GREEN);
- splineRightVelocity.setDrawLine(false);
-
const leftVelocity =
velocityPlot.addMessageLine(status, ['estimated_left_velocity']);
leftVelocity.setColor(RED);
@@ -193,12 +183,36 @@
velocityPlot.addMessageLine(status, ['estimated_right_velocity']);
rightVelocity.setColor(GREEN);
+ const leftSpeed = velocityPlot.addMessageLine(position, ["left_speed"]);
+ leftSpeed.setColor(BLUE);
+ const rightSpeed = velocityPlot.addMessageLine(position, ["right_speed"]);
+ rightSpeed.setColor(BROWN);
+
+ // Drivetrain trajectory and localizer velocities
+ const velocityPlot2 = aosPlotter.addPlot(element, [0, currentTop],
+ [DEFAULT_WIDTH, DEFAULT_HEIGHT]);
+ currentTop += DEFAULT_HEIGHT;
+ velocityPlot2.plot.getAxisLabels().setTitle(
+ "Trajectory and Localizer Velocity Plots");
+ velocityPlot2.plot.getAxisLabels().setXLabel(TIME);
+ velocityPlot2.plot.getAxisLabels().setYLabel('Wheel Velocity (m/s)');
+
+ const splineLeftVelocity = velocityPlot2.addMessageLine(
+ status, ['trajectory_logging', 'left_velocity']);
+ splineLeftVelocity.setColor(RED);
+ splineLeftVelocity.setDrawLine(false);
+
+ const splineRightVelocity = velocityPlot2.addMessageLine(
+ status, ['trajectory_logging', 'right_velocity']);
+ splineRightVelocity.setColor(GREEN);
+ splineRightVelocity.setDrawLine(false);
+
const ekfLeftVelocity =
- velocityPlot.addMessageLine(status, ['localizer', 'left_velocity']);
+ velocityPlot2.addMessageLine(status, ['localizer', 'left_velocity']);
ekfLeftVelocity.setColor(RED);
ekfLeftVelocity.setPointSize(0.0);
const ekfRightVelocity =
- velocityPlot.addMessageLine(status, ['localizer', 'right_velocity']);
+ velocityPlot2.addMessageLine(status, ['localizer', 'right_velocity']);
ekfRightVelocity.setColor(GREEN);
ekfRightVelocity.setPointSize(0.0);