Monitoring Pack Cell Voltages

September 5, 2011

… and a chance for a proper range test

N.B:  The CellLog 8M is now available from my shop. Due to import duty and small order size, this batch aren’t as cheap as I’d like, but if they sell well, I’ll get a better deal with a larger volume supplier and get the price down a bit more.

The Lithium pack monitor and LVC alarm

Now that I had my bike up and running with its Lithium pack, I needed some way of monitoring the pack voltages at the cell level. It’s imperative with Lithium cells that they are not discharged (or charged) beyond a certain level, or they can be irreparably damaged.

So far I had just been winging it by charging the pack regularly so that it was in no danger of being depleted to the point where this kind of damaged might occur. I’d also been running over the 24 pins of the battery pack’s ATX connector with a multimeter to take voltages and check that everything was okay.

Checking voltages in this way is immensely tedious, however, so I was quite keen to come up with a better way of seeing the state of my pack at-a-glance, and also having some way triggering an alarm or cutoff once cells dropped below a certain voltage.

One product that fits the bill for this job are the CellLogs. These handy little devices can monitor pack voltages for battery banks of up to 8 cells. They are fully programmable, and can be configured to set off an audible alarm or trigger an internal relay that can be tapped via an external connector.

The CellLog 8M (illustration from the EPBuddy website)

Wiring the CellLogs to the ATX connector

The CellLogs, unfortunately do not yet come in 24s form, so I had to improvise here by connecting three of them together to create a basic display which monitored my cell pack as three separate 8-cell banks. Later on I might remove the plastic casings and mount them more tidily in a single display that I can put somewhere on the bike on or near the instrument panel.

The final product, 3 CellLogs wired to the ATX connector and an earth wire

I wired the packs up to my ATX connector in much the same way as I wired up the BMS. Like with the BMS board, there are three 8-circuit modules which take 9 wires apiece. As with the BMS, the ‘top’ wire of each CellLog shares and pin on the connector with the ‘bottom’ wire of the previous bank. Since my ATX connector deals with the positive terminal of each of my 24 cells, the very first, master negative terminal of the first CellLog needs to be earthed somewhere. In this case I’ve simply connect this to an earthed connecting wire under the seat by the battery pack.

The CellLogs in action

The CellLog has a number of useful display screens which you can switch between, but the most useful one generally is the histogram display mode which gives you an at-glance-summary of the pack. The total pack voltage, the voltages of the highest and lowest cells and difference (‘delta’) between the lowest and highest cell in the pack.

Bank 1, almost perfectly balanced

Bank 2, not quite as perfectly balanced

Another screen gives you precise voltages for each cell in the pack.

Lots of things can result in packs becoming slightly out of balance. Immediately after charging, for example, cell voltages drop slightly as the cells settle, and this drop may happen at different rates. After the bank has sat for a while, though, the voltages tend to even out of their own accord.

Bank 1 of my pack as it settles shortly after charging

Prolonged use, especially when the bank is running low, can also lead the pack going out of balance. These imbalances, though, also tend to even out of their own accord once the bike has had a while to rest. Since the cells are always connected they have a natural tendency to ‘pull’ on another’s voltages back into alignment by themselves.

CellLog Alarm Settings

The great thing about the CellLog is that it can be programmed in a variety of ways to raise an audible alarm warning or to trigger an internal relay according to whatever criteria you decide. You can set high voltage and low voltage alarms for either (or both) the cell and pack-level voltages. Default settings also exist for the pack ‘delta’, where a difference between highest and lowest cell voltages will also trigger an alarm. The CellLog comes with default settings for typical LiPo and LiFePO4 settings, but you can add your custom ones in addition to these if you want.

As well as triggering an audible alarm (you can disable this if you want), it will also act as a relay to complete a circuit between two wires supported by a connector for the alarm port. It can be configured to be in either the ‘open’ or ‘closed’ position by default, and to switch to its opposing state once the alarm is triggered, and the circuit can accept a voltage of up to 50V at 500mA. For the purposes of the scooter, it would be suitable to wire into the 12V electrics to trigger a warning indicator that could be mounted on the dash. I have yet to do this yet. For now I’m just relying on regular visual checks of the cellog display.

The alarm port with its configurable relay can be tapped via an included connector

The Range Test

