Linearity of SOC

My Nissan Leaf Forum

Help Support My Nissan Leaf Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

evnow

Well-known member
Joined
Apr 22, 2010
Messages
11,480
Location
Seattle, WA
I've been tracking the starting and ending SOC units for almost all trips in the last couple of months. What I've noticed is that ... at the top end, SOC units have less energy than in the middle esp. the 280 to 270 band has little actual energy compared to say 230 to 220. I don't have done enough data at the bottom end to draw any conclusions.

The following shows the Wh/SOC unit calculated using the average of the starting and ending trip SOC units (the denominator). The actual energy used is calculated as miles drives / mpkwh (this is the numerator). The Wh/SOC should be around 75 (21,500/281 or 21,000/281) if the SOC units were linear.

We see quite a bit of variability - between 40 & 110 Wh/SOC. But the trend shows the Wh/SOC going down as the SOC # goes up.

whsoc.png


I wonder whether we should consider this when displaying the SOC %.

ps : By eliminating outliers we get ...

whsoc1.png


My guess is, when the SOC # is below 100, the Wh/ SOC again goes down.
 
the 281 scale is probably not the actual capacity, but a voltage related status of the battery.. for a true linear SOC you would use a kWh counter.. apparently both voltage and current measurements are available in the CAN-bus so it should be possible to generate a kWh reading.
 
Herm said:
the 281 scale is probably not the actual capacity, but a voltage related status of the battery.. for a true linear SOC you would use a kWh counter.. apparently both voltage and current measurements are available in the CAN-bus so it should be possible to generate a kWh reading.
Instantaneous Voltage & Current only gives you Power. Not energy stored.
 
Very interesting. I got a very linear response when I plotted it. Very noisy, but linear. If anything the curve has slightly positive slope, not negative like yours.

gidsteps.jpg


This was plotted from a log taken during a single charge. I did confirm on a second log that the noise is, in fact, noise and not repeatable non-linearity.
 
evnow said:
Instantaneous Voltage & Current only gives you Power. Not energy stored.
Obviously you'd have to take rapid samples (many a second) of V&C to accurately calculate energy...
 
drees said:
Obviously you'd have to take rapid samples (many a second) of V&C to accurately calculate energy...
Still won't give you energy stored. You need to integrate the power over the length of the drive till the car goes to turtle and stops.
 
TickTock said:
This was plotted from a log taken during a single charge. I did confirm on a second log that the noise is, in fact, noise and not repeatable non-linearity.
How did you get the kwh used per SOC unit ?

The first 10 units (280 to 270) go so fast - I'm sure it doesn't have as much energy. It is possible between say 50 and 270, the units have a fiarly constant amount of energy.

ps : My method assumes the m/kwh shown by Leaf is accurate.
 
evnow said:
Still won't give you energy stored. You need to integrate the power over the length of the drive till the car goes to turtle and stops.

Duh!, you know what I meant.

Tick-Tock, could you do a graph of pack voltage minus IR losses vs GID?.. assume a constant value for R, I just want to see how linear it is.
 
evnow said:
TickTock said:
This was plotted from a log taken during a single charge. I did confirm on a second log that the noise is, in fact, noise and not repeatable non-linearity.
How did you get the kwh used per SOC unit ?

The first 10 units (280 to 270) go so fast - I'm sure it doesn't have as much energy. It is possible between say 50 and 270, the units have a fiarly constant amount of energy.

ps : My method assumes the m/kwh shown by Leaf is accurate.
I integrated battery_volts*battery_amps*delta_time; then plotted the change in total energy each time the gid count changed.
 
TickTock said:
I integrated battery_volts*battery_amps*delta_time; then plotted the change in total energy each time the gid count changed.

Ohh!, the graphs is a kWh vs GID.. now it makes sense.. noisy but probably the best you can get out of the data.
 
Herm said:
TickTock said:
I integrated battery_volts*battery_amps*delta_time; then plotted the change in total energy each time the gid count changed.
Ohh!, the graphs is a kWh vs GID.. now it makes sense.. noisy but probably the best you can get out of the data.
Where do you get the time element? If you're using time of reception, the noise could be delays in the messages.
 
I was wondering about the noise too...Naturally taking products of noisy quantities results in a an even noisier quantity, but the amps and voltage during charging should not be that noisy? Especially if you integrate them over some time to get energy? TickTock, how many samples i.e. volts*amps are you integrating over each time step?
It seems the range of the energy is all over the place from 0-200 Wh? What is the Amp/voltage resolution that you can get?
 
TickTock said:
I integrated battery_volts*battery_amps*delta_time; then plotted the change in total energy each time the gid count changed.
I'm ofcourse looking at discharge - with any regen in between.
 
Herm said:
Tick-Tock, could you do a graph of pack voltage minus IR losses vs GID?.. assume a constant value for R, I just want to see how linear it is.
I don't capture Voltage now - I'll have to retrofit Gary's changes to my version ...
 
Herm said:
the 281 scale is probably not the actual capacity, but a voltage related status of the battery..
Yes, that's quite likely. I'm also under the impression that turtle mode is triggered when pack voltage drops below a certain threshold. In regard to SOC linearity, unless you haven't seen it already, you might find this chart published by AESC helpful:

image008.gif
 
Herm said:
evnow said:
Still won't give you energy stored. You need to integrate the power over the length of the drive till the car goes to turtle and stops.

Duh!, you know what I meant.

Tick-Tock, could you do a graph of pack voltage minus IR losses vs GID?.. assume a constant value for R, I just want to see how linear it is.
I have that posted here
http://www.mynissanleaf.com/viewtopic.php?f=44&t=5582&start=257

I don't have the irdrop removed, but that is very small during charging (.07 ohms * 10 amps = 0.7v). Unfortunately, the kids have the computers tied up so I can't count the number of samples right now.
 
TickTock said:
I don't have the irdrop removed, but that is very small during charging (.07 ohms * 10 amps = 0.7v). Unfortunately, the kids have the computers tied up so I can't count the number of samples right now.

Thanks that does look fairly linear regarding kWh per GID for a charging event and probably very similar for a discharging event. Lithium-ion cells have a high coulombic efficiency, but it does drop a bit at the extremes of the SOC.. perhaps that is the non-linearity that EVNOW is seeing. Your plot may even display the coulombic efficiency curve, and that means the software is accounting for it, not just a simple guess by using the voltage.

I think GID does represent energy storage, within those limitations. Next question: will the GID display change as the battery ages? :eek:
 
I am getting between 3 and 40 samples on the EVcan per gid and I think that is the primary source of the "noise" since the current is pretty much constant and the voltage moves very slowly. I did, during my inspection, discover a mistake in my original graph so I created a new one. This one shows the result of two separate charging logs. I could see no correlation in the noise between the two. Even the bi-modal distribution in the upper counts is not correlated.

Energypergid.jpg
 
Does the CAN bus provide a sample time along with the data for current and voltage?
Otherwise, being at the mercy of the message time, these measurements are pretty useless due to the noise.
One would think that the leaf internally is doing some time-sensitive computations, so there must be a sample time stamp somewhere on the bus??
 
Each message is timestamped. The battery voltage and current is sent very frequently (I got >1.5M updates during the ch100a log) but the message containing the gid count is much less frequent and less regular (only 3000 messaged during the log and 3-40 per count). I got gid updates on average every 6.8s but sometimes as quick as 0.5s and sometimes as long as 50 seconds. However, these max update interval values do not correlate to the max energy step values (and should still be fast enough) so I no longer think that is the source of the error. Since the voltage and current is very stable, I think this just means that the car is using something else to generate the gid count that has a fair amount of error.
 
Back
Top