17x Classic 200s, 4400Ah 44V lithium ion battery bank... few questions

Started by wk057, September 07, 2015, 02:28:02 PM

Previous topic - Next topic

wk057

Greetings,

So, I've constructed a huge off-grid system using 17 Midnite Classic 200s (each hooked to ~2.6kW of PV, for 44.4kW total), eight Outback Radian GS8048A inverters (64kW total), using 36 lithium ion battery modules salvaged from Tesla Model S vehicles (~5.3kWh each for ~191 kWh total).  It's a pretty massive setup.  Pics here: https://www.dropbox.com/sh/3945sqtx3fviouc/AADUUye2EKAh0N5VHlySbcT2a?dl=0 and some stats here: http://wk057.solar/

So, yesterday was the first sunny day since the system has been fully online.  I had tweaked the charge voltages on the classics a bit, but unfortunately had never had enough PV input until yesterday to have both a full battery bank and normal loads.

Classic networking is all setup for follow-me, each is ethernet connected and I've been logging data with the program I made for months now.

Long story short, in the summer time the system will overproduce power like crazy, and I have no intention of selling to the utility nor do I want to have huge diversion loads outside of the basics like just setting my thermostat a few degrees cooler.

What I would like to happen when the batteries are charged is for the classics to output just enough power to cover loads without actually continuing to charge the batteries.  I tried tweaking the float voltage a bit, but eventually they would start trickle charging the pack again and this is no good for lithium ion (lithium cobalt aluminum oxide I do believe in this case).

Is there a good way to do this?  My custom BMS has cell voltages and such and is able to kill the classics via AUX2 if needed, but killing them just shuts down PV input entirely and loads use the batteries, which seems counter productive while i have 30+kW of PV coming in and should be able to cover 10kW of loads with ease.

My initial thought was to use the modbus tcp interface with the custom BMS software to tweak the float voltage as needed to keep current across the shunts to the battery bank where I wanted it, although this seems like it could be error prone.  Ideally it would be great if there were a watts-out limit that could be continuously updated across the classics (individually by my BMS since array orientations vary) to maintain a neutral pack load once fully charged.

Also, I don't plan on charging the storage batteries to full.  Setting absorb to ~4.05V per cell with a ~15 minute timer is plenty (comes out to just above 80% SoC) for longevity of the cells.  But I don't want to continue to feed them power after this while I still have power to cover loads.

I'm just wondering if this has come up elsewhere or if anyone else has a similar issue with a solution.  For now I just have the float voltage set at ~3.9V per cell and the PV output basically drops to nothing once absorb is done, which is not ideal but is safe.

Thanks!

Vic

Hi wk..,

Nice LARGE system!

I have NO experience with Li batteries.

A number of folks have been asking for a Classic (and KID,  for that matter), adjustable measured battery charge current Limit,  for a while,  now.

Believe that MN boB has said that it is on the list of probable additions,  but,  as you realize,  there are New Product designs in process that have priority,  as they can generate significant return to MN,  and make many customers happy to have those great new products.   So nice enhancements like this new Limiting function are,  and should be, down that list,  IMO.

I know nothing of just how such a Limit would be implemented,  but this battery charge current limit,  settable to 0.0 A  sounds very nice.   Especially with Li batts,  or just regular batteries that have access to large PV arrays,  etc.

All opinions,  Have Fun,  be careful!!  Vic
Off Grid - Sys 1: 2ea SW+ 5548, Surrette 4KS25 1280 AH, 5.25 KW PV, Classic 150,WB, Beta Barcelona, Beta KID
Sys 2: SW+ 5548s, 4KS25s, 5.88 KW PV, 2 ea. Classic 150, WB, HB CC-needs remote Monitoring/Control, site=remote.
 MN Bkrs/Bxs/Combiners. Thanks MN for Great Products/Svc/Support&This Forum!!

Westbranch

Big is an understatement...!  Wow, nice job.  Are there more Li cells elsewhere than in the 2 stacks in the  garage?

Just a dumb thought flashed past my eyes...  could you use a clipper  to divert that excess power to or heat that pool with plus opportunity loads?
KID FW1811 560W >C&D 24V 900Ah AGM
CL150 29032 FW V.2126-NW2097-GP2133 175A E-Panel WBjr, 3Px4s 140W > 24V 900Ah AGM,
2 Cisco WRT54GL i/c DD-WRT Rtr, NetGr DS104Hub
Cotek ST1500 Inv  want a 24V  ROSIE Inverter
OmniCharge3024  Eu1/2/3000iGens
West Chilcotin 1680+W to come

