Shop OBEX P1 Docs P2 Docs Learn Events
Some questions about NimH monitoring system project — Parallax Forums

Some questions about NimH monitoring system project

AJ-9000AJ-9000 Posts: 52
edited 2009-09-10 15:31 in General Discussion
I'm trying to make a 102 cell NimH monitoring system, this will be separate to the existing BMS ( battery management system ) for a Vectrix scooter. The system will monitor the voltage and temperature of every cell which suffice to say the existing system doesn't. The top priorities are keeping it simple ( reduced wiring ), cost and minimize space in terms of height so I plan to use 12 identical printed circuit boards except 6 will cover the top of 9 cell packs and the other 6 cover 8 cell packs. The idea is to use a processor on each board to sample it's input ports and send that data via it's serial port to a central processor which in turn would send revelent information to a display on the dash.

Each board will be powered by there respective 12 & 10.5 volt packs which are the same cells it monitors and have a optically isolated serial port thereby eliminating isolation problems.
Each battery pack board would be programmed to connect and disconnect it's serial port connection after it sends it's data to the central processor so only one is connected at a time. I'm doing it this way because as far as I know only two serial ports can be connected together at a time and 12 central processor serial ports with 12·cables going to each pack board is unfeasible. Would that work ?
Getting the individual cell's temperature is easy just sample the 8 or 9 temperature sensors·per pack, but sampling each cell's voltage in a pack what would be the best way to do that and using which processor ?

I've only made projects using the BS1 & BS2 and suspect the Prop would work best for this purpose.

Post Edited (AJ-9000) : 8/30/2009 12:22:17 AM GMT

