ETH IDSC

While helping prepare for making a video with Cirque Du Soleil (evanmw.com/sparked), we realized that the battery state of charge estimation for the lab's quadcopters was very inaccurate, especially when the quadcopter was carrying a payload. Normally, devices monitor the current consumed from the battery and integrate over time to find the total charged used. From there, it's easy to find the charge remaining assuming we know the battery's capacity. The challenge is that the battery's capacity reduces as it ages. This is an easy challenge for devices like phones to overcome. They simply monitor the current as the battery is charged, so they know what they're starting with during discharge. The quadcopters in the lab, however, did not monitor the charging process and, even worse, a mix of batteries with wide ranges of use history were in use.


To better estimate the state of charge without knowing starting charge, I used a Kalman filter which predicted the open circuit voltage of the battery by Coulomb counting (integrading current), and then updated using voltage measuremnts and comparing to an empirically derived model of open circuit voltage as a function of state of charge.


The final result was fairly successful and a significant improvement over the existing system. In tests the estimated state of charge was consistently withing +/-10% and often +/-5% of the state of charge as reported by the battery charger