ANE (All New Energy) BMS (BMI/LifeBatt/PSI)

i spent a few minutes tonight tracing out signal section of the VMS boards and identifying the pinouts of the 2 main connectors. mostly i was interested in the Wakeup and UART signals going to the opto-isolators.

VMS OUTPUT SECTION.jpg
 
note that the input signal to each board is isolated. the outputs are not isolated locally, but are isolated at the input section of the next board up in the chain.

the LED portion of the optos is connected directly to the connectors. the output of the next board in the chain drives them directly.

rick
 
excellent diagram, very clear! I'm happy someone could trace a VMS since all my info was indirect or inferred.

so, according to your diagram, if you haven't left out any resistors one can say about CN2 (which is our interesting port):

-the 4 output signals include an on-board current limiter and can be directly connected to an opto input.

-the 2 input signals are directly connected to an opto input and need an external current limiter.

it would be nice if you could trace one of the 6 TD drivers, so that we know the "kosher" current limiter resistor to drive the 2 inputs. we would also learn what type of optos are acceptable to isolate the 4 outputs.
 
no, i did not leave out any resistors.

the resistors are real tiny. and i don't have enough magnification or appropriate lighting to trace them out.

one thing i am sure of - those are the same K1010 optos that are on the charge/discharge board thay you have. those numbers are big and clear. so as an un-educated guess we likely need 4mA or so to drive them properly.

soon as i get the oppourtunity i'll likely discharge my pack till i get the LVP line active and i'll measure the voltage across the LVP opto to confirm.

rick
 
> soon as i get the oppourtunity i'll likely discharge my pack till i get the LVP line active and i'll measure the voltage across the LVP opto to confirm.

you don't need to if you have serial access. here is the latest version of my scripts. configure in ane-config and use the ane-charger/ane-load commands to force triggering of the OVP/LVP signals. (I'll post more about this zip when I have time.)
 

Attachments

  • ane-0.85.zip
    9.8 KB · Views: 54
ok, this BMS was apparently designed with the covert intent of frustrating me.

I thought I could solve problem A (4.1V overvolts) for a charger without trickle current by modulating the OVP signal so that cells don't trip over a certain safe voltage. but nooo...

when the VMS detects a 4.1V overvoltage it will 1) trigger the OVP signal to disconnect the charger, 2) keep the shunts going on, and 3) wait for all cells to be below 3.5V before releasing the OVP signal again.

the VMS has commands to force true the OVP at will, and to release it to it's due value, but the way they implemented them sucks. when triggered by a command, the VMS takes it as if it were a real overvoltage and will refuse to release the signal until all cells go below 3.5V! so if you attempt to keep the cells say at 3.55V by modulating OVP, each signal trigger will ramp all cells down to 3.5V and then back up to 3.55V over and over. this can't be good for the cells! anyway, those with a charge FET and a dumb constant current charger can ping pong the cells from 3.5V to 3.52V or something like that and hope they don't strain.

the two black lines are the mean cell voltage and the OVP signal override. take a look:



so there goes that!

and to solve problem B (cells not balancing correctly if the charger voltage is not exact when using multiple VMS boards) I thought that I could continuously feed the average cell voltage back to the VMS chain so that all boards can balance against it anywhere in the 3.5V to 3.65V range. I tried the documented command (which seems to be documented incorrectly) and many other variants I could think of, but the boards just ignore them all completely. frustrating! especially since I don't want to charge the cells at 3.65V, I'd rather charge them to around 3.5V

and faking the average could be used to choose a specific cell charging voltage without messing with the charger voltage, which is what I wanted to do, but there goes that too!

(but I found out that at least I can balance the cells at 3.6V; later...)
 
in that case, i still need time to build the breakout box. which with this latest into still need a bit more revision. but i have some work pressures that i need to address first.

thanks for the scripts.

now if andy h. could send us the info on the charge/discharge boards that he promised, we may add some additional useful info to pool with what we have available. always better to have more information instead of less before you start playing with crap. especially if you only have one test subject.

from your last post it is most obvious that I sould ditch the so-called "display board" and instead either get an original or roll-my own version of the charge/discharge board. i'll email Andy H. and see if he has any of those to spare and at what cost.

rick
 
> it is most obvious that I sould ditch the so-called "display board" and instead either get an original or roll-my own version of the charge/discharge board.

why? if you want to use the FET charge protection, keep in mind that you also need a charger that goes to trickle < 200mA for this balancing system to work. it is obvious now that this VMS was designed to be used with a charge switch and a trickle charger; if any of those elements is not there, it won't work.

if you do have such a charger you can roll your own relay or fet and plug it to the DB9. just make sure the relay circuit keeps it shut off if it doesn't detect the +5V signal from the DB9, so if you forget to plug it in during charge the battery won't fry.

then again, the display board with its sturdy connectors ain't much use if you mount the USB bridge and the relays on the pack... and the cutoff board has both.
 
too short sighted there.

i'd also add a provision to use the board as a solid state contactor.

rick
 
> (but I found out that at least I can balance the cells at 3.6V; later...)