Comments

  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2009-08-30 15:36
    I suspect no one is replying because there is a lot left to guess about what your limitations are.
    Also, you need to have a very good idea of how your specific NiMh batteries want to be charged.

    It is a little hard to figure out a basic module with the way the numbers are presented.
    So you have 17 cell packs and 102 cells and 6 cells per pack? Is that right?

    Starting with 12 circuit boards that monitor a max of 3 cell packs may be getting ahead of yourself. Maybe not.

    But, it certainly does sound like the Propeller would be a best choice. There remain many ways to juggle I/O and in doing so, you might end up requiring only one Propeller but sub-assemblies to multiplex data from each battery pack. One-wire temperature sensors are a handy item to consider for getting accurate temperature confirmation. Essentially, temperature is the best indication of shut down and having good confirmation of hot spots is an early warning. Voltage data would mostly respond to a charging algorythm after the cell is qualified cool enough to charge.

    I presume that the 'cell pack' is the basic module and would have six voltages to measure and six temperature measurements. Is that capable of a serial output as well or is it just the boards that you plan to be serial I/O?

    What are your temperature and voltage sensors? If you are using thermistors for each cell are you having a more sophisticate temperature measurement for the whole pack?

    Do you have to measure more than one voltage level? I would be considering one level for needing charge, but another lower level for excessively discharged. In the second case two rates of charge may be wise.

    Finally, how are you going to control and distribute charging? PWM and charge duration may be useful for shaping the amount of charge that goes to certain profiles. Are you going to charge cells individually or battery packs as a whole. If you are doing the latter, what happens if you get an extremely low cell? Reverse voltages may burn up the pack unless you include diodes (which waste power).

    I'd start with one and only one battery pack as a prototype to get some idea of how much computing needs to be done and then scale up. In the background, you have to monitor available charging power at the same time.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Ain't gadetry a wonderful thing?

    aka G. Herzog [noparse][[/noparse] 黃鶴 ] in Taiwan

    Post Edited (Loopy Byteloose) : 8/30/2009 3:50:17 PM GMT
  • AJ-9000AJ-9000 Posts: 52
    edited 2009-09-06 03:24
    Loopy Byteloose said . . .

    But, it certainly does sound like the Propeller would be a best choice. There remain many ways to juggle I/O and in doing so, you might end up requiring only one Propeller but sub-assemblies to multiplex data from each battery pack.

    I need help with a specific problem regarding this project but before I go on I want to thank Loopy Byteloose for helping me out, I did a google search of "multiplex RS232" after reading "multiplex data" what you wrote above and I'm now up to speed on stacked RS232 multiplexors that was helpful.
    Is it possible using multiple ADC0831 (National 8-Bit Serial I/O A/D Converter w/MUX) to read battery cell voltages while there in circuit ? In the picture below is a NiMh battery and a drawing of the proposed BMB or Battery Monitoring Board which would be attached to the top of that battery.
    Referring to the drawing the 8 blue-green rectangular boxes are the 1.45 volt NiMh cells connected in series is part of the 150 volt 102 cell Vectrix battery, the BMB is blue, large circled A and B refers to the battery terminals where the BMB is powered from there polarity is marked A negative and· B positive, small boxes numbered 1-8 are the ADC0831 and the large circled C is the one of 16 violet colored resisters.
    When the Stamp microprocessor uses #1 ADC0831 to read the cell's voltage there is no problem because the Stamp and the ADC0831 share a common negative. But when the Stamp stops monitoring #1 and starts monitoring #2 ADC0831 there becomes a problem, the negative connection of the ADC0831 is 1.45 volts higher then on #1, when it gets to the cell furthest to the right the difference is 10.15 volts. If there's no way that could work then is there another A/D converter that would be better suited keeping in mind that the maximum thickness that the BMB can be is about 1/4 inch.
    ·I hope this answers some of Loopy Byteloose's questions;
    To elaborate more on the battery it is actually two physical batteries connected together 150 volts with 102 NiMh 1.45 volt cells connected in series. In the picture below you see the top layer of a 3 layer stacked 54 cell battery and just to the right is the other battery you can see a little of which is the same except a shorter 48 cell battery. What I previously called battery packs are the 9 cells you see bolted together at there terminals, there are two in the picture. The other battery is lengthwise shorter and is only 8 cells long.

    The system I plan is only a monitoring system so it's independent of all the Vectrix electrical, electronic systems it doesn't replace or use any part of any Vectrix system except monitor it's battery. The Vectrix has an on board charger with a cord you plug into a wall outlet.··
    Mostly what I want to do is to get the voltage of all the battery cells within 1 minute of real time for the purpose of;
    1. On an accessory display in the dash area to graphically show the state of charge based on the
    ··· lowest cell's voltage which shouldn't go below 1 volt.
    2.· Act like a DataLogger to store data so I can figure out which are the bad or marginal battery
    ··· cells by studying there history layter.

    Post Edited (AJ-9000) : 9/6/2009 4:26:46 AM GMT
    633 x 338 - 13K
    633 x 338 - 402K
  • HollyMinkowskiHollyMinkowski Posts: 1,398
    edited 2009-09-06 09:32
    Is this what your electric scooter looks like?
    If so, it's pretty cool smile.gif
    vectrix-2009-VX-1.jpg

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - Some mornings I wake up cranky.....but usually I just let him sleep -
  • AJ-9000AJ-9000 Posts: 52
    edited 2009-09-06 18:45
    Yes along with it's good looks it's also a good scooter, I get the feeling toward the final stages of design they started cost cutting and in my own opinion they cut corners in the BMS Battery management system, thats why I'am trying to make a Battery Monitoring system for it.

    Anyone interested in one beware they're probably going out of business soon and even though there now selling at half price if they do go bankrupt then warranty, dealer service, and parts availability are all in jeopardy.

    If someone is thinking of buying one for electrical parts then think again, as for instance the motor is a 20KW AC 3 phase and you would probably need to make a motor controller for it to be able to use it for anything else because the existing controller is too integrated into the Vectrix system.

    Post Edited (AJ-9000) : 9/6/2009 7:54:56 PM GMT
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2009-09-10 15:31
    Some quick comments about fundamentals.
    1. If the charge rate is too high, the battery pack gets too hot - so a I-wire thermal sensor (Dallas Semi) for each battery pack would identify which ones are overheating during charge and charge rate could be slowed. Overheating is due to severe charging stress.
    2. Measuring voltage with an ADC chip can be a bit of a challenge. When you get 8 channels on one chip, there is a lot of addressing options.
    3. Voltage is mainly useful as your indicator of discharge more than charge. NiMh should not be run much below 50% of rated voltage or they suffer severe stress. A dead cell may reverse polarity and self-destruct that battery pack beyond repair.
    4. It is one thing to monitor all these conditions for discharge, but charging taylored to individual cells is more complex.

    It looks like you would need about a harness of 18 wires to feed charging and I suspect that you would have to rotate charging in some manner where adjacent cells are not being charged at the same time (otherwise backflows from charging would complicate the process and cause damage.) I am not sure it can be done properly unless only one cell is getting charged at a time. You might start out with a low level bulk charge at first as a group and then do individual cells to top off.

    I have a Yamaha 125cc scooter that looks similar and use it daily with the dog riding along. I'd love to have an electric if I could find a way to charge it at the curb. A scooter has been my only transportation since 1994, but Taiwan is tropical.

    A Basic Stamp might do the basic data gathering, but they decisions need to be made. You have two modes - charge and discharge. In discharge, the low cell decides when you should stop for a recharge regardless of how high the other cells are. That part is quite simple.

    When charging, the goal is to not abuse the battery as you bring up the charge. The hottest cell will decide the overall charge rate if they are charged as a group. If it gets too hot, a time out until the batteries cool down is required. It would be wonderful to be able to top off the charge on each cell individually.

    Finally, if you have the ability to collect data about the charge and discharge of each cell - you could do much better at swapping out troublesome cells before they cause even more trouble. But that means that a 'data recording' feature needs to be included in the system. I think the Propeller is still a better choice than the BasicStamp. There are other microcontrollers that might be a better fit for several reasons, but take a look at the 1-wire thermal sensors. You are going to need another 8 lines to gather thermal data.

    Have you considering just switching over the Lead Acid gel cells? While they don't charge as fast, they are generally very tough. By having all the cells in the same chemical bath, they eliminate having one cell become hotter than others during a charge. I used to have a rather larger NiCad cell with liquid electrolyte (about 18"tall and 6"x6"). It was roughly 12volts but I've no idea of the amp hours. But having it all in one bath made it similarly less of a problem to balance charge rates.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Ain't gadetry a wonderful thing?

    aka G. Herzog [noparse][[/noparse] 黃鶴 ] in Taiwan

    Post Edited (Loopy Byteloose) : 9/10/2009 3:43:13 PM GMT
Sign In or Register to comment.