Reading Each Battery Voltage in Series Circuit

Dear All,
Currently I have project where i need to read each battery voltages that connected in series using Arduino.

First trial, i was using a voltage divider but no luck, and then i try to use optocoupler and still no luck. when i go through the schematic, i realize that the positive polarity of second battery always have a path to ground. until now, i still dont know how to solve this thing out.

Highly appreciate for your help and Thank You in advance.

please find the schematic (attached)..

Warm Regards,
Muter

have you tried grounding all the battery's then reading each from a diffrent ADC pin ?

OK i see
..yes you need to use different pins you can use same ground of - voltage and then a pin to each +

sorry i was wrong in the last post .... you will have to ground each battery separately and measure each one separately ..experiment till you get that works for me ( Ive cooked a few transistors )

Since you are trying to read a +12 Volt battery and a - 12 Volt battery I can think of two methods off the top of my head. The first would be to use a voltage inverter circuit on the negative 12 Volts to convert it to plus 12 Volts. The circuits basically charge up a small capacitor then electrically disconnect it from the source and grounds the negative terminal and connects the positive terminal to the output. There are plenty of circuits on the internet, just Google "voltage inverter".
The other method would be to use an op-amp powered by the plus and minus 12 volts, configure it for unity gain and apply the negative voltage to the inverting input. There will be some offset you will have to deal with.

The simple way for getting the voltage of the second cell is to read the total voltage of the two cells together and then subtract the voltage of the first cell. You'll still get better than .1V accuracy with the 10bit ADC on the arduino.

Hi All,
Thank you very much for the prompt response.

@bandmwhitt2013: separating grounds means we have different ground reference
@Due_unto: let me go through your solution, i need sometimes to understand this.
@Chagrin: i thought so. later on i would extend this design up to 100 battery in series, it may have big uncertainty on the reading if we are using calculation instead of direct measurement.

Thanks again!!

Hi,
This is a possible solution that has been suggested here before for a similar situation, not my idea, but I like the concept.
You have a relay with double-pole double-throw contacts.
The relay keeps a capacitor across the battery, when the relay is activated the capacitor is switched from battery to AtoD input, via a potential divider.
The charge on the cap is passed to the AtoD without the AtoD being directly connected to the battery.
The controller switches which ever relay/battery is required.
Because of the way the contacts are wired, the controller is never directly connected to any Cell, so you could be measuring the bottom cell, 12v, or the 10th cell at 120V above gnd.
You would need to check the contact isolation ratings of the relay as you got higher in voltage above gnd.
The circuit I have below is only a concept, not tested, but it would not take much to make a couple of units to test on a battery array.


Component values are just suggestions.

Tom... :slight_smile:

This is a possible solution

I wish I'd thought of that :slight_smile:

You could use a low-cost relay board like this:

Those are single pole relays, so you'd operate two from one Arduino output to create the DPDT you need. 4 Relays can do the 2 batteries.

Being able to measure voltage on negative-connected batteries this way is "Genius"..

DISCLAIMER: Mentioned stuff from my own shop...

If I was dealing with 100 cells I'd probably build custom modules with an AVR and an isolated RS485 transceiver. Might also be feasible to just attach a NodeMCU to each cell and do everything with Wifi for isolation but you'd still get stuck creating a custom carrier board for each module.

For $0.80 each not bad!

terryking228:
I wish I'd thought of that :slight_smile:

Terry, I don't know who, I have my suspects, suggested this back in 2016 I think for a similar series battery situation.
I just put it into a schematic.

Its a basic solution, but 100 of cells a micro MCU and isolated rs-485 as Chagrin suggested will be even more feasible.
Tom.... :slight_smile: