For a project, I am using the following circuit to detect the load3 change. With an 16-bit coulomb counter ADC I am measuring the current I. Using onboard Arduino Uno ADC I am measuring votage, V at node A.
With the equation R = (OCV - V) / I; where OCV is the open circuit voltage at no load condition, R = 10 mΩ + Load3 + Source (3.7 V) internal resistance if it is a battery, I am measuring the change of load3 in the figure. By changing load3 I mean initially there is no load3 (shorted-indicated by blue line) and then I introduce a 10 Ω load3. But the problem is when there is no load3 the code reports it almost correctly (R = 14 mΩ) but with the 10 Ω load3 I found it reports only 80 mΩ instead of 10 Ω.
My questions are:
- Why is the measurement mismatch so huge? If it is because of the ADC (both V and I measurements are from coulomb counter and Arduino ADC), how can I address that it is for the ADCs?
- What are the possible ways to improve the measurements accuracy?
Thanks!