Reading voltages of a three (3) Series battery pack configuration

First time to post here :slight_smile: I’m relatively a newbie with Arduino so please bear with me. Anyway, right now I’m working on a project that will allow Arudino to measure voltages of a 3 series battery pack connections. Basically there’ will be three (3) 18650 lithium-ion batteries connected in series.
Nominal voltage of each cell is 3.7 so in 3S (series) configuration, I should be able to get 11.1V or 12.6V when fully charged.
However, I’m not incline of getting the total voltage using a voltage divided but rather, I would want each series voltage to be read from an Analog inputs of Arduino (i.e. Voltage of Series 1 goes to A0, voltage of Series 2, goes to A1 and Voltage of Series 3 goes to A3) (Please see attachment for visual representation).

Now, here are my questions:

  1. How would I be able to connect each series in Arduino to measure their corresponding voltage since their ground reference is different from each series connection? If my initial plan is not viable, what other ways to achieve such requirement. Appreciate any suggestions you may have.
  2. By the way are the ground PINs (i.e. power ground, digital ground, etc.) isolated from each other?

Thanks in advance.

Cheers.

How would I be able to connect each series in Arduino to measure their corresponding voltage since their ground reference is different from each series connection?

No you would short everything out.

There is a technique known as a flying capacitor involving relays you can use for this.

  1. no the pins are not isolated from each other.

Grumpy_Mike:
No you would short everything out.

There is a technique known as a flying capacitor involving relays you can use for this.

  1. no the pins are not isolated from each other.

Thanks for the reply Mike.
I'm curious about the flying capacitor technique that you mentioned, care to lead me where to explore more on this subject?

Is there anything stopping you from measuring the voltages from -ve to 1 cell, 2 cells and 3 cells on separate pins, with suitable voltage dividers? Then using a little elementary arithmetic you can calculate the voltage of each cell.

Steve

Is there anything stopping you from measuring the voltages from -ve to 1 cell, 2 cells and 3 cells on separate pins, with suitable voltage dividers?

Only the fact that he said he didn’t want to do that in the original post.

I’m not incline of getting the total voltage using a voltage divided but rather, I would want each series voltage to be read from an Analog inputs of Arduino

Here is a schematic of the technique. You need a dual pole change over relay. Basically you switch both sides of a capacitor from your cell to the Arduino’s ground and analogue input. Thus transferring the cells voltage to the Arduino without the need for a common ground. You need two for the upper cells your lower cell can be measured directly.
flying capacitor.jpg

He said he didn't want the total voltage using a voltage divider . But using 4 wires and a couple of voltage dividers allows you to see the individual cells. Still he doesn't have to do it the easy way if he doesn't want to.

Steve

How about op-amps with gain set to 1? Op-amps have + and - inputs which can be used to calculate the difference between two voltages and the output presented to an Arduino analog input.