View Single Post
Old 04-13-2014, 10:30 PM   #6 (permalink)
mechman600
Master EcoModder
 
mechman600's Avatar
 
Join Date: Jul 2008
Location: Langley, BC
Posts: 1,225

Colorado - '04 Chevrolet Colorado
90 day: 22.98 mpg (US)
Thanks: 190
Thanked 271 Times in 165 Posts
Quote:
Originally Posted by P-hack View Post
I wouldn't worry about bms for starters, you can test 18 cells with a vom pretty easily and a simple circuit will tell you if it is obviously out of wack and needs a bottom balance.
If you know what you're doing you can bottom balance with a 1 ohm, 2 watt resistor. Way cheaper.

In my designing a battery monitoring system for my Electric Booger, I designed a lithium one as well. Pretty simple, actually. Keep the cells between 2.7V (or 2.5V) and 3.6V. Balance them at the bottom. Stop the charge when the first one hits 3.6. Pretty easy. Edit voltage for different battery chemistry.

Since an Arduino Nano has 8 analog inputs, that's 3 boards for you. On eBay that's $20. 8 inputs * 4.5V (ultimate max per cell) = 36V per board / 1024 (10 bit) = a resolution of 0.035V. Plenty good enough.

It's easy to send warning messages (high V or low V) from one board to another via a PWM signal down a single wire. I experimented with an 8 channel dip switch, sending a PWM value down a single wire (using analogRead() function), making the "reader" board decipher what switch was on or off by measuring the PWM (using pulseIn() function). With 8 bit PWM (0-255), allowing for some space between signal duty cycles, you could probably have at least 100 separate triggers down a single wire. Maybe you wouldn't be able to read the voltage of each cell, but a warning of WHICH cell is low or high would be easy, and better than the Mini-BMS which has a general warning and cannot pinpoint problem cells.

Let me know if you need help with code or wiring. I would be more than happy to help.
  Reply With Quote