Poor man's 15 Amp battery charger?

sketch.png
oldswamm said:
I'm confused. What are you going to do with the pic on the mains side? Are you going to measure something there?

Measure the voltage of the pack.
The solid state relays are already isolated, and that's all I figured on having on the mains side.

My board would be at Batt-, and there's no practical way to isolate it that I can see.

I would ground the case, and the only thing not enclosed would be the battery.
The battery leads are connected to the mains, but heck, the battery is dangerous at 24s or more even without this.
<edit> Do you have a plan to isolate the battery from the mains? Because the battery is dangerous,it should be totally isolated, and well insulated whether using this charger or not. <endedit>

Here's the path that I see:

1. Mains is connected to the caps via the SCRs.
2. The caps are connected to the bridge.
3. The bridge is connected to Batt+ and Batt-

None of these are isolated. So that means that the pack is connected to mains voltage. And if it so happens that that the hot and neutral are swapped on the plug/socket, that the ground is in fact connected to the Hot side of the mains.

Now the control board.

1. Mains is isolated from the board via the xformer power supply.
2. Control board is using optoisolators to throw the SCRs.

So far the control board is isolated. Now here's the kicker:

* Connect the ground of the control board to Batt- !!! :shock:

All the isolation goes poof! The control board is now directly connected to both the pack and the mains with no isolation. And if that ground is connected to the hot side, then the potential of that connection can by up to mains voltage. It sabotoges all of the isolation that you're trying to accomplish.

Throw up a sketch, so we can see what the extra processor is for. It would be nice if we could come up with a cooperative design. The way things usually work on ES is there's discussion, then everybody does their own design. If you have a better way than I can come up with, and it's not to expensive, I'm fine with going with your design.



First Sketch. Hope it comes out OK.

The objective is to maintain the carefully constructed isolation of the control board. The only purpose of that ground connection is to measure the pack voltage. The extra processor's job is to measure voltages/currents on the mains/pack side, then communicate that information to the isolated control board via an optoisolated interface.

The point is that any connection between the control board and the pack/mains needs to be isolated. The power supply is. The SCRs are. The measurement needs to be too.

Bob

P. S. for those of you who want one of these chargers, but don't want to build one, you can buy it here.
http://www.e-volks.com/capacith_charger.html
I don't think I would want to be their insurance provider, though.

And the price!!

My P.S. from the diyelectriccar thread. This site: http://stores.directhvacsupply.com/StoreFront.bok sells the caps ultra cheap. I just purchased ten 80 MFD 440V run capacitors from them for $60 including shipping. Show be good enough to get the charger in the 30A range.
 
You STILL haven't said WHY the processor board has to be isolated from the battery (and consequently the AC power).

If you have the case open with power to it, the rectifier, the caps, the secondary processor (if used), and the battery connections have dangerous voltage available any way, so who cares if the primary processor board does also. If you have ANY AC powered appliance open, with power to it, don't touch ANYTHING!

What country do you live in that doesn't have polarized power connectors anyway? (Would be nice if you filled in that info in your profile.)

Here in the US we have 3 (or 4) pole outlets for 120 or 240V, all of which include a ground connection (and 2 prong plugs are 'polarized' as well). (I thought all countries had grounded outlets these days.) I fully intend to use a metal case and 3 conductor GFCI.

