- The circuit uses the PC power supply , or any 12V power source.
-The circuit uses The "Temperature slope" method which is the most accurate and safe method, in this case the packs are charged by monitoring the temperature and end the charge when the charger sense the end of charge dT/dt, which depends on the battery type.
Two parameters are used as a backup to avoid over charging:
- Maximum time: The charger will stop after a predetermined time according to the battery capacity
- Maximum temperature: You can set the Max. battery temperature to stop the charging when it becomes too hot ( about 50 C ).
- The charger uses the PC serial port, i have built the software with Microsoft Visual Basic 6 with an Access database to store the battery parameters and charging profiles.
- A log file is generated with each charging process showing the charged capacity, charging time, cutoff method ( time or Max. temperature or Max. slope )
- The charging characteristics is displayed online through a graph ( Time versus temperature ) to monitor the battery temperature.
- You can discharge your packs as well as measuring it's actual capacity.
- The charger has been tested with more than 50 battery packs, it realy works great.
Step 1: The Schematic
Measuring the temperature:
This is the most interesting part of the project, the purpose is to use a low cost design with a low cost components along with a good accuracy. i have used the great idea from
http://www.electronics-lab.com/projects/pc/013/ , review it , it contains all the required details.
A separate module in the program has been written to measure the temperature, as it can be used in other purposes.
The charging circuit:
- I used LM317 in the first design, but the efficiency was too bad and the charging current was limited to 1.5A, in this circuit i used a simple adjustable constant current source, using one comparator of the LM324 IC. and the high current MOSFET trannsistor IRF520.
- The current is adjusted manually using the 10Kohm variable resistor. ( i'm working on changing the current through the software ).
- The program controls the charging process by pulling Pin(7) high or low.
The discharging circuit:
- I have used the remaining two comparators from the IC, one for discharging the battery pack and the other for listening to the battery voltage and stop the discharging process as soon as it drops to a predetermined value ( for ex. 1V for each cell )
- The program monitors pin(8) , it will disconnect the battery and stop charging when it's logic level "0".
- You can use any power transistor can handle the discharge current.
- Another variable resistor ( 5K ohm ) controls the discharge current.