Battery SOC monitor from reliable source - Page 1
Forum section: electronics / general

author: Simon
author_rank: Unknown
timestamp: February 29, 2024, 11:16:01 am
content: We got some batteries. Then we asked the "manufacturer" about a SOC monitor. They told up all about their awn device and then sold us something off Amazon/ebay/ali-whatever/anywhere else for 3x the price.I am being asked to find something with more certain supply. Well supply of these things is certain from that many sources but the repeatability of the product is not certain. Can anyone recommend a unit that we can more reliably get with the same specs we got one last time. I really don't want to design my own.

author: Siwastaja
author_rank: Super Contributor
timestamp: February 29, 2024, 12:45:08 pm
content: What batteries, rechargeable or non-rechargeable, maybe AA alkaline cells, or car start batteries, or maybe lithium ion battery packs, phone battery, home energy storage system, EV battery??

author: Simon
author_rank: Unknown
timestamp: February 29, 2024, 04:07:09 pm
content: Lithium ferrous phosphate 48V

author: thm_w
author_rank: Super Contributor
timestamp: February 29, 2024, 10:44:20 pm
content: Can it just be a voltmeter, or does it have to display the percentage charge?We are not talking about a coulomb counter right?Link for reference (never tried this one):https://eelbattery.myshopify.com/en-ca/products/lifepo4-battery-monitor-10-100v-digital-battery-capacity-tester-percentage-level-voltage-temperature-switch-meter-gauge-12v-24v-36v-48v-lcd-display-indicator-panel

author: EPAIII
author_rank: Super Contributor
timestamp: March 01, 2024, 04:10:02 am
content: And just how can you actually tell the state of a battery's charge without counting the charges going in and out? I have seen the performance of charge displays that rely on Voltage and they stink.Oh, and it should also have some mechanism for remembering and adjusting the actual capacity of that battery over it's lifetime as it deteriorates. Without such a mechanism, you are going to be caught with a dead battery sooner or later.Quote from: thm_w on February 29, 2024, 10:44:20 pm

author: Siwastaja
author_rank: Super Contributor
timestamp: March 01, 2024, 09:18:51 am
content: You need a battery management system with current sensor and coulomb counting. World is full of real solutions, they also cost real money. For a really crude indication (e.g., distinction between 90% and 30%), a voltmeter will do.

author: Simon
author_rank: Unknown
timestamp: March 01, 2024, 12:45:51 pm
content: it needs to be the coulomb counting type. Any lithium chemistry Voltage is firstly very temperature sensitive and secondly pretty flat or otherwise too weird to use between 10% and 90%

author: Siwastaja
author_rank: Super Contributor
timestamp: March 01, 2024, 01:31:12 pm
content: Open circuit voltage is not temperature sensitive at all on any li-ion chemistry I know of. Loaded voltage is, though, because internal equivalent DC resitance increases with lower temperature and so does voltage drop. Therefore applications that use low discharge rates cope with voltage-only indication better. Nonlinearity is trivial to compensate if you characterize the curve once. But LFP cells indeed tend to be too flat for useful indication.Remember that Coulomb counting is not magic. It drifts, and can only be reset from voltage information with all mentioned inaccuracies. Simple algorithms depend on specific cycling patterns i.e., frequent full charges till the end. Good li-ion BMS solutions which can cope with different types of use patterns, and still provide exact "fuel gauges", are not simple or low cost.

author: Simon
author_rank: Unknown
timestamp: March 01, 2024, 01:45:07 pm
content: Yep, which is why I just want to buy one and I am being asked to find one that is not on ebay/amazon and that we can be more certain of what we are getting as stuff from ebay or amazon may just have different specs next time.

author: Siwastaja
author_rank: Super Contributor
timestamp: March 01, 2024, 01:58:54 pm
content: Well, at least the Elithion BMS offers CAN bus connectivity and outputs state-of-charge. I don't know if their algorithms are good enough for your use case, but that's one example of commercial li-ion BMS system you might want to consider.

author: Simon
author_rank: Unknown
timestamp: March 01, 2024, 08:15:53 pm
content: You mean these people:https://elithion.com/battery_management_systems.php?All they want to replace is one of these:https://www.ebay.co.uk/itm/184379169102?itmmeta=01HQXTGTKE0J565GMS3XF42PA0&hash=item2aeddad94e:g:drIAAOSwqVdaqdrE&itmprp=enc%3AAQAIAAAA4BRSc7zNOeiqMpqomQwoPPyMezoCHVVP5GEiHkR8YK7gROTX16f2URUC0ahqoX4%2BqrLSHBmLJ%2BriqKWfu1hdcrJSsQYtne9jm06QMhMbGM4%2BKwMTPg%2FHcGJ23E%2BQ%2BS4iy%2Fm1Or1dDl8eQrUO%2FrOanJKC%2F5Jg5JKj0hH7qdQep%2B0ZVTF1D04Da8dLae0uRcUuY4UArFD9EG2UhYsdCruIKmN2%2B62sV%2BwVmiuyZhhKeFAzd5LUPOX5gtA6QeKt%2BRlzG%2F3QwFSq9hz%2FpTgP%2Bx%2BABzF%2FAWB934%2BYPHZ5hzeHGzMj%7Ctkp%3ABk9SR_Kpw7q_Yw