this is the pack on tricle charge:

View attachment trickle.png

from sample 0 to 15 the cells are being brought down by the VMSes and the charge FET is off; this is the result of an earlier OVP force and release pair of commands (not shown). at sample 15 the FET is turned on and trickle begins.

"bunching" shunt action keeps each cell bunch together from 3.5V to 3.65V as expected. above 3.65V the shunts are fully turned on and overcome the trickle current, preventing further charging.

past sample 70 my script detects no progress and shuts down the FET.

the surprise here is the change of slope at 3.6V. obviously the shunt current is regulated in 3 stages: maximum above 3.65V, medium from 3.65V and 3.6V, and low from 3.6V to 3.5V.

EDIT: this is not true! see my post below...

clearly the system expects a charging voltage of N*3.6V (not N*3.65V as I previously thought) and at that voltage it will balance all cells in a multi VMS pack correctly during trickle (no problem B).

why wasn't this behavior observed earlier? for now I'm guessing it emerges only after an overvoltage event. this can be a true 4.1V overvoltage or one simulated via the force OVP command. so apparently the 4.1V peak is always expected, and the cells won't balance unless the peak happens. (or maybe ANE wanted to balance the cells only when sufficiently unbalanced? I don't think so...)

the VMS docs mistakenly say the system expects a N*3.65V charger. but it's worth noting that the charger sent by PSI is spec'ed at N*3.6V and was precisely set there before I touched it!

the complete picture of ANE's system is beginning to take shape:

-must be used with a compatible charger that switches to trickle when the charge FET is momentarily turned off.
-trickle current must be less than max shunt current for the board version in use.
-must be used with a charge FET.
-problem A, the 4.1V peak, is always expected (otherwise cells won't be balanced).
-the charger must be set precisely at N*3.6V (otherwise problem B shows up on multi VMS systems).

under these conditions, and if you accept the 4.1V peak, the system will work.

furthermore, I have a hunch that the 3.6V balance level can be set via the infamous "average command". continuously feeding back the cell average to the VMS chain would solve problem B for a charger set anywhere in the N*3.5V to N*3.65V range.

the stand-alone charging can be enhanced in 3 ways by an external controller (such a PC running my scripts):

-the 4.1V peak can be avoided by briefly forcing the OVP signal at a lower preset level, such as 3.67V. [reason for needing an external controller: unknown!]

-the charge FET can be shut off by forcing OVP when end of charge is detected to avoid keeping the cells at 3.6V for extended periods. after this the VMS will quickly bring the cells down to 3.5V and then let them be. [reason for needing an external controller: the VMSes in a chain are isolated and don't know the state of the cells managed by other VMSes]

-the cell average can be continuously fed back to the VMS chain so that problem B is avoided for chargers not set precisely at N*3.6V. (it allows using chargers in the N*3.5V to N*3.65V range. it allows you to choose your preferred cell target voltage.) [reason for needing an external controller: the VMSes in a chain are isolated and don't know the state of the cells managed by other VMSes]

of these things, the first two are implemented in the scripts posted above (ane-0.85.zip); the average command haven't worked so far... I need documentation!
 
Good sluething! :) I don't know if it makes any difference, or not but these PSI/BMI cells have a somewhat unique characteristic where they won't hold a surface charge at all, after charging. Within minutes, the cells will all be down around the actual full voltage level, which is around 3.37-3.38V, for these.

-- Gary
 
just a quick note here. i discharged the pack until the LVP signal became active. i grounded the LVP output through a 330R resistor. just under 1.2V drop. so that means the outputs of the display board can drive a 4mA signal or so. so we can drive just about any old garden variety opto isolator with it.

next step is to isolate a USB to RS232 adapter and hook it up to a PC.

that should be my next step.

rick
 
apparently, the graph that showed increased shunt current above 3.6V was a fluke, I couldn't reproduce it. maybe the VMS boards just delayed the turn on of the shunts and chance had it that the cells were precisely at 3.6V at turn on.

I set the charger to N*3.6V and tested...

View attachment failed3V6.png

the FET cut on the very beginning switches the charger to trickle. there's zero tendency to balance the cells at 3.6V. the script stops charging when it finds no more progress.

there's strange behavior; the shunts are switched on and off for no apparent reason. for instance, the green cells shouldn't be shunted but apparently are, as low as 3.4V. I can't make any sense out of this, if anyone can explain please do so.

now the only hope to lower balance voltage lies with the average command. I'm trying to get some info about it, and if I don't I guess these tests are over.
 
i discovered the greatest reason for an active cut off. to protect me from my own careleness or stupidity. let me explain.

i charged up an 8 cell pack. i hooked up a 5 amp load and left it to discharge the pack. the phone rang, UPS came to the door, and i had to run to the drugstore. i forgot all about the pack. by the time i got ack from the drugstore/walmart/starbucks, etc. the pack was completetly discharged. the 24V pack was reading less than 10V. 3 of the cells were still over 2V but the rest were reading less than 1V.

i let the pack rest an hour. and i checked the cells again. now it read ust over 11V all of the cells except for 2 had recovered some voltage. 12 hours later the pack has come up to 17V. all of the cells are over 2.3V except for 2 which are still below 1V.

so i have 2 cells that are dead. 3 that are likely okay (the 3 that were still over 2V from the start) and 3 that have likely losy some of their capacity. so i guess i'll be replacing 2 of the cells for a start. that was an expensive errand.

i wonder how well the new PSI cells mix with the older LifeBatts.

an active cutoff would have prevented this. not being careless would also have prevented this. to the drawing board.

rick
 
okay this will be attempt #3 for a breakout board.

Breakout Board V3.jpg

the problem is that there are 3 separate grounds (PC, VMS, Vehicle) and only 2 separate power sources (PC, VMS) and in order to isolate all 3 a third power source is needed. I am attempting to do that using a charge pumped capacitor circuit using 2 gates of a 74C14 schmidt inverter. it should provide enough current to drive a couple of opto LED's.

rick
 

Attachments

  • Breakout Board V3.pdf
    19.9 KB · Views: 62
I already spotted an error. the e-brake interface is inverted and should not be. that is a simple enough fix. just need to swap around the transistor and resistor. (Q2 and R6)

rick
 
i re-drew the sketches that Lanchon provided. i only included the charge/discharge and buzzer sections. i hope that i did not make any mistakes.

discharge.jpg

these boards come in 12V and 48V flavors. i believe that this is the 48V

rick
 
very sorry to hear about the mishap with your pack. I had a similar episode involving a single A123 cell left on an untested charger that I'd just hacked (badly!) out of a mobile charger. the cell overvolted to 5.5V for a few hours. surprisingly it came out undamaged and to this date it performs on par with the rest of series pack it's in.

after this incident I ALWAYS set a clock alarm when I do a test that doesn't have an automated cutoff...
 
> these boards come in 12V and 48V flavors. i believe that this is the 48V

you're right.
 
> the problem is that there are 3 separate grounds (PC, VMS, Vehicle) and only 2 separate power sources (PC, VMS) and in order to isolate all 3 a third power source is needed. I am attempting to do that using a charge pump...

no need man! call the VMS ground "OGND" (for outputs and +5V), and the Vehicle (or Car) ground "IGND" (for inputs).

OGND is NOT isolated, it is tied to the pack's negative. but IGND *IS*!

you don't need a charge pump. you should:

-return all outputs to OGND. (in your schematic you're returning serial TX to IGND!)

-tie the USB (or PC) ground to IGND, and feed the input signals (RX and WAKEUP) directly without optos (the optos are on board the VMS).

please ask if you're unsure.
 
in the case of the Rx and Wakeup. i was also using the opto as an inverter. the outputs are inverted on the VMS board.

could you do another ghetto-cad schematic to show what you mean? Please

rick
 
a ghetto-cad schematic... ouch, that hurt!

I don't know what polarity you need to use, but you don't need a 3rd power supply. here are the circuits, inverted or not, and with or without buffering (depending on the USB bridge output type):

View attachment opto-drive.png

if you want to drive both VMS RX and WAKEUP with the same USB bridge TX signal, you can do this replacement in any of the four circuits above:

View attachment opto-dual-drive.png

note1: the fact that the returns of both input optocouplers are tied together to form the CAR_GND line doesn't pose any problems for this replacement.

note2: a charge pump does not isolate at all. if you wanted a 3rd power supply (unneeded here) you'd need an isolated DC/DC converter. small and cheap POL (point-of-load) solutions are available from a number of manufacturers such as TI.
 
Lanchon said:
a ghetto-cad schematic... ouch, that hurt!

<snip>

note2: a charge pump does not isolate at all. if you wanted a 3rd power supply (unneeded here) you'd need an isolated DC/DC converter. small and cheap POL (point-of-load) solutions are available from a number of manufacturers such as TI.

don't know but i'll bet that pump will show less than 4uA leakage from one side to the other. bridges and caps may not be quite as perfect for an all out CSA and UL use but it would be good enough here. using a common gate and a couple of diodes is much cheaper than a POL switcher. besides much bettter choices are available from National and Linear Technology than TI. that is unless you own stock in TI. wait a second, I do.

so now according to this latest info we are back to using almost the same schematic as was used on the first schematic back on page 3. where you didn't like the lack of opto's. all it would need is an inversion of both the TX and RX signals and a tap for the wakeup. both of which are easy to do.

and again with the second design back on page 4 with the opto's it is half right because the TX needs and inverter but not an opto(it is on the VMS) board. but since the opto is wired as an inverter it would work properly. add an inverter to the RX and a tap for the Wake-up and all would be well and done. but then you din't like the 2 separate GNDs tied together. which you insisted on in the first, didn't like in th second, but now is okay and should be used again.

both of these should have been obvious to you with the knowledge that you had of the VMS board and the doc's that you sent me. the only thing that the docs agree on is that the outputs and inuts use inverted logic.

now don't get me wrong. you obviously have a handle on the software side. so why all of confusing stuff on the hardware?

rick
 
Back
Top