Reading ADC without voltage divider - Page 1
Forum section: electronics / beginners

author: chota.sanjiv
author_rank: Contributor
timestamp: December 26, 2018, 09:24:25 pm
content: Hi Guys,I have a 13S li-ion pack which powers my BMS MCU (CY8C58LP) after proper regulation, I want to read the voltage of individual cells via the ADC. One method which I could think of was using appropriate voltage dividers to bring the voltages within analog sensitivity range for every individual cells. The second method may be to use a mosfet based mux to switch the VDDA and VSSA to each individuals cell +tive and -tive and then read using ADC, but I am not sure if this is possible or what kind of impact this will do if I switch the analog ground dynamically.thanksSanjeev

author: Kleinstein
author_rank: Super Contributor
timestamp: December 26, 2018, 09:32:33 pm
content: Switching the ground only works if the ADC and related µC has an independent supply.There is a similar method that can work with a common supply: use CMOS switches to charge a floating capacitor as a kind of sample and hold stage. And than bring both sides of the capacitor down to the ADC and ground. One still has to make sure the wrong switches are never on at the same time.

author: chota.sanjiv
author_rank: Contributor
timestamp: December 26, 2018, 09:47:55 pm
content: Thanks for the response, I am attaching the electrical spec of the MCU. The specs for VDDA and VDDD gives a indication that the they are independent however VSSA specs ties it to +-0.5v of the VSSD.

author: Zero999
author_rank: Super Contributor
timestamp: December 27, 2018, 09:41:00 am
content: Quote from: chota.sanjiv on December 26, 2018, 09:47:55 pmThey're not isolated, hence the need for them to be within 0.5V of each other.As mentioned above, the only way to do as you've described is to run the MCU off an isolated power supply, such as a separate battery or DC:DC converter.

author: Mechatrommer
author_rank: Super Contributor
timestamp: December 27, 2018, 11:21:53 am
content: another way is differential amplifier...

author: Psi
author_rank: Super Contributor
timestamp: December 27, 2018, 11:28:36 am
content: A linear output optoisolater on each cell. The outputs are then isolated so they can be ground reference and read by the mcu.Of course that does draw some current from the cells to run the opto LED. so not the best solution.Or you could get batshit crazy and use 13x padauk 3 cent mcus.One running from each lipo tap to read its voltage and output differential digital data back to the main mcu using some series caps to isolated the data bus

author: Zero999
author_rank: Super Contributor
timestamp: December 27, 2018, 12:11:38 pm
content: A digital isolator and a comparator with a few op-amps for a PWM modulator and demodulator:https://www.silabs.com/documents/public/application-notes/AN614.pdfOr, more expensive, but easier, an isolation amplifier such as the ACPL-7900.https://docs-emea.rs-online.com/webdocs/133c/0900766b8133c16e.pdf

author: Rick Law
author_rank: Super Contributor
timestamp: December 28, 2018, 04:03:07 am
content: Quote from: Mechatrommer on December 27, 2018, 11:21:53 amWith 13 LiIon in series, the total voltage is 13x4.2v=54.6v.The differential amp at the top would be looking at input from 50.4v to 54.6v to output at 0v to 4.2v. With the high at such a big number (54.6v), wouldn't that limit your choice of components?

author: Ian.M
author_rank: Super Contributor
timestamp: December 28, 2018, 05:09:37 am
content: Quote from: Psi on December 27, 2018, 11:28:36 amMaybe not so crazy as the MCUs for each cell could also each control a MOSFET for balancing, and its probably going to be cheaper than the other options, and draw less current from the cell than most of them. However the MCUs need to have an internal reference, (which you'll probably need to calibrate), and I doubt you'll find that in a 3 cent MCU.

author: chota.sanjiv
author_rank: Contributor
timestamp: December 28, 2018, 05:32:03 pm
content: Thanks guys with the help, going with the capacitor solution, trying now to make a mosfet based matrix switch to route any cells (+ and -) to the capacitor. Using optocoupler to control the switching matrix via the MCU. This also helps in connecting any cell to the load to balance the cells.

author: Mechatrommer
author_rank: Super Contributor
timestamp: December 28, 2018, 07:22:40 pm
content: Quote from: Rick Law on December 28, 2018, 04:03:07 amvery well, i didnt read the 13S part.. use voltage divider then where necessary, and then amplify back the differential reading. problem solved adc resolution preservedi believe there are high voltage opamp part but i wont bother searching because the price will be prohibitive... ymmv.

author: Psi
author_rank: Super Contributor
timestamp: December 29, 2018, 07:09:02 am
content: Quote from: Ian.M on December 28, 2018, 05:09:37 amLooks like the cheapest one that has both a 12bit ADC and 1.2V bandgap is PMS131-S08which is 8 cents in 100qtyhttps://lcsc.com/product-detail/PADAUK_PADAUK-Tech-PMS131_C114159.html