zoneblue

Isnt just a matter of turning off temp compensation, and keep lowering the float voltage til you get zero charge? As i recall the queensland guy (using calb fepo4 cells) ended up with a slight discharge later in the day, but he got it pretty close in the end.
6x300W CSUN, ground mount, CL150Lite, 2V/400AhToyo AGM,  Outback VFX3024E, Steca Solarix PL1100
http://www.zoneblue.org/cms/page.php?view=off-grid-solar

mike90045

Set the ABSORB & FLOAT voltages to the same, at the max value you want the batteries to reach, and it will hold it there.
& temp comps = 0 

Can't see how that will over-voltage the cells under those conditions.

How many car batteries do you have ?  Can they/it safely absorb all the power you are feeding it?  Do you have thermal management on the pack ?
http://tinyurl.com/LMR-Solar

Classic 200| 2Kw PV, 160Voc | Grundfos 10 SO5-9 with 3 wire Franklin Electric motor (1/2hp 240V 1ph )| Listeroid 6/1, st5 gen head | XW6048 inverter/chgr | midnight ePanel & 4 SPDs | 48V, 800A NiFe battery bank | MS-TS-MPPT60 w/3Kw PV

wk057

In the Model S the batteries are happy to accept charge rates as high as ~1.4C (267 kW for my pack) at up to ~40% SoC and tapers to about C/4 (47kW for my setup) at ~95% SoC.  Since the most I expect in a worst case scenario is about 40kW (due to my array orientations I'll never see peak power on both at the same time), and I don't plan on charging past 90%, the batteries should always be able to take whatever I have available until they're charged.

I have the ambient temperature in the electrical room kept at about 64F (~17.7C) since specs for similar batteries favor temperatures slightly below average room temp.  I figure the rest of the equipment would appreciate the cool air as well.  (High efficiency mini split heat pump unit I have in there uses at most about 2 kWh/day to keep that room 64F in 95F weather).  Previously I tested using the inverter charge function charging the pack from the grid at about 40kW.   After two hours of charging at 40kW (about C/5) the cell temperatures had gone up to about 75F.  The modules do have a liquid cooling loop that may eventually hook up, but with such a small change in cell temperature under the max possible charge... I might not bother for now.

Setting float to the absorb voltage doesn't seem possible (it kicks it back to 0.1V lower than absorb).  However, at 0.1V lower the controllers do cover all loads, but they also are continuing to pump power into the pack.  The curve looks a lot like a constant-voltage taper that never quite reaches zero since the amperage per cell in my setup at these low rates is very very low.

Today I had the float voltage set ~0.8V lower than the absorb voltage, and the PV output graph, after the absorb stage was over, appeared to resemble my power usage graph pretty closely, but was still trickling a bit of power to the cells as well after a while, confirmed with two clamp meters and my BMS shunts.

Temp correction disabled, of course.

From my understanding of the cell chemistry, a continued low current to the cells like this is very bad for the cells and causes some kind of oxidation or plating of one of the electrodes which could cause premature capacity loss... so this seems bad.  Given that, I'd prefer a trickle of a discharge from the pack after it is full while the PV powered loads directly, until it dropped below a certain voltage, then top it off again.  I don't know if this bad chemical reaction takes place when trickle charging the cells at below 100% SoC.  I can't seem to find much data on this but have put some feelers out to some experts on the matter.

Based on today's data I *think* I could make some relatively good algorithm to manipulate the float voltage on the fly to prevent current flowing to the batteries based on BMS data from shunts, but this is definitely less than ideal.

There does appear to be a tweak for setting the maximum output current... I'll have to tinker with this.  If it is adjustable on the fly via the TCP interface this might work perfectly for me.  I'd like to be able to feed the controllers a maximum output wattage or current that can be adjusted on the fly based on DC side load (updated say, once per second or two).  I'd feel better about some kind of input on an AUX terminal (PWM duty cycle based limiting?) or something rather than relying on TCP-based modbus.

I'll try adjusting the float voltage even further down tomorrow if/when the pack gets full again and see if I can find a sweet spot or something that lets me not trickle charge the cells.

wk057

Another idea just crossed my mind... I wonder if I could exploit temperature compensation for this.  Basically rig the input from the temperature sensor using the BMS and adjust as needed to keep the batteries from charging when full...

zoneblue

Thats as crafty as all hell. I say give it a go. That is better then messing with the CC setpoints continuously as the latter will impact CC eprom wear leveling. As someone else said WBjr amp limiting is on the cards so at some point that will turn up. Hopefully... Around here these things take time.



Quote from: wk057 on September 07, 2015, 11:11:47 PM
Another idea just crossed my mind... I wonder if I could exploit temperature compensation for this.  Basically rig the input from the temperature sensor using the BMS and adjust as needed to keep the batteries from charging when full...
6x300W CSUN, ground mount, CL150Lite, 2V/400AhToyo AGM,  Outback VFX3024E, Steca Solarix PL1100
http://www.zoneblue.org/cms/page.php?view=off-grid-solar

wk057

Quote from: zoneblue on September 08, 2015, 04:40:53 PM
Thats as crafty as all hell. I say give it a go. That is better then messing with the CC setpoints continuously as the latter will impact CC eprom wear leveling. As someone else said WBjr amp limiting is on the cards so at some point that will turn up. Hopefully... Around here these things take time.



Quote from: wk057 on September 07, 2015, 11:11:47 PM
Another idea just crossed my mind... I wonder if I could exploit temperature compensation for this.  Basically rig the input from the temperature sensor using the BMS and adjust as needed to keep the batteries from charging when full...

Yeah, I'm liking this idea.  Does anyone have any specs on the temperature sensor?  Would make things easier...

Resthome

John

10 x Kyocera KC140, Classic 150 w/WBJr, Link10 Battery Monitor, 850 AH @ 12v Solar One 2v cells, Xantrex PROwatt SW2000
Off Grid on Houseboat Lake Don Pedro, CA

wk057

I actually just gutted one and found a thermistor hooked to the red+black and green+yellow leads.  Showed around 10-11k ohms at room temp.  So I swapped it out with a 10k 1% tolerance resistor and plugged it into one of the classics.  It showed a pretty stable 25.3C on the temperature readout.

Using my meter to read the resistors:

2.89k = 56.5C
3.39k = 51.9C
9.93k = 25.3C
13.3k = 19.3C
19.6k = 10.4C
23.0k = 6.9C

So it appears to be a β model thermistor with a 25C resistance of 10k.  Should be able to emulate this with a digital potentiometers.  I'll try a bit later.

wk057

Upon further investigation, exploiting the temperature compensation doesn't appear to get me a sufficient voltage change. :(

As for modifying the voltage outputs and/or amperage limits on the fly... this wouldn't be bad for the EEPROM unless those changes were committed to the EEPROM, correct? (Writing 4 to register 4160)... or does this happen automatically at some interval?

mahendra

kool system,huge investment i envy .If ever you don't have use for an outback inverter please donate  :P :P
1.5kw on Midnite classic 150(whizbang jr.) networked 0.660kw on classic lite 200 wbjr ,180ah CALB Lifepo4 48v battery bank,jkbms 150amps bms(top balanced) Outback vfx3648.
Soon to be added Sol Ark 8k with 5Dyness Bx51000 ,7.8kw pv

mahendra

oh yes i am loving my not so new outback inverter worth the investment and love being at 48v nominal,i have said it before and i am saying it again ,
i think higher nominal voltages is the future for off grid solar .guess our engineering have some work to do.
1.5kw on Midnite classic 150(whizbang jr.) networked 0.660kw on classic lite 200 wbjr ,180ah CALB Lifepo4 48v battery bank,jkbms 150amps bms(top balanced) Outback vfx3648.
Soon to be added Sol Ark 8k with 5Dyness Bx51000 ,7.8kw pv

zoneblue

Is there a limit to the mv/degree setting?

Epprom, not sure exactly when the eeprom write occurs, but both those settings are of necessity non volatile, so must occur somewhere. Bob might chime in.

But hey man, your other issue there is the netwrok stack issues, which are still being resolved. I wouldnt go relying heaviliy on ethernet communications at this stage in the firmware.

Quote from: wk057 on September 09, 2015, 09:59:24 AM
Upon further investigation, exploiting the temperature compensation doesn't appear to get me a sufficient voltage change. :(

As for modifying the voltage outputs and/or amperage limits on the fly... this wouldn't be bad for the EEPROM unless those changes were committed to the EEPROM, correct? (Writing 4 to register 4160)... or does this happen automatically at some interval?
6x300W CSUN, ground mount, CL150Lite, 2V/400AhToyo AGM,  Outback VFX3024E, Steca Solarix PL1100
http://www.zoneblue.org/cms/page.php?view=off-grid-solar