Jump to content
Sign in to follow this  
Chriull

Battery Analysis

Recommended Posts

Inspired by 

and my thoughts to it 

i logged my first charge :)

ZXOVQRy.png

Somehow not to exciting. First impressions:

- There is real noise on the voltage values reported! Never looked into this.... Have to look once at this "zoom level" at some driving logs

- the first voltage jump happend by plugging the charger to the wheel. Should have 8A, immediate Voltage difference ~1.1V -> R=U/I=1.1/8=1375mOhm seems ok. (A 16S4p pack should have around 16/4*35mOhm=140mOhm ... tada!!)

- Unfortionately my wheel was already too fully charged, so there is only a first CC phase (first black line i fitted on the curve)

- Second line fitted on the curve - Somehow the change from CC to CV phase? Seems a bit like the figueres at https://batteryuniversity.com/learn/article/charging_lithium_ion_batteries - more details hopefully to be seen with a real full charge with empty batteries.

- Seems the "CV" phase somehow starts below 4.2V per cell (67.2V). Have to check charger voltage/battery voltage/wheel reported values once...

- Next two fitted lines (from 17:24 .. 19:24): batteryuniversity shows about full cell voltage while the CV phase - here voltage keeps slowly rising!? Maybe cell balancing going on. And there is a slight knee/kink at 18:43...

- At 19:24 i plugged the charger out. Battery voltage is settling - battery was not saturated!

Some new questions...

Looking foward for more data (logs are welcome) and other input!

... owning a charge doctor would be nice - having the charging current too would make everything easier :)

 

Share this post


Link to post
Share on other sites

Where is the data captured from if you don't have a Charge Doctor, from the wheel telemetry? That's a lot of noise... I've never looked very closely at the wheel voltage measurements, I'd guess that at least in most cases it's just a voltage divider feeding directly into an ADC-pin of the MCU, and if done "poorly" (no filtering, lots of SMPS noise in the system), there can be a lot of noise in the signal.