author: nctnico
author_rank: Super Contributor
timestamp: March 01, 2024, 09:58:19 pm
content: That one from Ebay looks like a piece of rubbish which is never going to work accurately / reliably (from the user's perspective). Even batteries with sophisticated coulomb counting hardware can (will) go wrong where it comes to determining SOC. I even had batteries reporting being empty while having plenty of charge left. As a countermeasure I had to implement a voltage based shutdown in the system I designed to avoid being fooled by the battery's BMS.

author: boB
author_rank: Frequent Contributor
timestamp: March 01, 2024, 10:03:50 pm
content: There is this tried and true Trimetric.It comes with (or needs ?) at shunt. Most likely the 500A/50mV one that is standard in the industry.LiFePo4 will use a different charge efficiency setting than lead acid is all. Usually higher efficiency like in the higher 90% range.This one counts coulombs as is how SOC% should be done.https://windandsolar.com/trimetric-battery-monitor/

author: nctnico
author_rank: Super Contributor
timestamp: March 01, 2024, 10:28:55 pm
content: The problem with Coulomb counting is that you are doing an integration which implies accumulating offset errors. Without resetting the accumulated error, the SOC will be wildly off after a while. A BMS typically resets the SOC at maximum and / or minimum charge voltage in order to reset the accumulated error. However, if the user never fully charges / discharges a battery, resetting the accumulated error won't happen. Nowadays I include battery voltage levels in order to verify the SOC reported by the battery. If the voltage & SOC don't make sense, I present an estimated SOC based on voltage to the user / system.

author: boB
author_rank: Frequent Contributor
timestamp: March 01, 2024, 10:37:20 pm
content: The SOC% monitor does have to reset to 100% when it knows it is there.For flooded lead acid that was pretty easy. After the charge cycle has finished its Absorb cycle and goes to Float, that is 100% if everything is set correctly.Also return (ending) amps can help.For Lithium it is a bit harder. But LiFePo4 the voltage will rise to the same as Absorb as before but how long it stays there varies. It might sit in Absorb for a while so that the BMS can balance the cells and THEN it is done with its charge. OR, sometimes they go strait to Float. Whatever Float means to that manufacturer.Most of this depends on the BMS itself which sometimes gives you SOC%. I assume that some times it is even accurate.boB

author: nctnico
author_rank: Super Contributor
timestamp: March 01, 2024, 10:39:45 pm
content: Quote from: boB on March 01, 2024, 10:37:20 pmA well designed battery should have a way more accurate SOC as this is typically also tuned for the cell chemistry used by the battery. You can't match that with a generic, external counter.

author: Siwastaja
author_rank: Super Contributor
timestamp: March 02, 2024, 07:50:36 am
content: Well, what do you expect? As usual, solutions to complex engineering problems are:1) Aliexpress crap which is easy to buy and cheap, but does not work,2) Properly engineered stuff which is difficult to buy and expensive, and still might not work, but at least you'd get support.The key takeaway is, battery charge level indication is not a trivial problem.Besides, usually all of the battery management is integrated in one management system. What is the existing solution on the pack, and does it properly measure cell voltages, does it properly control the charger and the loads, and does it do balancing? If yes, does it really lack SoC estimation? If the answer is yes, instead of gluing two BMS's which both do partial job, one option is to replace the whole BMS with something better.(Elithion was just one random example I know of, no affiliations and have not personally used it.)

author: Simon
author_rank: Unknown
timestamp: March 02, 2024, 08:19:53 am
content: Well they won't want to go the two expensive route. I think the ebay one has been OK but the main issue is that they come with different shunt resistors every time so the metalwork has to be changed. It is also possible that the specs of the unit itself change without notice.

author: SiliconWizard
author_rank: Super Contributor
timestamp: March 02, 2024, 11:18:17 pm
content: I've used the MAX17048 with li-ion batteries, which I found worked quite well. The MAX17049 is a 2-cell version.They have newer parts, and some for LiFePO4 batteries. But I don't think they have anything that could work with 48V. A 48V LiFePo4 pack is probably an arrangement of many cells in parallel and series, and unfortunately, I don't think any of these battery gauge ICs are available for such arrangements. You'd have to design the SOC monitor yourself and it'll be quite a bit more complex than just a single-chip solution.Properly evaluating the SOC of a single cell is already not trivial (but those ICs do the job fairly well), but doing so for a series-parallel arrangement of many cells is yet another level of complexity.Yes, it's probably going to be integrated in a balancing circuit as well. There's no way you can find something cheap, off-the-shelf and working properly.