def calibrate_shaper(datas, csv_output, max_smoothing): helper = ShaperCalibrate(printer=None) if isinstance(datas[0], CalibrationData): calibration_data = datas[0] for data in datas[1:]: calibration_data.add_data(data) else: # Process accelerometer data calibration_data = helper.process_accelerometer_data(datas[0]) for data in datas[1:]: calibration_data.add_data(helper.process_accelerometer_data(data)) calibration_data.normalize_to_frequencies() shaper, all_shapers = helper.find_best_shaper(calibration_data, max_smoothing, print) print("Recommended shaper is %s @ %.1f Hz" % (shaper.name, shaper.freq)) if csv_output is not None: helper.save_calibration_data(csv_output, calibration_data, all_shapers) return shaper.name, all_shapers, calibration_data
def calc_freq_response(data, max_freq): helper = ShaperCalibrate(printer=None) return helper.process_accelerometer_data(data)
def write_frequency_response(datas, output): helper = ShaperCalibrate(printer=None) calibration_data = helper.process_accelerometer_data(datas[0]) for data in datas[1:]: calibration_data.add_data(helper.process_accelerometer_data(data)) helper.save_calibration_data(output, calibration_data)