Said ground connection would be connected to the case, so any short to the case will trip the GFCI. The polarity of the connection to the caps shouldn't really matter. The battery will have AC to it no matter what, and that's the only place the operator could come in contact with it, (if it isn't insulated). That's why I stated that the battery should be well insulated (not to mention that it's dangerous even without the charger connected if it's high cell count).

SCRs won't work, unless you use 2 back to back. You need AC to the caps. You need to use triacs with optoisolators, commonly called 'AC solid state relays'.

If you ARE going to use 2 isolated processors, you would be far better off using serial communication. That way you won't lose ANY accuracy, and can eliminate all the RC and the op amp, and can send the current info over the same connection (unless you were going to use a 3rd processor for current measurement). I'm afraid I probably wouldn't use your design if you add the extra complication, though, unless you can come up with a valid reason.

Thanks for the link for caps.
<edit>They don't give full specs (they say they're smaller than other peoples, but don't give the dimensions :D ), not even the brand name, and when I tried to email them, the email address they give is bogus. I think I'll stick with brand name even if it costs more.
I take it you live where there's more current available from the standard outlet than in the US, or are you going to use less common high current connections to get your 30A? If you use 220V line you will get more than 30A from 800uF, won't you? <endedit>

Did you notice that that 'commercial' charger doesn't use a grounded outlet, or apparently GFCI? :)

Bob
<also edited for grammar.>
 
oldswamm said:
You STILL haven't said WHY the processor board has to be isolated from the battery (and consequently the AC power).

Because it's not isolated from mains power.
If you have the case open with power to it, the rectifier, the caps, the secondary processor (if used), and the battery connections have dangerous voltage available any way, so who cares if the primary processor board does also. If you have ANY AC powered appliance open, with power to it, don't touch ANYTHING!

I think you're missing the point. Even with the case closed any component that is attached to the ground side of of the rectifier can potentially be hot. It's the reason why there's isolation in the first place.

What country do you live in that doesn't have polarized power connectors anyway? (Would be nice if you filled in that info in your profile.)

Here in the US we have 3 (or 4) pole outlets for 120 or 240V, all of which include a ground connection (and 2 prong plugs are 'polarized' as well). (I thought all countries had grounded outlets these days.) I fully intend to use a metal case and 3 conductor GFCI.

USA. Georgia. Hence the handle.

Two articles that illustrate my point:

http://sound.westhost.com/articles/power-supplies2.htm#s7

http://www.rfcafe.com/references/electrical/neutral-conductor-hazards.htm

to quote from the second article:

So, the cardinal law of working around live circuits is to assume that the neutral conductor is at the same potential as the hot wire.

Electrical circuits are sometimes miswired, even with polarized plugs. It's one reason why two pronged devices such as power tools are required to have double insulated wire.

The first article points out that no circuit with outside interfaces should be connected directly to the mains. If the control board is tied to the rectifier GND point, then it can be at mains potential if plugged into a miswired outlet.

The only way to guarantee safety is completely galvanic and/or optoisolation of at very minimum the I/O interfaces from the hot parts of the charger. Since you had already isolated the control board with its power supply and power control outputs, it doesn't make sense to defeat that isolation by tying the two grounds from my sketch together.

Said ground connection would be connected to the case, so any short to the case will trip the GFCI. The polarity of the connection to the caps shouldn't really matter. The battery will have AC to it no matter what, and that's the only place the operator could come in contact with it, (if it isn't insulated). That's why I stated that the battery should be well insulated (not to mention that it's dangerous even without the charger connected if it's high cell count).

The battery isn't at issue. It's isolated in the vehicle (not connected to the chassis) and there are no interfaces between the battery and the mains. I'm not saying to isolate everything, just everything that the user is expected to interact with.

SCRs won't work, unless you use 2 back to back. You need AC to the caps. You need to use triacs with optoisolators, commonly called 'AC solid state relays'.

Agreed. Last time I did that was with Christmas lights. Used MOC3010 opto triacs to trigger some RatShack 6A triacs.

If you ARE going to use 2 isolated processors, you would be far better off using serial communication. That way you won't lose ANY accuracy, and can eliminate all the RC and the op amp, and can send the current info over the same connection (unless you were going to use a 3rd processor for current measurement). I'm afraid I probably wouldn't use your design if you add the extra complication, though, unless you can come up with a valid reason.

It's a debate of a digital vs. analog interface. I can be swayed. I was still thinking about the non software safety cutout. Using an analog interface facilitates having a non software backup using comparitors.

Thanks for the link for caps.
<edit>They don't give full specs (they say they're smaller than other peoples, but don't give the dimensions :D ), not even the brand name, and when I tried to email them, the email address they give is bogus. I think I'll stick with brand name even if it costs more.
I take it you live where there's more current available from the standard outlet than in the US, or are you going to use less common high current connections to get your 30A? If you use 220V line you will get more than 30A from 800uF, won't you? <endedit>

I heard from the guy. He's shipping them today. I'm basing the rep on the posts I saw on diyelectriccar from last summer. I figure at $5 a pop, even if they don't give full current, they are still a good deal.

You are on the mark for voltages/currents. I was going to test up to 15A to see how well it works. I'm testing with a single cap and getting 3A consistently out of it. I'm currently limited by a 8A bridge that I'll need to beef up.

Bumping to 220V would be the most likely permanent solution for the house charger. But at that point it's really a matter of cabling, not any charger hardware. It'll work fine at both 110/220V.

Did you notice that that 'commercial' charger doesn't use a grounded outlet, or apparently GFCI? :)

Bob
<also edited for grammar.>

Scary isn't it? :shock:

ga2500ev
 
This is great! Please continue towards a final solution. I was tempted to try a motor run cap and bridge to charge my pack with 240v and 30A out of one of the hundred J1772 charging stations popping up all around me, but even with the voltage cut-off circuit, I just didn't feel comfortable trying it. Now you folks are bringing up all kinds of isolation issues I hadn't thought of. Thanks
 
ga2500ev said:
oldswamm said:
You STILL haven't said WHY the processor board has to be isolated from the battery (and consequently the AC power).

Because it's not isolated from mains power.

That's not really an answer. The question was, 'WHY do we care if it's isolated'. To which you answer that it needs to be isolated because it's not. I could argue that the rectifier or the capacitors aren't isolated. They don't have to be isolated either.

It's NOT dangerous to the operator, or the electronics. It has no unisolated connections except to the battery, and it's only connection to the high side of the battery is through a network that protects the board/processor. As long as it only has one 'solid' connection it's fine, there's no reason it has to 'float'. On top of which the battery, whose connections ARE outside the chassis, ARE connected to the mains (through the rectifier). The reason we isolate the bike frame, is so that if there IS a short, (such as through your body), there won't be a complete circuit.

YOU'RE the one missing the point. As long as the processor is enclosed in the case it COULD be connected directly to the mains, either side, and as long as the board doesn't care, I don't.
There is NO safety issue as long as it's enclosed.

The reason it's connected to the Batt-, is that's where the measurements are taken.
I repeat, there's absolutely no reason to isolate it from the batt-. The only other connections are to Batt+, and that's through a high enough value resistor to limit the current to safe values, (and it will also be connected through an RC network for the serial stream from the battery processor).

Your second board isn't isolated, why don't you care about it, there's no difference.

The article you quoted is concerned with the neutral, not the ground. That article even pointed out that a circuit like this, which connects the mains to the load 'IS NOT SAFE'. (That's one reason why my design wouldn't connect caps till a battery is detected.)

I already said 'IT DOESN'T MATTER WHICH LINE IS CONNECTED TO THE CAPS', neutral or hot, absolutely no difference, the battery connection will be dangerous either way, and at exactly the same potentials. That's WHY we use a GFCI plug. If some 'electrician' has mixed the neutral and ground, the GFCI will open immediately. Using an unisolated processor to isolate another processor will not effect that in the least.

If the only things the human can come in contact with are the case and the battery, they're the only things that you could argue for 'isolating', and it's established the we CAN'T isolate the battery leads, and the case should be grounded so that any shorts which would make the case 'hot' if it was isolated will blow the GFCI instead of making the case a source of danger.
If you use a nonconductive case, you could do without the ground (think about moisture though), but if you use a metal case you should ground it.

You never said whether you were worried about the processor or the operator, but isolating one of the processor boards (if you have 2) isn't going to protect either.

I wouldn't have guessed GA from your signature. When I think of state abbreviations, ga doesn't trigger a 'oh GA' response even after you point it out. Also, there are people here from all over the world, and most have signatures that could mean numerous things. I've asked a couple what their signatures meant (via PM), only to be told 'that's my name'. :lol:

Can't think of any other way of saying it. You're trying to solve a problem that doesn't exist. We never need complete isolation (float), we just need to avoid a completed circuit (discounting that RF or a changing magnetic field can make a circuit without contact). If we tried to supply power to the board with a non isolated supply from the mains, then we would have multiple points of connection, which could and probably would cause problems, but one connection, as long as all others are isolated, is fine, whether its ground, neutral, hot, B+, or a floating potential such as a car chassis, or bicycle frame. If I didn't want the processor to run before the battery is connected, I wouldn't object to taking power for the processor from it (the battery).

This post is obviously aimed at GA2500, but IBScootn, you will note that I do not agree with the former that there is any reason to float anything. Follow his second link and you will see that THEY say NOT to build this charger. I think it's safe with thoughtful GFCI wiring (see above), but I'm not sure it will work with J1772 (something we're not likely to see in bush AK in the foreseeable future, I expect). I would think they pretty much use standard GFCI technology, but someone needs to try it (and/or research the J1772 standard more than I have).

Bob
 
ga2500ev,
After I went to bed last night I got to thinking about it, and decided I owe you an apology for the last couple posts.
I also decided I've PROVEN the point, the point that I'm a stubborn old man! :oops: :)
Not admitting I'm wrong mind you. :wink: But i will concede that you have an argument.
I even like using multiple processors to make programing and design easier, for example as separate processors for controlling the motor and for all the ancillary functions in a controller.
In this case including all the programing in one processor wouldn't be hard, but your idea would make it easier to build the thing (the display and buttons could be mounted directly to the case). Since each processor can have fewer pins, it wouldn't make the board significantly harder to build, or take up much extra real estate.
I'll post some fresh drawings and a summery of (other) things to argue about later.
Bob
 
No apology necessary. I think I'm just fearful of mains power of any type. I still remember being shocked by my Christmas light controller due to lack of isolation somewhere.

As a concession I'd like to offer a UI suggestion that obviates the need for isolation. It's a paper I came across that described a trivial microcontroller input using an LED as an input device. In short bright light shined on an LED changes the amount of time it takes to change an I/O pin. I tested it and it actually works. You can find the paper here:

http://www.merl.com/papers/docs/TR2003-35.pdf

May actually work well for this project because the UI doesn't really need to be all that sophisticated for a charger like this. So an LCD display and an LED indicator (such as a charging/charged indicator) could actually be sufficient for the UI and put behind plexiglass with no buttons at all. No need for any type of isolation at all since the user will have nothing they can touch directly except for a grounded case.

P.S. My motor run caps are on the way. I'll let you all know about their performance when they show up.

ga2500ev
 
oldswamm said:
I already conceded!
I have a full set of schematics drawn, but got busy.
I'll try and post them tomorrow if I get time.
Bob

I read posts in order. Didn't see the second post until I answered the first one. See my edited post.

You are certainly fast! I forget that Alaska time is like 5 hours behind Eastern time.

Look forward to see the schematics.

ga2500ev
 
The 440V 80 MFD motor run caps that I ordered came in yesterday. Pulled two out of the batch and added them in parallel to the original cap I purchased. They turned out to be three slightly different sizes (can diameter) with the original cap being the widest. Current output jumped from 3A to 9A and not only pushed the voltage on my test low car battery but burned out my cheap "10A" ammeter on the $3 Harbor Freight voltmeter I was using for testing. It clearly wasn't rated for that high a continuous current. The 3A of current pushed the battery to about 12.3V, while the 9A pushed it to 12.8V. The charger is working, but the battery is in bad shape, making it a good test candidate.

I plan to continue my tests by wiring up a 220V 40A test station outlet and throwing in the rest of the caps. I'm going to have to switch out the cheap 8A Radio Shack bridge and build a new one using the dual 100V 100A Schottky diodes I have for my motor controller project.

Not bad for less than $100 in parts so far.

ga2500ev
 
It would be good to sense the voltage difference between the ground and neutral connections, and refuse to operate if they are more than a few volts apart. Then perhaps one processor would be adequate. If two processors were to be used I'd want the second one to be a redundant safety control, we really don't want this charger to not shut down. The micro with the user interface is more prone to problems, so the other one should be really simple and insure the charging cycle is properly terminated. Redundant means they sense and turn off the cycle in different independent ways. So one runs the solid state relays, and the other operates a master relay that is not solid state and has actual airgap between the contacts.

I don't think a GFCI outlet protects against a neutral-hot swap, though it could.

Individual fuses on each capacitor would be nice. They could be lower values that way and a capacitor short would be much less exciting, and the charger would even mostly still work.

I have a 1000V 30A bridge on order.
 
Would it be possible to put a zener diode between the battery+ and the neutral, to trigger the GFCI if battery voltage gets too high?

Does the battery get a little warm when it starts to get overcharged? In that case you could use a mechanical termostat mounted on the battery to disconnect the charger, as a last resort.
It won't help if the battery only starts to get warm when the thermal runaway has been triggered, though.
 
ga2500ev, you should check your PMs.

I drew all this a couple days ago, then got busy (and also got sick), so I didn't post till now.
And keep in mind that I'm trying to design for 'everyone', not just myself, so would like it to work with 12 to 150V. I know this is a long post, but I tried to be concise, so please be patient while reading it.

First, I mentioned using a crowbar on the output earlier, but some might not know what it is, or how it would be implemented. The idea is to absolutely disconnect the battery from the charger. (Think of throwing a metal bar across a set of power leads.)
I haven't worked with SCRs for decades, or done any research, so left the interface as a box with a ? mark for now. :) The user interface (main) processor would send a 'watchdog' signal every 100ms or whatever, and if the crowbar interface doesn't see it, or if it's not the expected format, it will drop the crowbar. The user interface could also send a max over voltage spec to the crowbar processor, so it could sense over voltage and drop, but if the main processor was in an unintentional loop, it could possibly sent the wrong voltage (not absolutely foolproof), but in that case it probably wouldn't send the 'watchdog' signal. The zener could be replaced with an LM431. The over voltage portion of circuit wouldn't do any good if the processor is programed for too high a voltage either.

crowbar sch.jpg

Next is the circuit I'm considering for putting a serial number ID on each battery. (Not having to program the charger every time you plug in a battery is part of making the system fool proof. If the user doesn't want this feature, leave it off!) The charger would then be programed with the charging parameters for that ID #. If said parameters change, as with removing a bad cell, all you would have to do would be to change the parameters stored in the charger.
Starting from the upper left corner and going clockwise I will try and describe what I am trying to do, and why I chose the components.
The 900M resistor would supply current, and would be different for different voltage ranges. The processor would sleep around 98% of the time for low current consumption (<100uA). The circuit with the 100k resistor is used to detect charge pulses, and their timing so we can transmit at a low noise point (wake on rise). The next circuit would ideally convert the 150khz square wave output of the processor to a sine wave superimposed on the Batt+. The diodes would be to absorb spikes during connect and disconnect. The resistors with the T are thermistors for measuring batt temps. They are the reason for the processor choice. The touch sensor inputs make resistance measurements easy (they put an accurate current source out, then measure the voltage). I would hope it's obvious why we want battery temperature sensors.
For the signal I'm thinking of a pulsed 150khz tone. By defining a 0 as no pulse followed by it's mirror image, and a 1 as a pulse followed by it's mirror, I have a sync check no more than every 2 bits, as well as bit by bit redundancy The red dotted lines represent the sample points for the main processor.
I show 9 bits for the serial, but if it went past 256, we could use the first bit = 1 to increase the number of bits in the SN. 6 bits should be plenty for temp for this application, right?
<edit> This would be a blob of epoxy with a red and a black wire and 2 wires for thermistors from it, marked with a SN and voltage range.

Batt SID sch.jpg

This is what I've come up with for the main board. After much effort, ga2500ev convinced me to use 2 isolated circuits. For myself it would be unnecessary (IMHO), but since I'm designing for everyman.... This way it can be assembled with whatever button switches you have laying around.
Again clockwise, the transformer could be 1.1VA for power for the board only, or 2.4 to run a small fan, or 6VA to run most any fan, or even 2. It's drawn as 120v, but if I designed a 'production' board it would default to 220, and would require cutting a trace and soldering in jumpers for 110 (better to connect 110 to a 220 circuit than 220 to 110). It would supply power for the isolated processor through the 5v regulator.
The resistor limited power supply for the power side (unisolated) processor is fairly straight forward although not efficient (and not good for less than 16s as drawn). Again, the zener could be replaced with an LM431. Next a voltage divider to measure BattV. The first op amp and associated filter would be to convert the 150khz tone pulses to relatively noise free pulse inputs to the processor. (Input from those more experienced with this type of circuit would be appreciated. This is all off the top of my head with no research.) The shunt amp is straight forward. It could use 1, 2, 3, or 6 shunts for 12 to 75A at 1/2 the rated resistor dissipation. If you're willing to dissipate 1w from 1w shunts it would be good for 100A. I think it should be sampled every 100uS or so and averaged from 0 to 0 (I would appreciate it if someone with one of these operational would post an o-scope pic of the battery current). The opto is used to isolate the 2 processors, and there would be serial data with voltage, current, and battery ID data every 17ms(?) or so. Since accuracy of voltage measurement is critical, and the internal references are NOT accurate, I opted to use an external reference (the LM4040). We don't need accuracy at this point, as I would provide for calibration, but we do need repeatability. The only reason to use the 12F510 here is to minimize the number of different processors I need to buy.
The 18F26k80 processor is the user interface. The reason I chose it, is I wanted more than 256 bytes of EEPROM, for various program and battery parameters, and didn't want to use an external IC. Note that I changed the isolated power labels to VSS' and VDD'. Since I now have lots of pins I redrew the LCD interface for 8bit. Does anybody need/want r/w? Since I have lots of pins I included a fan tach input (could be 2). The serial output to the crowbar should be obvious. The HVC input is intended for the optoisolated output of a high cell voltage detector such as methods is selling. PB are push button inputs, which could be capacitive sensors. I added open collector transistors to the SSR outputs so 12v SSRs or even mechanical relays could be used. The transistors could be left out if using low current 5V SSRs. The 10k resistor to the transformer is a simple 'zero crossing' detector to get a 50/60 hz input for the timer.

capacitive chgr control sch.jpg

This circuit isn't really part of the above, but I mentioned it earlier, and probably nobody understood what I was getting at. We in the US tend to have rather wimpy wall power, especially if you are connecting to someone else's power where you can't be sure of the breaker capacity. This is a circuit so you can have 2 cords (with GFCI plugs) coming from your charger for double the power. The danger is that you could connect to outlets on different legs (220). If that happened with this circuit, the relay would open and the bulbs would glow. The resistor would be needed if the bulbs flow more current than the relay uses, and the diode wouldn't be needed with an AC relay. With a processor, you would disconnect the first 5 SSRs then connect SSR6 for 1/2 cycle every couple seconds. If current is present with SSR6 active, that cord is connected, but it could still be to the wrong leg and the relay just hasn't had time to open, so you would want the processor to wait a few hundred mS before connecting SSR6 and the other SSRs at the same time.

2 plug setup.jpg
 
I made a decent hvc cut off from an dpdt old relay for my solar system, I tuned it to shut down at 14.4 and every day it did just that with out failure. I used a zenner because this thing liked to switch at about 8v, a resistor to mimic a float, and I switched to and use the solar panels to keep the reed off after full charge , only until night the coil-reed would reactivate until morning. With 6.2v zener (I think) and the V drop over the relay coil and fine tune pot, it drew little current at rest voltages what 4v through a 120ma coild @12v lucky to draw 50ma. and the relay could handle 25 amps. I had to add a blocking diod somewhere as this thing would go zzzzzzzzzzzzzzzzzzzzzzt on and off so fast, I sort of wished I wrote this circuit down. I may recreate this device and see if I can make them shut off at 56v or something.

The relay came from an old GM controller and they have a few poles and what nots on them. They were used for LVC in those controllers. I remember hearing the click when the voltage got too low on my SLA's.
 
Is there a way to distinguish between the term for a high cell voltage monitor digital output, and the voltage across the entire battery.
In this thread HVC seams to stand for the voltage across the entire battery, whereby I thought it stood for 'high voltage-cell'. Apparently this is another acronym that has multiple meanings, which is confusing.
Do we need to come up with a new acronym for the voltages across the high and low cells, which are our real limits with lithium batteries?
Maybe we should start using HCV even though that makes it sound like an analog value rather than digital, and of course then all the BMS and HVC/LVC monitor manufactures would have to change their terms, which they aren't going to do since their outputs mean one cell is high or low.....
I guess I'm going to have to use the more verbose term 'High Voltage-Cell'. Hard to fit on a schematic though....
Bob
 
oldswamm said:
Is there a way to distinguish between the term for a high cell voltage monitor digital output, and the voltage across the entire battery.
In this thread HVC seams to stand for the voltage across the entire battery, whereby I thought it stood for 'high voltage-cell'. Apparently this is another acronym that has multiple meanings, which is confusing.

Welcome to the world of battery management. Both techniques are used. Many in the EV world have moved to thinking that monitoring at the cell level is overkill, but that whole battery monitor is insufficient. The current discussion has turned to the half pack monitor:

http://www.diyelectriccar.com/forums/showthread.php/battery-balance-monitoring-system-54845.html

Which measures the voltage difference between the two halves of the battery. In both charge and discharge modes, if one cell gets out of whack, the total voltage for the half of the battery that out of whack cell is located will change radically as compared to the other half of the battery. Measuring that difference is sufficient to indicate that either charging or discharging should be discontinued.

Do we need to come up with a new acronym for the voltages across the high and low cells, which are our real limits with lithium batteries?

They are called cell monitors.
Maybe we should start using HCV even though that makes it sound like an analog value rather than digital, and of course then all the BMS and HVC/LVC monitor manufactures would have to change their terms, which they aren't going to do since their outputs mean one cell is high or low.....
I guess I'm going to have to use the more verbose term 'High Voltage-Cell'. Hard to fit on a schematic though....
Bob

The term applies to both cases. The rationale is that if the cells are all balanced, then the sum of N cells in series is equivalent to N * (HVC of a single cell). So if you have 20 cells, and the single cell cutoff is 3.7V, then the HVC for the battery is 74V.

The failure occurs when the cells are not balanced. With lithium the charge/discharge curve is virtually flat during the entire charge discharge cycle. So both the cell voltage and the battery voltage is stable until one cell completely charges/discharges while the others still have available capacity. In charging, that single cell's voltage shoots off the chart, while the others stay flat. Say the per-cell charging voltage is 3.5V. So in the above scenario, the battery voltage will be 70V flatlined during charging. One fills early because it out of balance and it's voltage rises to 3.7V. Since all the others are still at 3.5V, only 0.2V is added to the battery total giving a total of 70.2V, well below the 74V battery HVC. So we continue to charge at full power. That cell, if it's way out of whack with the others in the pack would literally need to get to 7.5V before it'll trigger the battery HVC. But of course by that time, the cell is destroyed.

With cell monitoring, a signal would be generated when the first cell reaches 3.7V. Typical BMS systems will either shunt or redistribute the excess energy around the cell(in a top balancing scenario) , or will direct the charger to turn off (in a bottom balancing) one. In the top balacing case, the expectation is that the other cells are not far behind, and so often the single cell trigger will direct the charger to cut back the amps to a trickle making it easier for the charging energy to be redirected.

But now it's easy to see how half pack monitoring can accomplish the same task. When the first cells starts to shoot off to the stratosphere, its half-pack voltage will rise significantly relative to the other half-pack. If one sets a cutoff of say 0.4V difference, then a single cell would not be able to get above 3.9V before triggering the alarm. Of course you'd still need the whole-pack HVC so that if the pack is perfectly balanced and everyone rises to 3.7V/cell and 74V for the pack together, that the charger still will cut off.

So digitally, the inputs would need to be the whole-pack voltage and the half-pack voltage to the monitor controller. From those two, the difference between the measured half-pack voltage and the expected whole-pack voltage/2 can be computed.

Hope this helps...

ga2500ev
 
Any old timers want to weigh in as to what HVC stands for? I did a google search and the closest I found, out of over 50 definitions, was 'high voltage circuit' and 'high voltage capacitor'.

I know some people use the M in BMS to mean monitor, so you have to ask what they mean by BMS (whether it balances or not).

That link on DIYCAR discusses how to compare the 2 halves of a battery for 6 pages without anyone pointing out that it might not be a good idea, although they're using it for seeing an imbalance when driving, not charging. The worst you can do while driving is ruin a cell.

For charging I would consider it to be a bad idea. This goes much more for LiPo. If you have 2 high cells, one in each half, it's a matter of which catches fire first. If you have a low cell in the same half as the high cell you will be in the same danger. This does NOT qualify as foolproof.

For a bike with LiPo, the extra cost of monitoring each cell is high, but not as high as a fire.
For a car with LiFePo, the extra cost is trivial compared to the cost of ruined cells (again IMHO).

ga2500ev, I stick by my choices of processors for the already stated reasons. The 12F part you suggested (via PM) costs double what the 12F510 does, and is less widely available. The 16F1938 doesn't have 1k of EEPROM, and given the accuracy of the internal reference (+8/-6%) it probably doesn't have a decent temperature coefficient either (I couldn't find a spec). With a calibration routine, the accuracy of the LM4040 (.1%) doesn't matter, but we need repeatability to end up with accurate voltage measurement. The LM4040 probably wouldn't make it into production if I found a cheaper part with as good of repeatability, but if this is a one off project, the cost ($1.70) is irrelevant.

I would like some feedback.

Is anyone other than ga2500ev interested in what I'm doing here, or am I wasting my time?

Does anyone but me think automatic battery ID with battery temp monitoring is useful? Is wireless objectionable and people would really rather have a bunch of extra wires?

How about current monitoring with subsequent Watt-hour calculation?

Is multiple current selection something that nobody would use?

No comment on a crowbar as opposed to an extra mechanical relay (which could weld). It would ONLY activate in the case of a GROSS malfunction of the charger control. The only problem I can see would be if you were charging (for example) a 2Ahr sla with a charger fused for 100A, the battery and charger wouldn't be able to blow the fuses(<edit> Alan's idea of separate fuses on each cap would solve this on the chg side, if properly sized).
The crowbar processor could be configured to release the redundant relay(s) which would add to the cost and size (one advantage to that would be that the charger COULDN'T activate without a battery connected since this processor gets it's power from the battery).

Bob
 
oldswamm said:
Any old timers want to weigh in as to what HVC stands for? I did a google search and the closest I found, out of over 50 definitions, was 'high voltage circuit' and 'high voltage capacitor'.

Bob


Did I say HVC for BMS? If we type the letters "LVC " I certainly do not get our google definition return LVC as low voltage cutoff, or otherwze we have been suggesting low voltage CMOS.

These are acronyms and they can mean anything you want them to mean. Like my bike is a POS. Or, WTH? STHU with this BS. We just use them to make ease of both language iteration and literation..

I ment the relay idea for the voltage cut off (VCO? or HVC?) for a poor mans charger at full charge.

The BBS, battery balance system does not require to be onboard the pack for the ride. LVC only requires a simple analogue device to measure all cells down the series. It just makes it easier to plug in a two wire charger instead of a 18 wire charger 16s. This concept sort of escapes the realm of the poor mans charger definition , or PMC.

I turned a crappy thowout 5 amp 15v(18v peak) power transformer into 48v charger with an AC voltage multplier, 18v*4=72v.

BTW the AC voltage multplier was the best SLA charger I ever used and it used to desulphanate very well. The multpier took 15v @ 5A to 48v @ 1.2 amp to 60v @ 700ma using a more pulse mode charge via the AC rectification from initial charge to over charge, by the multimeter, inefficiencies inclusive. The current to voltage knee current was perfect in its ability to pack energy into an SLA. , I could of used my relay VCO if I had invented it at the time but most of the time it was easy to catch the charge state at full charge because it would take so long to get from 95% cpacity to 100%. in most cases 95% was fine. I think I only overcharged twice in 8mths I used it and all this seem to do is knock sulphur off the plates.
 
Everything can fails, even fails proof fails. A Wireless transmission, crow bar, digital, analogue, wire connections dry joints. You name it, it can fail and leave you in a puddle of doo.

If I trust my BMS I could end up in as much trouble or even more than if I trust my witts. Electronic reliablility vs Human error. In most case both is advisable. But the learning process requires one to go through the motion of being alert at all times and manual mangament is the best learners awarness course.

The best solution is often the least complicated and the essence of this thread can be, or better said, should be maintained with the ideal of safety being intact.
 
I think a lot of the 'disagreement' is because we each have a chemistry were thinking about.
When I think safety, I'm thinking primarily LiPo.

Leslie, you wouldn't recommend this charger, under manual control, into LiPo, especially if we're shooting for 2C+, as a 'learning process' would you?
Most people I know would learn that lesson real soon. :lol: (With me near the top of the list)

At any rate if we can make a charger safe for LiPo, just changing the charging parameters should make it safe with other lithium chemistries, and then all we have to do is add a drop detector and we can do the Nickle chemistries, every bit as safe as a commercial charger.
If the nickle based batteries had an ID chip (or if you only have one battery), the charger could 'learn' the normal knee parameters for even more dependable detection.
You surely wouldn't try and charge nickle based batteries manually, would you.

SLA are easy, although it occurs to me that (if it can ID it) the charger could be programed to do a regular maintenance charge. :wink:

Are you really recommending that I forget it, because people are better off with a manual or jury rigged setup?

To answer your points, if the ID fails, the battery will have to be programed in manually, just like a battery that doesn't have an ID chip, at least till you fix it.

The crowbar is a totally separate circuit (one of the important redundancies). It would require 2 different serial streams, generated by 2 different routines, in different parts of the program to reset it's timer, on top of which it will drop if the voltage goes above the set trip point. The crowbar's problem of a 100A charger connected to a low current battery can be solved by a low amperage fuse in the battery's charge line (not a bad idea anyway), and if we add fuses on individual caps, AND an extra relay on the input as Alan suggests, operated by the crowbar processor, we solve any possible charge side fuse problems. If you want to trust the redundant relay, the crowbar could be eliminated (it becomes redundant :) ). I guess I need to rename the crowbar circuit when I redraw it.

The idea is, if there's a failure, it will be that the charger 'doesn't work'. This is the safe failure mode. If it overcharges a battery, it will be because the end user miss set it, more than likely, if they have more than one battery, by charging one with the charger set for another, which is the problem I'm trying to address with the battery IDs. If you only have one battery, you probably won't miss set a charger.

Digital/analogue. Yes. What computers, including microcontrollers are good at, is analyzing feedback from the 'outside' (analogue) world.
I wouldn't consider doing what I'm doing with pure analogue electronics if that's what you meant. A foolproof seven (or more) chemistry, wide range, analogue circuit would be a nightmare. Computers are so much easier to change parameters on as well.

If done right connections can be extremely dependable. Almost everything but the fuses would be soldered in mine. I'm no fan of connectors. I even like screw mounted fuses.... Tie the wiring away from danger.

My ideal for safety is to design each aspect as safe and dependable as I can, with multiple redundancies, not simplicity for the sake of simplicity.

The design I'm working on offers numerous OPTIONS. You can use what you feel you need or want. The conditions that cause LiPo to burst into flame, desulfate lead acid.

Bob
 
To me,
LVC= Low Voltage Cutoff
HVC=High Voltage Cutoff
BMS= Battery Management System

HVC and LVC are typically referring to individual cell measurements.

These terms were really just made up by guys on this forum and do not necessarily comply with industry standard terminology.

Industry standards are more likely
OVP= Over Voltage Protection
UVP= Under Voltage Protection

These terms could apply to either individual cells or the entire pack.

Any battery charger, regardless of whether it's an AC capacitor limited unisolated thing this thread is about, or the most sophisticated power factor correcting switching mode charger will still have the same issue of individual cell voltages vs. pack voltages. Individual cell voltage monitoring is going to be safer, especially if the 'cells' are made from multiple parallel cells.

As many people have found, if you never get too close to fully charged or fully discharged, cell level monitoring is less important, but I personally recommend it for any battery.

I think the circuit I posted way back will be adequate for safe charging, but not nearly as fancy as a microprocessor based one. There's something to be said for keeping things as simple as possible, but you still need to consider likely failure modes and the results of them to maintain some degree of safety. Nothing will be really foolproof.
 
Farfle & Skippic,

How are your chargers working? Has anyone hooked up one of these "bad boy" chargers to the J1772 changing stations yet (using one of the available J1772 to 240Vac adapters)? Or any other standard 240Vac charging station? The only use I would have for one of these chargers would be for fast charging off a J1772 station.

My concern is whether the smart public charging stations will except a charger with such a poor power factor. To get around the poor PF issue, I've been wondering if I shouldn't just build a charger that uses a power resistive load (heating element w/fan or element boiling away water) to limit the current instead of a motor-run cap or SSR. Most motorcycles have a muffler for noise/heat output. Since I have an e-motorcycle I don't have a muffler, but that doesn't mean I couldn't make a similar device to exhaust my current-limiting heat. Not sure how to calculate how much heat I would have to waste? I would want to charge my lifepo4 pack from min of 77Vdc to 83Vdc max at 20A. So I take the 240Vac input, rectify to 340Vdc, then take 340V-77V and would have 263V to drop across the heating element?? At 20A, that would require ~ 5.2KW rated heating device or equiv to 3 hair dryers?? Is that correct?
 
P.S. I wouldn't care about wasting energy as heat as these stations are currently free to use or charged by time. So, I'm more concerned with building a very cheap, high current, small charger than how efficient it is.
 
IBScootn said:
I've been wondering if I shouldn't just build a charger that uses a power resistive load (heating element w/fan or element boiling away water) to limit the current instead of a motor-run cap or SSR
http://endless-sphere.com/forums/viewtopic.php?f=2&t=31428&hilit=dangerous+charger&start=45#p507804
http://www.youtube.com/watch?v=3tN7vkgCWRs&feature=youtu.be
 
Mine is holding up great. I've been using a 70uF motor run capacitor with 3ohm resistors and something like 3000mF electrolytic caps to stabilize the current. For control I used a voltage divider, an Arduino and the TextStar display. The Arduino measurement is far from accurate, so I've been averaging 100k measurements to display the battery voltage. To turn charging on and off I used an SSR:
http://www.ebay.com/itm/SSR-25A-Solid-State-Relay-24V-380V-AC-For-Temperature-Controller-/320887480356?pt=LH_DefaultDomain_0&hash=item4ab6626024

Now I'm about to try using a 400uF cap as suggested by Farfle (big thanks):
http://www.amazon.com/dp/B005FUXGZG/ref=pe_175190_21431760_cs_sce_3p_dp_1_B

In the second charger I'm eliminating the resistors (maybe even the stabilizing caps).
Instead of the Arduino I'll use a much simpler and cheaper solution. My idea is to use a SSR, voltage dividers, voltage detectors and a cheap digital display.

Should be lighter, smaller with less connections and components to fail.

I'm attaching my Arduino code (dirty). I tried attaching the file, but ES didn't like it, so I tried renaming it to .txt, but it didn't help.

/*
AnalogReadSerial
Reads an analog input on pin 0, prints the result to the serial monitor

This example code is in the public domain.
*/
#include <SoftwareSerial.h>

/** Pins *******************************************************/
//#define rxPin 4 // define the RX pin
//#define txPin 5 // define the TX pin

#define maxV 855
#define minV 770
#define coef 8.77



/*void lcd_WriteLine(int lineNum);
void lcd_ShowLine(int lineNum);
void lcd_init();
*/
//SoftwareSerial buttonSerial = SoftwareSerial(rxPin, txPin);


//int Line1 = 0;
//float Line2 = 0;
float finish = 0;



void setup() {

//pinMode(rxPin, INPUT);
//pinMode(txPin, OUTPUT);



Serial.begin(9600);// sets the serial BAUD rate, must match that of the display

lcd_init();


delay(2000); // 2 second delay to allow screen to turn on if the power has only just been turned on.

Serial.write(254);// tells display we are sending a command
Serial.write(76);// tells the display to go to a line
Serial.write(1);// clears the line 1 aready for re-filling
Serial.println(""); // prints instructions
Serial.println(""); // prints instructions

lcd_WriteLine(2);
Serial.println("");
lcd_ShowLine(2);
}




void loop() {
String Line1 = "";
String Line2 = "";
int voltage = 0;
// float sum_voltage = 0;
int aux = 0;
int high = 0;




float sum_voltage = 0;

for(float i=0; i<100000; i++)
{
voltage = analogRead(A0);
if(voltage > (maxV+30))
{
analogWrite(13, 0);
high = 1;
}

if(voltage < (minV-100))
{
analogWrite(13, 0);
high = 1;
}

sum_voltage += voltage;
}

if(high == 1) finish++;
if((sum_voltage/100000) < (maxV))
{
if(finish < 10) analogWrite(13, 255);
}
else
{
analogWrite(13, 0);
finish++;
}
// Line1 = maxV;
// Line2 = sum_voltage/100000;

lcd_WriteLine(1);
Line1 = String("M");
Line1 += String(int(maxV/coef));
Line1 += String('.');
Line1 += String(int(((maxV/coef) - int(maxV/coef))*100));
Line1 += String("[");
Line1 += String(maxV);
Line1 += String("]");
Line1 += String(int((sum_voltage/100000-770)/(maxV-minV)*100));
Line1 += String("%");
Serial.println(Line1);

lcd_WriteLine(2);
Line1 = "A";
Line1 += int(sum_voltage/100000/coef);
Line1 += '.';
Line1 += int(((sum_voltage/100000/coef) - int(sum_voltage/100000/coef)) * 100);
Line1 += "V[";
Line1 += int(sum_voltage/100000);
Line1 += "]";
Line1 += int(finish);
Serial.println(Line1);




/* lcd_WriteLine(2);
Serial.print((Line2-770)/(maxV-minV)*100);
Serial.print(" ");
Serial.println(finish);
*/
lcd_ShowLine(1);

// Serial.println(sensorValue, DEC);
}





/* Sends LCD command sequence to initialise the LCD
* Sets cursor style to 'no cursor'
*/
void lcd_init() {
delay(2500); // let the screen initialise if it has only just been powered up

/* Clear the display and take us to line 1 cell 1
* Notice that this instruction to the LCD does not
* require a command-bit to be send first
*/
//Serial.println(12,BYTE);

/* Setup the Cursor Style */
Serial.write(254); // we are sending a command
Serial.write(67); // we wish to set the cursor style
//Serial.println(0,BYTE); // we wish to have no cursor
}

/* Sends LCD command sequence to write to LCD line n
* @param int lineNum Line Number to write to
*/
void lcd_WriteLine(int lineNum) {
Serial.write(254); // we are sending a command
Serial.write(76); // goto line n command
Serial.write(lineNum); // clears the line the line number (1-16)
}

/* Sends LCD command sequence to display to LCD line n
* @param int lineNum Line Number to display (top of screen)
* will show n and n+1
*/
void lcd_ShowLine(int lineNum) {
Serial.write(254); // we are sending a command
Serial.write(71); // display the following line number
Serial.write(lineNum); // the line number (1-16)
}
 
Back
Top