Sunday, August 9, 2009

LiFePO4 Battery Pack Management - Part 4

Details, Details

We're getting closer to having the information we need to decide what we need from a battery management solution. This time around, we'll dig a little deeper.

The datasheets or manufacturer's instructions will give us the limits for our battery pack. How hot and how cold? How much load? How fast can we charge? High and low voltage. Approximate cycle life in different conditions. And the point - how much of this do we need to actively manage?

Tesla Motors published an excellent paper on the Roadster's battery pack. This sealed pack contains 6831 cells (18650 sized - a bit larger than an AA battery). The pack has liquid heating and cooling and multiple layers of battery management. The pack is large, complex, and expensive - and can feed enough power to accelerate this 2700 lb car from zero to 60 MPH in under four seconds.

But what about our smaller packs? What do we need? Let's start at the far 'outer limits' and move in. We'll continue to use numbers for PSI's 40138 sized 10Ah cells.

Min/Max Voltage

LiFePo4 chemistry appears to have an absolute minimum voltage of 2.0V per cell and a maximum of 4.3V per cell. Moving outside these limits won't just shorten cell life - it's likely to cause immediate damage.

Min/Max Temperature

PSI recommends a pair of temperatures for their cells - one for discharge and one for charging. This is actual cell temperature. The cell can be discharged when it's between -20°C and 55°C (-4°F to 151°F). It can be charged between 0°C and 45°C (32°F to 113°F).

Charge/Discharge Current

Maximum discharge current is 10C / 100A continuous and 130A for up to 18 seconds. Maximum charging current is 4C - 40A.

These values define the 'box' that we'll work within. Using these limits will work, but we'll want to select more conservative limits to achieve longer pack life.

Temperature... Since we're working with relatively small air-cooled packs, we have a much simpler thermal management problem than the folks at Tesla. Chances are good that we won't be riding much when it's colder than -20°C/-4°F. And even if we do, we'll probably keep the pack inside where it's warmer. The pack will warm a bit as it's discharged, so once we begin our cold ride we're in good shape. On the warm end of the range - like riding in South Texas in the summer - we should still have some flexibility. Its 100°F as I write this and the pack is stored outside. Even with some pack heating we have 50°F before we reach max temperature for the pack. Most users won't need a BMS to monitor pack temperature.

Maximum Current... We can manually manage our charge and discharge current by selecting components during vehicle design. As we saw last time, a 10Ah pack won't give us much range when feeding a 100A controller, but it's within the design limits of the battery. Max discharge for a 60Ah pack with the 100A controller is only 1.6C - this is a very conservative number. Likewise, the 15A charger is well below the 40A limit for recharging. We don't need the BMS to manage discharge current, but we will ask it to help during cell balancing. More on this later...

Maximum Cell Voltage... While the upper limit of the chemistry appears to be 4.3V per cell, manufacturers agree that reducing that limit will add cell life. Thunder Sky recommends charging to 4.25V to 4.3V per cell for a 2000 charge-cycle life. PSI and A123 Systems recommend a more conservative 3.65V per cell. There are a couple of ways to charge the pack.

One method is to use one charger per cell. The up-side is that each cell can charge at it's own rate, voltage is controlled automatically, and the pack is balanced after each charge. The downside is expense - 21 15A chargers is considerably more expensive than one. Charger selection takes care of cell management - no BMS support is necessary for single cell charging.

The more commonly used method is a single 'bank' charger. Charging thru the entire pack means that the charger does not know the charge status of any single cell - it only knows the average or pack voltage. Cells that finish charging a bit earlier will likely be overcharged while the slower cells might not completely fill. We'll need our battery management system to monitor each cell's voltage level and make sure that cells are not allowed to overcharge.

Minimum Cell Voltage... This is probably the most critical value to manage in order to keep our cells alive. Most controllers have a low-voltage detection system built in. But like bank charging, the controller doesn't know the condition of any single cell - it only knows the average. For example: Let's look at a three-cell pack with a 2.1V low voltage limit. The controller will be set for a 6.3V lower limit and will shut down to 'protect' the pack. If the cells are perfectly matched, perfectly charged, and at exactly the same temperature, they might all reach the 2.1V point at the same time. We'll have 2.1V, 2.1V, and 2.1V for our cells - the controller will shut down and all is well. But what happens if one cell didn't quite fully charge? The next time the controller shuts down at 6.3V our cells are at 2.15V, 2.0V, and 2.15V. The pack is still in acceptable condition. On recharge, this cell will take even longer to charge. Say we just charge 1/2 way because we need to make a quick ride to the store. 100 feet from home we deplete the pack and the controller shuts down. Cell voltages are 2.4V, 1.5V, and 2.4V. Uh oh. The middle cell is damaged...time to shop for a replacement. As with charging, pack average management isn't enough to protect the cells. We need our BMS to monitor individual cells and take action when necessary.

Charge Management... This will affect both maximum cell voltage and maximum charge current. A charger programmed to charge LiFePO4 will reduce the output current as the pack fills - the transition usually happens between 3.65 and 3.7V. The charge profile is known as constant current/constant voltage - CC/CV. This is automatically managed by single cell chargers, but our bank charger cannot sense individual cell voltages - so it changes modes based on pack voltage. As we've already seen, this will result in some cells being overcharged and others left less than full. We're going to ask our management solution to monitor cell voltage and control the charger so that our cells are charged and balanced.

We have the information we need to select our battery management solution. We'll manage pack temperature manually thru a combination of current control, pack size, and storage/use environment. We'll manage current in and out by design - pack capacity, controller and charger size. We'll need our BMS to monitor maximum cell voltage and control the charge current, and we'll need it to monitor minimum cell voltage and remove the load on the pack when any one cell reaches our selected low voltage point.

Next time we'll look at a couple of real-world solutions and compare their strengths and weaknesses.