Step 3: Driver Circuit
In normal automotive use the current in the primary is interrupted at the appropriate time to generate a spark at the spark plug to ignite the fuel-air mixture in a car’s engine. In old cars the current is interrupted by a mechanical switch called the points, which are opened and closed by a cam on a shaft that rotates when the engine is running. In newer implementations a sensor sends a signal to an electronic module to cause a semiconductor switch in the module to open and generate the spark at the proper time.
All that is needed to use the coil to generate arcs for experimentation and display is a circuit that turns a switch on and off to interrupt the primary current of the ignition coil. Concerns such as adjustments to the timing to ignite the fuel in cylinder at the proper time do not apply for a display application.
The diagram below shows the basic blocks of a system used to generate acrs using an ignition coil. The general drive circuit consists of a pulse generator that turns a semiconductor switch (a transistor, FET, or in the circuit presented later, an IGBT) on and off at a desired rate. The power supply can be any battery or DC power supply of an appropriate voltage, capable of supplying enough current.
The function of each section of the system is described in detail next. Refer also to the detailed schematic.
+5V Regulated Supply
A LM7805 regulator, VR1, provides the +5V regulated voltage for the pulse generator circuitry. Diode D1 in series with the input to the regulator is used to to prevent damage if the power source is connected backwards. There are electrolytic and ceramic capacitors (C1, C2, C3, and C4) on both the input to and output from the regulator for filtering.
As described earlier, energy is wasted if the switch remains on past the time the steady state primary coil current is reached, so the pulse generator circuit must be designed and adjusted with this in mind. Again, the time constant of the primary circuit will determine how long it takes for the primary current to reach its steady state. The inductance and resistance of the primary will vary between different coils, so the maximum on time of the switch will need some adjustment depending on the characteristics of the coil you are using. Some coils are intended to operate with additional resistance in series with the primary coil, and this resistance will need to be added to the other resistance in the primary circuit when calculating the steady state current and time constant.
Two different designs of the pulse generator are described in the next steps. One is based on a PIC microprocessor, and the other based on a 555 timer.
Pulse Generator Based on Microprocessor
A PIC microcontroller based pulse generator circuit is used to generate the signal used to turn the IGBT on and off. Using a microcontroller gives the flexibility to control both the on time and the frequency independently. The software allows the spark repetition frequency to be set between 10Hz and 400Hz, and it allows the on time of the pulse to be set between 0.5 and 2 milliseconds.
The maximum current can be limiting by adjustment of the on time. If the on time is set to less than about four time constants, then the current in the primary will never reach its steady state.
The circuit uses two potentiometers, R3 and R7. One is used to set the on time, and the other to set the repetition frequency. The potentiometers are read by the microprocessors A/D converter. R4 and C5 and R6 and C6 are used as low pass filters on these analog inputs. The software generates the output pulses based on the on time and frequency readings.
One processor input is used to read an enable switch. When the switch is pressed, the input is brought low, and the microprocessor generates pulses on the output with the on time and frequency as set by the potentiometers. When the switch is released R1 pulls the input high and the output is turned off.
The program flow chart diagram, *.asm source code file, and *.hex file for programming are included.
Alternate Pulse Generator Based on 555 Timer
This 555 timer circuit can also be used for the pulse generator, but it can’t generally let you control the on time and frequency independently. Refer to the separate schematic for the 555 timer version of the pulse generator.
The schematic shows a 555 timer circuit which uses diodes to create separate charge and discharge paths. The on time is determined by how long C1 takes to charge through R1, potentiometer R2, and diode D1. The off time is determined by how long C1 takes to discharge through R3, potentiometer R4, and diode D2. By separating the charge and discharge paths, the on and off times can be controlled independently, allowing the user to set the on time so that it is not so long that it results in wasted energy. Note however that changes to either the on time or the off time will result in a change to the pulse repetition frequency, unlike the microprocessor based version of the pulse generator.
The ON time, OFF time, and frequency of the output are determined as follows:
Ton = 0.693 * (R1 + R2) * C1
Toff = 0.693 * (R3 + R4) * C1
Frequency = 1/ (Ton + Toff) = 1.44 / [ C1 * (R1 + R2 + R3 + R4) ]
Pushbutton switch SW1 connects the reset line of the timer high, enabling the pulse generator output. The output goes low when SW1 is released, turning off the HV output.
The switch used here to control the current in the primary is an International Rectifier IRGB14C40LPBF IGBT. This IGBT is specifically designed for automotive ignition system applications.
When the switch in an ignition system opens to disrupt the current in the primary, the voltage across it rises up to hundreds of volts. This IGBT is rated to handle this voltage. It also includes internal clamping diodes to protect against overvoltage. Refer to the internal diagram of the part shown below to see how the internal protection is implemented.
Proper heatsinking is needed for your switch. This is especially true if you ever plan on overdriving your coil with a higher power supply voltage. Exact heatsinking needs require some calculation of the actual power dissipated in your switch. To err on the side of caution mount to a piece of aluminum and also use some forced air, such as from a small fan. In the system shown here, the heatsinking is provided by a large copper area of the PCB.
It is beneficial to provide protection to the driver circuit to avoid damage from transient overvoltage “spikes”. MOV1 is placed across the power supply input to clamp voltage spikes. MOVs (metal oxide varistor) are protection devices which are designed to be off when the voltage across them is below their clamping voltage, but then turn on and conduct once that voltage is exceeded. When it is conducting, the voltage drop across it is relatively constant. The MOV therefore “clamps” the voltage across the power supply bus to a safe level, so that it does not rise high enough to damage the driver circuit.
The MOV must be selected with a clamping voltage that is greater than the power supply voltage; otherwise the MOV will be conducting all the time and it will overheat. For example, the MOV I chose for use with a 14 volt power supply clamps at around 20 volts. Transient spikes greater than 20 volts will then be clamped so that the power supply bus will not see a voltage greater than that.
It is also useful to have a larger of capacitor (C7) on the power supply input. A couple thousand microfarads worth of electrolytic capacitors works well. The capacitors provide a low impedance path to high frequency spikes on the power supply. Make sure that the voltage ratings of the capacitors you use are greater than the supply voltage and greater than the MOV clamping voltage.