|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Functions | |
| parse_packet_header (data) | |
| parse_sensor_data_packet (data) | |
| ema (data, alpha=0.5) | |
| calculate_pressure_from_polynomial (adc_code, poly_coeffs) | |
| filtered_sensor_data (data, window=5, std_threshold=2) | |
| apply_dual_filter (data, ema_alpha=0.1, ma_window=250, std_threshold=0.001) | |
| read_udp (port=5006, bind_address="0.0.0.0") | |
| get_gauge_pressures (num_gauges) | |
| interrupt () | |
| save_calibration_data () | |
| plot_data_with_trendline () | |
| live_feed (save_count=500) | |
Variables | |
| int | MAX_PACKET_SIZE = 512 |
| int | PACKET_TYPE_SENSOR_DATA = 3 |
| str | PACKET_HEADER_FORMAT = "<BBI" |
| int | PACKET_HEADER_SIZE = 6 |
| str | SENSOR_DATA_PACKET_FORMAT = "<BB" |
| int | SENSOR_DATA_PACKET_SIZE = 2 |
| str | SENSOR_DATA_CHUNK_FORMAT = "<I" |
| int | SENSOR_DATA_CHUNK_SIZE = 4 |
| str | SENSOR_DATAPOINT_FORMAT = "<BI" |
| int | SENSOR_DATAPOINT_SIZE = 5 |
| list | instrument_deques = [] |
| list | filtered_code_deques = [] |
| list | pressure_deques = [] |
| list | calibration_polynomials = [] |
| tuple | instrument_to_connector |
| dict | gauge_mappings = {} |
| dict | gauge_pressures = {} |
| bool | keep_calibrating = True |
| stop_serial_thread = threading.Event() | |
| pause_reading = threading.Event() | |
| list | X = [] |
| dict | Y = {} |
| instrument_count | |
| conn = int(input(f"Enter board connector (1-10) for PT {pt_num}: ")) | |
| gauge_count = int(input("Please input the number of pressure gauges: ")) | |
| gauge_num | |
| poly_order | |
| int | data_point_num = 6 |
| str | file_base = f"PT Calibration Attempt {time.strftime('%Y-%m-%d', time.gmtime())}" |
| str | file_ext = ".csv" |
| int | test_num = 1 |
| str | filename = file_base + f"_test{test_num}" + file_ext |
| newline | |
| writer = csv.writer(f, delimiter=",") | |
| list | header = [] |
| tuple | connector_id = instrument_to_connector[pt_index] |
| str | base_label = f"PT{connector_id}" |
| list | pt_header |
| udp_thread = threading.Thread(target=read_udp, args=(5006, "0.0.0.0")) | |
| daemon | |
| int | calibration_count = 0 |
| bool | continue_calibration = True |
| tuple | user_input |
| tuple | show_live_feed |
| pt_cali.apply_dual_filter | ( | data, | |
| ema_alpha = 0.1, | |||
| ma_window = 250, | |||
| std_threshold = 0.001 ) |
Definition at line 106 of file pt_cali.py.
References ema(), and filtered_sensor_data().
Referenced by interrupt(), live_feed(), and read_udp().
| pt_cali.calculate_pressure_from_polynomial | ( | adc_code, | |
| poly_coeffs ) |
Definition at line 87 of file pt_cali.py.
Referenced by live_feed(), and read_udp().
| pt_cali.ema | ( | data, | |
| alpha = 0.5 ) |
Definition at line 77 of file pt_cali.py.
Referenced by apply_dual_filter().
| pt_cali.filtered_sensor_data | ( | data, | |
| window = 5, | |||
| std_threshold = 2 ) |
Definition at line 92 of file pt_cali.py.
Referenced by apply_dual_filter().
| pt_cali.get_gauge_pressures | ( | num_gauges | ) |
Definition at line 225 of file pt_cali.py.
Referenced by interrupt().
| pt_cali.interrupt | ( | ) |
Definition at line 242 of file pt_cali.py.
References apply_dual_filter(), get_gauge_pressures(), plot_data_with_trendline(), and save_calibration_data().
| pt_cali.live_feed | ( | save_count = 500 | ) |
Definition at line 344 of file pt_cali.py.
References apply_dual_filter(), calculate_pressure_from_polynomial(), and time.time().
| pt_cali.parse_packet_header | ( | data | ) |
Definition at line 25 of file pt_cali.py.
Referenced by parse_sensor_data_packet().
| pt_cali.parse_sensor_data_packet | ( | data | ) |
Definition at line 34 of file pt_cali.py.
References parse_packet_header().
Referenced by read_udp().
| pt_cali.plot_data_with_trendline | ( | ) |
Definition at line 306 of file pt_cali.py.
Referenced by interrupt().
| pt_cali.read_udp | ( | port = 5006, | |
| bind_address = "0.0.0.0" ) |
Definition at line 132 of file pt_cali.py.
References apply_dual_filter(), calculate_pressure_from_polynomial(), and parse_sensor_data_packet().
| pt_cali.save_calibration_data | ( | ) |
Definition at line 292 of file pt_cali.py.
Referenced by interrupt().
| str pt_cali.base_label = f"PT{connector_id}" |
Definition at line 483 of file pt_cali.py.
| int pt_cali.calibration_count = 0 |
Definition at line 502 of file pt_cali.py.
| list pt_cali.calibration_polynomials = [] |
Definition at line 118 of file pt_cali.py.
| pt_cali.conn = int(input(f"Enter board connector (1-10) for PT {pt_num}: ")) |
Definition at line 402 of file pt_cali.py.
| tuple pt_cali.connector_id = instrument_to_connector[pt_index] |
Definition at line 482 of file pt_cali.py.
| bool pt_cali.continue_calibration = True |
Definition at line 503 of file pt_cali.py.
| pt_cali.daemon |
Definition at line 496 of file pt_cali.py.
| int pt_cali.data_point_num = 6 |
Definition at line 452 of file pt_cali.py.
Definition at line 466 of file pt_cali.py.
| str pt_cali.file_ext = ".csv" |
Definition at line 467 of file pt_cali.py.
Definition at line 473 of file pt_cali.py.
| list pt_cali.filtered_code_deques = [] |
Definition at line 116 of file pt_cali.py.
| pt_cali.gauge_count = int(input("Please input the number of pressure gauges: ")) |
Definition at line 414 of file pt_cali.py.
| dict pt_cali.gauge_mappings = {} |
Definition at line 122 of file pt_cali.py.
| pt_cali.gauge_num |
Definition at line 424 of file pt_cali.py.
| dict pt_cali.gauge_pressures = {} |
Definition at line 123 of file pt_cali.py.
| list pt_cali.header = [] |
Definition at line 480 of file pt_cali.py.
| pt_cali.instrument_count |
Definition at line 390 of file pt_cali.py.
| list pt_cali.instrument_deques = [] |
Definition at line 115 of file pt_cali.py.
| tuple pt_cali.instrument_to_connector |
Definition at line 119 of file pt_cali.py.
| bool pt_cali.keep_calibrating = True |
Definition at line 124 of file pt_cali.py.
| int pt_cali.MAX_PACKET_SIZE = 512 |
Definition at line 13 of file pt_cali.py.
| pt_cali.newline |
Definition at line 478 of file pt_cali.py.
| str pt_cali.PACKET_HEADER_FORMAT = "<BBI" |
Definition at line 15 of file pt_cali.py.
| int pt_cali.PACKET_HEADER_SIZE = 6 |
Definition at line 16 of file pt_cali.py.
| int pt_cali.PACKET_TYPE_SENSOR_DATA = 3 |
Definition at line 14 of file pt_cali.py.
| pt_cali.pause_reading = threading.Event() |
Definition at line 126 of file pt_cali.py.
| pt_cali.poly_order |
Definition at line 443 of file pt_cali.py.
| list pt_cali.pressure_deques = [] |
Definition at line 117 of file pt_cali.py.
| list pt_cali.pt_header |
Definition at line 484 of file pt_cali.py.
| str pt_cali.SENSOR_DATA_CHUNK_FORMAT = "<I" |
Definition at line 19 of file pt_cali.py.
| int pt_cali.SENSOR_DATA_CHUNK_SIZE = 4 |
Definition at line 20 of file pt_cali.py.
| str pt_cali.SENSOR_DATA_PACKET_FORMAT = "<BB" |
Definition at line 17 of file pt_cali.py.
| int pt_cali.SENSOR_DATA_PACKET_SIZE = 2 |
Definition at line 18 of file pt_cali.py.
| str pt_cali.SENSOR_DATAPOINT_FORMAT = "<BI" |
Definition at line 21 of file pt_cali.py.
| int pt_cali.SENSOR_DATAPOINT_SIZE = 5 |
Definition at line 22 of file pt_cali.py.
| tuple pt_cali.show_live_feed |
Definition at line 539 of file pt_cali.py.
| pt_cali.stop_serial_thread = threading.Event() |
Definition at line 125 of file pt_cali.py.
| int pt_cali.test_num = 1 |
Definition at line 468 of file pt_cali.py.
Definition at line 495 of file pt_cali.py.
| tuple pt_cali.user_input |
Definition at line 519 of file pt_cali.py.
| pt_cali.writer = csv.writer(f, delimiter=",") |
Definition at line 479 of file pt_cali.py.
| list pt_cali.X = [] |
Definition at line 127 of file pt_cali.py.
| dict pt_cali.Y = {} |
Definition at line 128 of file pt_cali.py.