Make y2023 superstructure plotter semi-functional
This at least lets us debug zeroing issues.
Change-Id: I734d67e4e37a783925a93f3c7fc41358652d570a
Signed-off-by: James Kuszmaul <jabukuszmaul+collab@gmail.com>
diff --git a/y2023/control_loops/superstructure/superstructure_plotter.ts b/y2023/control_loops/superstructure/superstructure_plotter.ts
index 2e32445..c7d14fd 100644
--- a/y2023/control_loops/superstructure/superstructure_plotter.ts
+++ b/y2023/control_loops/superstructure/superstructure_plotter.ts
@@ -11,15 +11,15 @@
export function plotSuperstructure(conn: Connection, element: Element): void {
const aosPlotter = new AosPlotter(conn);
- const goal = aosPlotter.addMessageSource(
- '/superstructure', 'y2023.control_loops.superstructure.Goal');
- const output = aosPlotter.addMessageSource(
- '/superstructure', 'y2023.control_loops.superstructure.Output');
- const status = aosPlotter.addMessageSource(
- '/superstructure', 'y2023.control_loops.superstructure.Status');
+ //const goal = aosPlotter.addMessageSource(
+ // '/superstructure', 'y2023.control_loops.superstructure.Goal');
+ //const output = aosPlotter.addMessageSource(
+ // '/superstructure', 'y2023.control_loops.superstructure.Output');
+ //const status = aosPlotter.addMessageSource(
+ // '/superstructure', 'y2023.control_loops.superstructure.Status');
const position = aosPlotter.addMessageSource(
'/superstructure', 'y2023.control_loops.superstructure.Position');
- const robotState = aosPlotter.addMessageSource('/aos', 'aos.RobotState');
+ //const robotState = aosPlotter.addMessageSource('/aos', 'aos.RobotState');
const positionPlot =
aosPlotter.addPlot(element, [DEFAULT_WIDTH, DEFAULT_HEIGHT / 2]);
@@ -28,88 +28,13 @@
positionPlot.plot.getAxisLabels().setYLabel('wonky state units');
positionPlot.plot.setDefaultYRange([-1.0, 2.0]);
- positionPlot.addMessageLine(position, ['turret_beambreak'])
+ positionPlot.addMessageLine(position, ['arm', 'distal', 'pot'])
.setColor(RED)
.setPointSize(4.0);
- positionPlot.addMessageLine(status, ['state'])
- .setColor(PINK)
- .setPointSize(4.0);
- positionPlot.addMessageLine(status, ['flippers_open'])
- .setColor(WHITE)
- .setPointSize(1.0);
- positionPlot.addMessageLine(status, ['reseating_in_catapult'])
- .setColor(BLUE)
- .setPointSize(1.0);
- positionPlot.addMessageLine(status, ['fire'])
- .setColor(BROWN)
- .setPointSize(1.0);
- positionPlot.addMessageLine(status, ['ready_to_fire'])
- .setColor(GREEN)
- .setPointSize(1.0);
- positionPlot.addMessageLine(status, ['collided'])
- .setColor(PINK)
- .setPointSize(1.0);
-
- const goalPlot =
- aosPlotter.addPlot(element, [DEFAULT_WIDTH, DEFAULT_HEIGHT / 2]);
- goalPlot.plot.getAxisLabels().setTitle('Goal');
- goalPlot.plot.getAxisLabels().setXLabel(TIME);
- goalPlot.plot.getAxisLabels().setYLabel('value');
- goalPlot.plot.setDefaultYRange([-1.0, 2.0]);
- goalPlot.addMessageLine(goal, ['fire']).setColor(RED).setPointSize(1.0);
- goalPlot.addMessageLine(goal, ['auto_aim']).setColor(BLUE).setPointSize(1.0);
-
-
- const shotCountPlot =
- aosPlotter.addPlot(element, [DEFAULT_WIDTH, DEFAULT_HEIGHT / 2]);
- shotCountPlot.plot.getAxisLabels().setTitle('Shot Count');
- shotCountPlot.plot.getAxisLabels().setXLabel(TIME);
- shotCountPlot.plot.getAxisLabels().setYLabel('balls');
- shotCountPlot.plot.setDefaultYRange([-1.0, 2.0]);
- shotCountPlot.addMessageLine(status, ['shot_count'])
- .setColor(RED)
- .setPointSize(1.0);
-
- const intakePlot =
- aosPlotter.addPlot(element, [DEFAULT_WIDTH, DEFAULT_HEIGHT / 2]);
- intakePlot.plot.getAxisLabels().setTitle('Intake');
- intakePlot.plot.getAxisLabels().setXLabel(TIME);
- intakePlot.plot.getAxisLabels().setYLabel('wonky state units');
- intakePlot.plot.setDefaultYRange([-1.0, 2.0]);
- intakePlot.addMessageLine(status, ['intake_state'])
- .setColor(RED)
- .setPointSize(1.0);
- intakePlot.addMessageLine(position, ['intake_beambreak_front'])
- .setColor(GREEN)
- .setPointSize(4.0);
- intakePlot.addMessageLine(position, ['intake_beambreak_back'])
- .setColor(PINK)
- .setPointSize(1.0);
- intakePlot.addMessageLine(output, ['transfer_roller_voltage'])
- .setColor(BROWN)
- .setPointSize(3.0);
-
-
- const otherPlot =
- aosPlotter.addPlot(element, [DEFAULT_WIDTH, DEFAULT_HEIGHT / 2]);
- otherPlot.plot.getAxisLabels().setTitle('Position');
- otherPlot.plot.getAxisLabels().setXLabel(TIME);
- otherPlot.plot.getAxisLabels().setYLabel('rad');
- otherPlot.plot.setDefaultYRange([-1.0, 2.0]);
-
- otherPlot.addMessageLine(status, ['catapult', 'position'])
- .setColor(PINK)
- .setPointSize(4.0);
- otherPlot.addMessageLine(status, ['turret', 'position'])
- .setColor(WHITE)
- .setPointSize(4.0);
- otherPlot.addMessageLine(position, ['flipper_arm_left', 'encoder'])
+ positionPlot.addMessageLine(position, ['arm', 'distal', 'absolute_encoder'])
.setColor(BLUE)
.setPointSize(4.0);
- otherPlot.addMessageLine(position, ['flipper_arm_right', 'encoder'])
- .setColor(CYAN)
- .setPointSize(4.0);
- otherPlot.addMessageLine(output, ['flipper_arms_voltage'])
- .setColor(BROWN)
+ positionPlot.addMessageLine(position, ['arm', 'distal', 'encoder'])
+ .setColor(GREEN)
.setPointSize(4.0);
}