|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Public Member Functions | |
| __init__ (self, int port=DEFAULT_PORT, str bind_address="0.0.0.0") | |
| start_receiver (self) | |
| on_sensor_data (self, dict header, List[dict] chunks) | |
| update_statistics (self) | |
| closeEvent (self, QtGui.QCloseEvent event) | |
Public Attributes | |
| port = port | |
| bind_address = bind_address | |
| window_seconds = DEFAULT_WINDOW_SECONDS | |
| test_start_time = None | |
| int | sample_count = 0 |
| stats_start_time = time.time() | |
| status_label = QtWidgets.QLabel("Starting...") | |
| chk_autoscale = QtWidgets.QCheckBox("Autoscale Y") | |
| plot = pg.PlotWidget() | |
| legend = self.plot.addLegend(labelTextSize="10pt") | |
| dict | chk = {} |
| dict | curves = {} |
| lbl_sps = QtWidgets.QLabel("Packets/sec: n/a") | |
| dict | per_lc = {} |
| lbl_status = QtWidgets.QLabel("Idle") | |
| t0 = None | |
| dict | t = {conn: deque(maxlen=MAX_POINTS) for conn in SENSOR_TO_CONNECTOR} |
| dict | v = {conn: deque(maxlen=MAX_POINTS) for conn in SENSOR_TO_CONNECTOR} |
| last_sps_time = None | |
| int | last_sps_count = 0 |
| bool | autoscale = True |
| timer = QtCore.QTimer(self) | |
| receiver = None | |
| stats_timer = QtCore.QTimer(self) | |
| update_statistics | |
| on_sensor_data | |
Protected Member Functions | |
| _hline (self) | |
| _on_toggle (self) | |
| _update_plot (self) | |
| _open_settings (self) | |
| _on_autoscale (self) | |
| _export_csv (self) | |
Protected Attributes | |
| _open_settings | |
| _export_csv | |
| _on_autoscale | |
| _on_toggle | |
| _update_plot | |
| bool | _plot_needs_update = False |
Definition at line 250 of file lc_calibration_gui.py.
| lc_calibration_gui.LCPlotWindow.__init__ | ( | self, | |
| int | port = DEFAULT_PORT, | ||
| str | bind_address = "0.0.0.0" ) |
Definition at line 251 of file lc_calibration_gui.py.
References __init__(), and array.resize().
Referenced by __init__().
|
protected |
Export current data to CSV file
Definition at line 484 of file lc_calibration_gui.py.
References max, anonymous_namespace{idle_e2e.cpp}::Beat.t, anonymous_namespace{idle_e2e.cpp}::World::Ground.t, gui.App.t, t, rec_t.t, gui.App.test_start_time, test_start_time, __iar_u32.v, gui.App.v, and v.
|
protected |
Definition at line 376 of file lc_calibration_gui.py.
|
protected |
Definition at line 479 of file lc_calibration_gui.py.
References gui.App._plot_needs_update, _plot_needs_update, gui.App._update_plot, _update_plot, gui.App.autoscale, autoscale, gui.App.chk_autoscale, and chk_autoscale.
|
protected |
Definition at line 402 of file lc_calibration_gui.py.
References gui.App._plot_needs_update, and _plot_needs_update.
|
protected |
Definition at line 475 of file lc_calibration_gui.py.
|
protected |
Definition at line 405 of file lc_calibration_gui.py.
References gui.App._plot_needs_update, _plot_needs_update, gui.App.autoscale, autoscale, gui.App.chk, chk, gui.App.curves, curves, max, min, per_lc, gui.App.plot, plot, anonymous_namespace{idle_e2e.cpp}::Beat.t, anonymous_namespace{idle_e2e.cpp}::World::Ground.t, gui.App.t, t, rec_t.t, __iar_u32.v, gui.App.v, v, gui.App.window_seconds, and window_seconds.
| lc_calibration_gui.LCPlotWindow.closeEvent | ( | self, | |
| QtGui.QCloseEvent | event ) |
Definition at line 550 of file lc_calibration_gui.py.
References anonymous_namespace{idle_e2e.cpp}::World.receiver, receiver, and stop().
| lc_calibration_gui.LCPlotWindow.on_sensor_data | ( | self, | |
| dict | header, | ||
| List[dict] | chunks ) |
Definition at line 388 of file lc_calibration_gui.py.
References gui.App._plot_needs_update, _plot_needs_update, gui.App.sample_count, sample_count, stats_start_time, anonymous_namespace{idle_e2e.cpp}::Beat.t, anonymous_namespace{idle_e2e.cpp}::World::Ground.t, gui.App.t, t, rec_t.t, time.time(), __iar_u32.v, gui.App.v, and v.
| lc_calibration_gui.LCPlotWindow.start_receiver | ( | self | ) |
Definition at line 382 of file lc_calibration_gui.py.
References bind_address, lc_calibration_gui.UDPReceiver.bind_address, emmc_log_t.port, gui.Reader.port, idle_t.port, port, lc_calibration_gui.UDPReceiver.port, self_test_t.port, anonymous_namespace{idle_e2e.cpp}::World.receiver, and receiver.
| lc_calibration_gui.LCPlotWindow.update_statistics | ( | self | ) |
Definition at line 467 of file lc_calibration_gui.py.
References gui.App.lbl_sps, lbl_sps, anonymous_namespace{idle_e2e.cpp}::World.receiver, and receiver.
Referenced by smart_calibration_gui.SmartCalibrationGUI.update_gui().
|
protected |
Definition at line 279 of file lc_calibration_gui.py.
|
protected |
Definition at line 284 of file lc_calibration_gui.py.
|
protected |
Definition at line 318 of file lc_calibration_gui.py.
|
protected |
Definition at line 275 of file lc_calibration_gui.py.
|
protected |
Definition at line 365 of file lc_calibration_gui.py.
Referenced by _on_autoscale(), _on_toggle(), _update_plot(), and on_sensor_data().
|
protected |
Definition at line 363 of file lc_calibration_gui.py.
Referenced by _on_autoscale().
| bool lc_calibration_gui.LCPlotWindow.autoscale = True |
Definition at line 359 of file lc_calibration_gui.py.
Referenced by _on_autoscale(), and _update_plot().
| lc_calibration_gui.LCPlotWindow.bind_address = bind_address |
Definition at line 257 of file lc_calibration_gui.py.
Referenced by actuator_testing_gui.SensorReceiver.run(), combined_fsw_gui.UDPReceiver.run(), combined_gui.UDPReceiver.run(), pt_multi_gui.UDPReceiver.run(), sense_testing_gui.UDPReceiver.run(), solenoid_characterization_gui.UDPReceiver.run(), start_receiver(), and pt_multi_gui.PTPlotWindow.start_receiver().
| dict lc_calibration_gui.LCPlotWindow.chk = {} |
Definition at line 311 of file lc_calibration_gui.py.
Referenced by _update_plot().
| lc_calibration_gui.LCPlotWindow.chk_autoscale = QtWidgets.QCheckBox("Autoscale Y") |
Definition at line 282 of file lc_calibration_gui.py.
Referenced by _on_autoscale().
| dict lc_calibration_gui.LCPlotWindow.curves = {} |
Definition at line 312 of file lc_calibration_gui.py.
Referenced by feedtwin.model.spec.ComponentSpec.__post_init__(), _update_plot(), actuator_testing_gui.ActuatorTestingWindow.on_channel_toggled(), feedtwin.model.catalog.Part.to_dict(), feedtwin.model.component.ComponentInstance.to_dict(), actuator_testing_gui.ActuatorTestingWindow.update_plots(), and feedtwin.model.spec.ComponentSpec.validate_curves().
| int lc_calibration_gui.LCPlotWindow.last_sps_count = 0 |
Definition at line 358 of file lc_calibration_gui.py.
| lc_calibration_gui.LCPlotWindow.last_sps_time = None |
Definition at line 357 of file lc_calibration_gui.py.
Referenced by combined_gui.SensorPlotWidget.update_statistics().
| lc_calibration_gui.LCPlotWindow.lbl_sps = QtWidgets.QLabel("Packets/sec: n/a") |
Definition at line 329 of file lc_calibration_gui.py.
Referenced by update_statistics().
| lc_calibration_gui.LCPlotWindow.lbl_status = QtWidgets.QLabel("Idle") |
Definition at line 345 of file lc_calibration_gui.py.
Referenced by combined_gui.PWMControlWindow.disarm_all(), combined_gui.PWMControlWindow.execute_now(), and combined_gui.PWMControlWindow.update_arm_status().
| lc_calibration_gui.LCPlotWindow.legend = self.plot.addLegend(labelTextSize="10pt") |
Definition at line 302 of file lc_calibration_gui.py.
Referenced by combined_gui.SensorPlotWidget.add_sensor_plot().
| lc_calibration_gui.LCPlotWindow.on_sensor_data |
Definition at line 384 of file lc_calibration_gui.py.
| dict lc_calibration_gui.LCPlotWindow.per_lc = {} |
Definition at line 335 of file lc_calibration_gui.py.
Referenced by _update_plot().
| lc_calibration_gui.LCPlotWindow.plot = pg.PlotWidget() |
Definition at line 294 of file lc_calibration_gui.py.
Referenced by _update_plot().
| lc_calibration_gui.LCPlotWindow.port = port |
Definition at line 256 of file lc_calibration_gui.py.
Referenced by calibration_server.ElodinWriter.connect(), feedtwin.comps.manifold.ManifoldBranch.diagnostics(), feedtwin.comps.manifold.ManifoldBranch.pressure_drop(), actuator_testing_gui.SensorReceiver.run(), calibration_orchestrator.UDPSensorReceiver.run(), combined_fsw_gui.UDPReceiver.run(), combined_gui.UDPReceiver.run(), imu_calibration_gui.UDPReceiver.run(), pt_multi_gui.UDPReceiver.run(), sense_testing_gui.UDPReceiver.run(), solenoid_characterization_gui.UDPReceiver.run(), start_receiver(), pt_multi_gui.PTPlotWindow.start_receiver(), and feedtwin.comps.manifold.ManifoldBranch.static_head().
| lc_calibration_gui.LCPlotWindow.receiver = None |
Definition at line 368 of file lc_calibration_gui.py.
Referenced by calibration_orchestrator.CalibrationOrchestrator._drain_queue(), combined_gui.SensorPlotWidget._send_demo_packet(), sense_testing_gui.SenseTestingGUIWindow._update_plots(), actuator_testing_gui.ActuatorTestingWindow.closeEvent(), closeEvent(), pt_multi_gui.PTPlotWindow.closeEvent(), sense_testing_gui.SenseTestingGUIWindow.closeEvent(), calibration_orchestrator.CalibrationOrchestrator.start_receiver(), start_receiver(), pt_multi_gui.PTPlotWindow.start_receiver(), calibration_orchestrator.CalibrationOrchestrator.stop(), combined_gui.SensorPlotWidget.update_statistics(), update_statistics(), and pt_multi_gui.PTPlotWindow.update_statistics().
| int lc_calibration_gui.LCPlotWindow.sample_count = 0 |
Definition at line 260 of file lc_calibration_gui.py.
Referenced by on_sensor_data().
| lc_calibration_gui.LCPlotWindow.stats_start_time = time.time() |
Definition at line 261 of file lc_calibration_gui.py.
Referenced by sense_testing_gui.SenseTestingGUIWindow._on_add_max_force_to_leaderboard(), sense_testing_gui.SenseTestingGUIWindow._on_sensor_data(), combined_gui.SensorPlotWidget._send_demo_packet(), sense_testing_gui.SenseTestingGUIWindow._update_plots(), solenoid_characterization_gui.SolenoidCharacterizationWindow.get_current_board_time(), combined_gui.SensorPlotWidget.on_sensor_data(), on_sensor_data(), pt_multi_gui.PTPlotWindow.on_sensor_data(), solenoid_characterization_gui.SolenoidCharacterizationWindow.update_plot(), combined_gui.SensorPlotWidget.update_plots(), and pt_multi_gui.PTPlotWindow.update_plots().
| lc_calibration_gui.LCPlotWindow.stats_timer = QtCore.QTimer(self) |
Definition at line 372 of file lc_calibration_gui.py.
| lc_calibration_gui.LCPlotWindow.status_label = QtWidgets.QLabel("Starting...") |
Definition at line 269 of file lc_calibration_gui.py.
Referenced by combined_gui.SensorPlotWidget._apply_demo_mode(), sense_testing_gui.SenseTestingGUIWindow._on_add_max_force_to_leaderboard(), solenoid_characterization_gui.SolenoidCharacterizationWindow._on_receive_ip_changed(), solenoid_characterization_gui.SolenoidCharacterizationWindow._on_send_ip_changed(), actuator_testing_gui.ActuatorTestingWindow._send_minimal_actuator_config(), actuator_testing_gui.ActuatorTestingWindow._send_server_heartbeat_once(), combined_gui.CalibrationWindow.fit_calibration(), actuator_testing_gui.ActuatorTestingWindow.on_actuator_toggled(), solenoid_characterization_gui.SolenoidCharacterizationWindow.on_pwm_go_clicked(), combined_gui.SensorPlotWidget.on_status_update(), solenoid_characterization_gui.SolenoidCharacterizationWindow.on_status_update(), combined_gui.CalibrationWindow.perform_zero_point_calibration(), combined_gui.CalibrationWindow.record_calibration_point(), and pt_multi_gui.PTPlotWindow.save_csv().
| dict lc_calibration_gui.LCPlotWindow.t = {conn: deque(maxlen=MAX_POINTS) for conn in SENSOR_TO_CONNECTOR} |
Definition at line 353 of file lc_calibration_gui.py.
Referenced by engine.pipeline.cea_cache.CEAAuxTables._bilinear(), engine.pipeline.cea_cache.CEAAuxTables._build(), feedtwin.session.core.Session._burnout_check(), feedtwin.session.core.Session._check_limits(), engine.pipeline.cea_cache.CEAAuxTables._exit(), _export_csv(), feedtwin.session.core.Session._fire_notes(), feedtwin.session.core.Session._integrate(), engine.pipeline.cea_cache.CEAAuxTables._load(), feedtwin.session.core.Session._record_solver(), _update_plot(), engine.layerx.flight.InlineAscent.advance(), feedtwin.session.core.Session.command_state(), on_sensor_data(), feedtwin.session.core.Session.prime(), and feedtwin.session.burn.BurnTrace.recorder().
| lc_calibration_gui.LCPlotWindow.t0 = None |
Definition at line 352 of file lc_calibration_gui.py.
| lc_calibration_gui.LCPlotWindow.test_start_time = None |
Definition at line 259 of file lc_calibration_gui.py.
Referenced by _export_csv().
| lc_calibration_gui.LCPlotWindow.timer = QtCore.QTimer(self) |
Definition at line 362 of file lc_calibration_gui.py.
| lc_calibration_gui.LCPlotWindow.update_statistics |
Definition at line 373 of file lc_calibration_gui.py.
Referenced by combined_gui.SensorPlotWidget.reload_pt_calibration(), and smart_calibration_gui.SmartCalibrationGUI.update_gui().
| dict lc_calibration_gui.LCPlotWindow.v = {conn: deque(maxlen=MAX_POINTS) for conn in SENSOR_TO_CONNECTOR} |
Definition at line 354 of file lc_calibration_gui.py.
Referenced by _export_csv(), engine.layerx.flight.InlineAscent._integrate(), _update_plot(), engine.layerx.flight.InlineAscent.held(), on_sensor_data(), and engine.layerx.flight.InlineAscent.specific_force().
| lc_calibration_gui.LCPlotWindow.window_seconds = DEFAULT_WINDOW_SECONDS |
Definition at line 258 of file lc_calibration_gui.py.
Referenced by sense_testing_gui.SenseTestingGUIWindow._on_add_max_force_to_leaderboard(), sense_testing_gui.SenseTestingGUIWindow._on_window_seconds_changed(), solenoid_characterization_gui.SolenoidCharacterizationWindow._on_window_slider_changed(), _update_plot(), sense_testing_gui.SenseTestingGUIWindow._update_plots(), pt_multi_gui.PTPlotWindow.show_settings(), combined_gui.SensorPlotWidget.update_buffer_size(), solenoid_characterization_gui.SolenoidCharacterizationWindow.update_plot(), actuator_testing_gui.ActuatorTestingWindow.update_plots(), combined_gui.SensorPlotWidget.update_plots(), and pt_multi_gui.PTPlotWindow.update_plots().