Now that I had a way of monitoring my cell-voltages, and an alarm system that would warn me of the collapse in the level of any individual cell, I was ready to put the pack properly through its paces with a range test. Here, I would basically run the bank ‘flat’, or – more precisely – to the lowest safe voltage that is recommended for the Headway LiFePO4 cells. It’s generally accepted that setting an lvc of 2.5V gives a cut-off point that preserves battery life and gives the pack up to 2000 or so charge-discharge cycles. You can of course take it lower, to around 2.0V, but now you’re on shakier ground where you risk upsetting a cell’s chemistry. If you let a cell’s voltage get below 1.7V or so then you can say goodbye to it forever, as it will almost certainly be irreparably damaged. Opinion is divided about how low is ‘safe’, but if you want the pack to have a decent lifespan it’s best to keep the voltages as far within the cell’s safe operating range as possible.

For my first range test I logged a total of nine journeys of  between 1.6 and 6 miles, which took place over the course of three days. For accuracy, I charted my journeys using google maps and noted the distance I had covered. I started out, of course, on a full charge. Though the charge voltage I use is around 86V, the voltage drops by a couple of volts as the cells settle once the charge is complete. Once rested a typical full charge of my pack shows a resting voltage of around 84V.

Just over ten miles into my series of trips, the pack voltage was looking good, with all three banks fairly well balanced. The voltage at this point was 80.1V. I left the bike to rest for a while before taking measurements, as the voltage always recovers a little after use. Any cell imbalances tend to gradually subside as well.

At 10 miles – pack voltage 80.1V

As I approached the 20 miles mark, performance started to feel a little more sluggish. A little like the tail-off you get with and SLA bank, but much later in the discharge cycle and far less pronounced. It became clear to me at this point that under any ordinary circumstances there’s no realistic prospect of unknowingly running down a cell to a dangerously low level as the performance of the bike is significantly affected well in advance of this.

Below is the state of affairs at 25.4 miles. Unlike SLAs, the LiFePO4 pack spends much of its discharge cycle well above the nominal voltage. As it descends through down past its ‘nominal’ voltage (76.8V for my 24s pack) the cell voltages begin to collapse almost exponentially. Though the pack voltage was still 76.55V, here, the cells were starting to go out of balance, with those closer to the positive terminal of the pack being worst affected. See how the ‘delta’ gets worse through banks 1 to 3.

At 25.4 miles, pack voltage 76.55V

Performance at this stage was also getting very bad, with the bike losing a good proportion of its power. At just past 26.9 miles I called it a day and hobbled back home to take a final measurement of a pack that was for all intents and purposes well and truly flat.

At about 27 miles the bank is effectively flat – pack voltage 73.35V

Bank 3 here us faring the worst, with the two weekest cells appraching their sub-2.5V danger zone. The pack delta at this point is nearly half a volt. At this point both the high delta and the low cell voltage would be on track to to set off the CellLog alarm (the default setting for the delta is 500mV).

Bank 3 at 27 miles, the weakest two cells nearing the LVC point

I was more than happy with this performance. A 27 mile range for about-town driving meant that I could probably substantially improve upon this for a long, out of town ride. It’s all the stopping and starting that takes it out of the batteries and I’m pretty sure I might be able to approach the 40 mile mark if I were gentle on the throttle and kept to a more modest cruising speed.

It was also an excellent result given the fact that I was running my Lyen’s controller on quite a powerful setting. My SLAs started to flag and die after just 16 miles of about-town driving with this same controller on a similar setting. The range and economy of the bike has clearly improved substantially as a result of shedding that extra 30Kg of weight and moving to LiFePO4.

Recharge Time

This full discharge also offered an ideal opportunity to benchmark the charging system. From flat to fully charged my system – consisting of the Goodrum-Fechter “Zephyr” BMS powered by an EMC-900 charger – took a total of 2 hour and 50 minutes to reach full charge again. 🙂

My previous 72V SLA pack could take up to 10 hours to fully charge from flat. This isn’t so bad when you’re running the more economical, generic controller, but on a more powerful one like the LYEN Edition controller, frequent use would mean some pretty long recharge times.

Furthermore, though I’m only currently charging at 9 amps, the “Zephyr” BMS is capable of handling as much as 20 amps. Since I wired the BMS to cope with its full potential, upgrading to a 20 amp charger could mean bringing the time for a full charge down to just 1 hour 15 minutes!

Recharging at 9 amps

Below you can see the state of the pack shortly after a full charge. The banks appear a little ragged at first, as the cells take a while to settle, but the cells soon level out to within a fraction of a percent of one another, with a typical pack delta of between 3 and 20mV.

Pack reading immediately after a full charge

For my next test I’m going to do a longer, out-of-town journey, perhaps using a speed-control setting that reigns in the power a little. If I took the top-box off, that’d make it more efficient too, but I’m not sure if I’ll do that as it doesn’t really reflect my real-world usage of the bike, where the lack of under-seat space requires that I keep that extra luggage space handy…