Non web version: https://github.com/AkBKukU/GPIB-Capacitor-Reforming
Controlling GP-IB test equipment to automate reforming capacitors with live data display
- HP 6633A (Manual) - Programmable power supply with 0-50V, 0-2A range
- HP 34401A (Manual) - 6.5 digit multimeter
- Python3
- Linux-GPIB - GP-IB interface kernel driver
- Flask - Web interface server
- uPlot - JS plotting library
Capcitors need to be slowly brought up to their rated voltage at a limited current (10m max per this guide). The goal is to rebuild the oxide layer acting as a dialectric that forms on the aluminum foil. Too much current or too high a voltage on a weakened capacitor will short through the dialectric causing catastrophic failure. The amount of oxide is relative to the maximum voltage the capacitor can handle.
Run with python3 reform-v2.py
. Will launch locally hosted web server likely accessible at http://127.0.0.1:5000. The test may be configured using values for:
- Maximum voltage - Match to capacitor's rated voltage)
- Current limiting resistor - Used in series with capacitor to limit current
- Minimum Current - Threshold to determine oxide rebuild is slowed
- Maximum Current - Used to calculate next voltage step to not exceed specified current
There is also a section for downloading logs from previous tests and the option to re-display them through the live view page.
This page shows live readings directly from test equipment and from calculations based on measurements. It also shows three live plots of the test results. These plots show the voltage changes and current draw of the capacitor. The overall voltage gets a single large plot with two small plots next to it showing just the recent samples for voltage and current. The number of samples to display is configurable in real time.
From the view page you make also end the reforming at any time.
You may leave the view page displayed in one browser window continuously and configure the parameters on the setup page in another or on different computers. When a new reform process is started the view page automatically refreshes to display new data. Any number of clients may view the live page at a any time.
Using the programmable power supply to automate this will allow the process to be more efficiently handled for larger quantities of capacitors.
The basic steps that need to be taken are as follows:
- Connect weak capacitor at zero voltage and current to PSU
- Increase voltage by a small percentage of maximum rated value, with current limited
- Watch current taken in by capacitor drop as capacitor reforms
- When current drops significantly it has been formed up to that voltage, go back to step 2.
- When the maximum voltage rating has been reached and current rating reduces the capacitor reforming is complete
This software uses GP-IB interfacable EE test equipment to reform the capacitor and needs at minimum a meter capable of measuring uA of current and a power supply capable of delivering the voltage range of your capacitor. Different equipment will use different interface protocols, I have written the software to work with the hardware I have. You can easily modify the dmm.py
and psu.py
files to change the software to work with different test equipment.
The 6633A uses a unique GP-IB command format. The basic control commands:
VSET #
: Sets the output voltage on the PSUISET #
: Sets the current limit on the PSUOUT [0,1]
: Enables or disables the outputVOUT?
: Returns the current voltage measured at the outputIOUT?
: Returns the current amperage measured at the output
The 34401A uses SCPI for programming which is a robust standard with many options. The following are relevant to this project:
CONF:VOLT:DC [range upper],[resolution minimum]
: Set DC voltage measurement mode and configure range settingCONF:RES [range upper],[resolution minimum]
: Set resistance measurement mode and configure range settingREAD?
: Take a measurement and read it backSYST:BEEP
: Make short beep sound