Skip to content
simat edited this page Dec 2, 2017 · 6 revisions

Calibration

Calibration information is stored in the configuration file battery.cfg in the [calibrate] section.

Course calibration adjustment is done using the
measured = [0.0, 3.305, 6.604, 9.910, 13.217, 16.526, 19.844, 23.171, 26.494]
displayed = [0.0, 3.278, 6.583, 9.873, 13.156, 16.474, 19.789, 23.094, 26.424]
parameters.

Fine offset calibration adjustment is done using the delta readings
delta = [0.003, -0.003, -0.007, 0.011, -0.002, 0.007, 0.004, -0.005]

Adjustment of Raw Data

Raw battery data is first adjusted by calculating the ratio between the 'measured' values (values measured with an accurate multimeter) and the 'displayed' (values displayed by the Beaglebone at the same time as measured with the multimeter) and multiplying the raw value by the ratio.

This corrected data then has the fine offset added to the reading to give the corrected reading.

Calibration procedure

  1. Disconnect any variable loads or power sources from the battery that will change the voltages.

  2. Make sure my BMS software has been running for a minute or so and is configured to log data to a log file. The calibrate software uses the logged data to calculate the voltages and current.

  3. Firstly perform the course voltage with the command python3 calvcourse.py
    Measure with an accurate multimeter the value of each battery cell relative to the battery negative. To improve the overall accuracy make sure that all the readings taken with the multimeter are done on the same range.

  4. Secondly do the fine calibration using python3 calvfine which allows you to calibrate each cell individually or if all the cells in your battery are the same voltage use python3 calvfineall

  5. To calibrate the current sensors use python3 caligain