They (likely) just divide the voltage, so the battery voltage range is "mapped" from 0-67.2V to 0...less than 3.3V (to leave headroom in case of overvoltage, so it won't blow the ADC), say 0...3.0V. 12bit ADC can give 4096 different values, but if roughly 10% of the top end is left for handling possible overvoltage and spikes, that leaves around 3600 values for the entire range. 67.2V / 3600 = about 19mV per LSB, which isn't that bad really, should be easily enough resolution for battery voltage measurement. The noise amplitude seems to go up to around +-0.5V from the average, so a total of about 1000mV or about +-50 on the ADC-reading, so likely it's not just "normal" noise of a few LSBs that tends to end up in the measurements unless special care is taken in layout, shutting down peripherals etc.

Maybe there's no filtering at the divider at all? If you have an oscilloscope and some courage, you could try to measure the ADC-pin noise when it's not charging and during charging. One possible source might be the charger itself, I don't think that the cheap chargers have much in terms of filtering the output noise, so that might be another place to take a peek at (with an oscilloscope).

Edited by esaj

Share this post


Link to post
Share on other sites
19 minutes ago, Seba said:

@Chriull, I'm seriously considering adding support for some smart plugs (like TP-Link HS110) to EUC World application. In this way it would be possible to actively monitor charger operation. For example when battery gets charged to user-defined level, after reaching specified Wh drawn from the mains or when overvoltage condition is detected. What do you think?

I allowed myself to quote your post over to this topic here, as i was about to gather some thoughts about the usefullness/constraints/prerequisits of charge voltage logging with the wheellog/euc world apps. Fits imo better? Or should even be worth an own topic?!

But imo a great idea!

First (?quite easy? to implement options:

- Stop charging at change from CC to CV phase: The knee between the two states should be detectable and leaves the wheel with some 80-85% charge (real charge% not the reported values). Gives the possibility for quick inbetween charges.

- This charging could be automated to be finished at some certain time - people wanting to ride their unicycle next day at 8:00 in the morning.

- Possible warning emails send by your server/shown by the euc world app in case of:

-- Premature charger cut off:

---Most probable cause: user stopped charging manually :D

--- Second probable cause: dead cells in the battery pack

-- Overvoltage: Would need the user to "calibrate" the wheels reported values. Real overall battery overvoltage should be imo a very seldom case (cell overvoltage detection of the BMS not working anymore). But real cell overcharging should be a very serious issue! Single cell overcharge in case of BMS malfunctioning (especially with imbalanced cells) will be very hard if at all possible to detect.

-- Temperature Monitoring: Could be a very nice safety feature! With overtemp cutoff of the WLAN plug! Here my graph again with the reported wheels temperature - it goes up from room temperature to 40°C! But it was 8A charging - but for sure still noticable with normal stock chargers. Maybe the most useful case?

SfV6nQK.png

- For all the inaccuracies wheel and charger profiles would be great :ph34r:. Most probably constant current delivered from the chargers spread even more than their max voltage and/or the voltage reported by the wheel. And maybe even more important (or in some comparable range) - the internal resistance of the batteries rises with aging considerable...

- With this profiles "full charge recomendations" for the wheels can be issued after some "quick" charges to balance the cells. This again with all the temp/voltage/premature cutoff alarms/warnings. 

- Wh hours drawn from mains could be a nice "estimation" to double check and "ensure" safe/proper charging. With different charging currents/charger efficiencies again profiles/calibration would make sense... Mains consumption values from the plug should make sense while the CC phase - but i fear especially to the end of the CV phase the chargers internal power consumption will hide the charge current...

 

User calibration/User manual "input":

If a decent multimeter is available:

- charger no load (max) voltage

- Current during the CC phase

- Voltage while charging at the end of the CV phase (max battery voltage)

- reported battery voltage change with charger plugged in -> Batteries internal resistance

With these, now "absolute" numbers

- the steepnes of the CC phase should give a nice measure of the battery age/degradation. With just relative (uncalibreated) numbers this still gives a nice measure by the change of time (charging cycles)

- If "real" balancing threshold is reached for all cells - ~4.2V per cell per serial cell count.

PS.: Afair there was also some cheap WLAN plug with hackable firmware available - so direct connection and customization to and for your server would be possible!?

Share this post


Link to post
Share on other sites
14 minutes ago, esaj said:

Where is the data captured from if you don't have a Charge Doctor, from the wheel telemetry?

Yes wheel telemetry logged with wheellog. With CD it would be great - the charging current would be an invaluable additional input! Maybe some visions for the 

:D

 

 

14 minutes ago, esaj said:

That's a lot of noise... I've never looked very closely at the wheel voltage measurements, I'd guess that at least in most cases it's just a voltage divider feeding directly into an ADC-pin of the MCU, and if done "poorly" (no filtering, lots of SMPS noise in the system), there can be a lot of noise in the signal.

They (likely) just divide the voltage, so the battery voltage range is "mapped" from 0-67.2V to 0...less than 3.3V (to leave headroom in case of overvoltage, so it won't blow the ADC), say 0...3.0V. 12bit ADC can give 4096 different values, but if roughly 10% of the top end is left for handling possible overvoltage and spikes, that leaves around 3600 values for the entire range. 67.2V / 3600 = about 19mV per LSB, which isn't that bad really, should be easily enough resolution for battery voltage measurement. The noise amplitude seems to go up to around +-0.5V from the average, so a total of about 1000mV or about +-50 on the ADC-reading, so likely it's not just "normal" noise of a few LSBs that tends to end up in the measurements unless special care is taken in layout, shutting down peripherals etc.

Maybe there's no filtering at the divider at all? If you have an oscilloscope and some courage, you could try to measure the ADC-pin noise during charging. One possible source might be the charger itself, I don't think that the cheap chargers have much in terms of filtering the output noise, so that might be another place to take a peek at (with an oscilloscope).

Yes - the noise is awesome! If the charger is plugged in or not makes absolutely no difference.

My measuring equipment is not existant :efee8c29ce: - thought often inbetween to get some cheap USB-oscilloscope/DSO. When i look around my whishes increase and prices explode so i don't order, as i don't really started doing anything in this direction...:(

Maybe i should just control myself and start (without thinking/researching) out with some cheap chinese clones / medium/low range equipment :thumbup:

Share this post


Link to post
Share on other sites
1 hour ago, Chriull said:

My measuring equipment is not existant :efee8c29ce: - thought often inbetween to get some cheap USB-oscilloscope/DSO. When i look around my whishes increase and prices explode so i don't order, as i don't really started doing anything in this direction...:(

Maybe i should just control myself and start (without thinking/researching) out with some cheap chinese clones / medium/low range equipment :thumbup:

Rigol makes some relatively cheap oscilloscopes (300-400€ for 2/4 -channel 50MHz bandwidth, hardware unlockable to 100MHz + double memory etc):

https://www.batronix.com/shop/oscilloscopes/DSO.html

Right now they have a deal where you get all the options at the same price, except the bandwidth? I have the DS1054Z, haven't unlocked all the options (basically they should be bought separately, but there's a key generator online... ;)), but it's already out of warranty (3 years), so maybe one day if I need more bandwidth or such. To my knowledge, all the 4-channel DS1000's (1054, 1074, 1104) are actually the same hardware, except for the logic analyzer in the Plus-models, otherwise the difference is just the (software limited, unlockable) options.

They're not super high quality precision instruments (such cost high 4-figures or 5-figures anyway ;)), but easily good enough for occasional hobbyist usage and they've got a lot of features for the price. The only downsides I've hit is that the internal voltage noise is relatively high if wanting to measure really low ripples (can't seem to measure reliably below about 0.8mV, which seems to be a lot for an oscilloscope) and the FFT is slow and not very precise, so a separate spectrum analyzer would be needed for such measurements.

 

Edited by esaj

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...