For inspiration i link to old type BOSCH CDI ignition box schematic, and layout can be studied here
There is a preferred spark polarity (maybe for the ION current too). Anyone remembers ? If you find it while reviewing these (or other) papers, please answer here.
link by MembersPage/SteenAndersen
John Clarke's article on the Multi-Spark CDI (Same circuit as above but more readable copy. Looks like the entire article from Silicon Chip)
Some more information including schematics of the MSD 6A ignition box. (posted by MembersPage/RichardChwiendacz )
CDI requires an appr. 400V DC supply
We want to be safe, so 100W power should be targetted (0.25A output current).
Input is 14V as usual.
I was thinking about CDI supplies. I built a transformer based supply earlier (somewhat lower wattage).
The best I can come up with is a simple flyback design. This has the lower part-count, beautiful simplicity (including testing!) If power was >300W a transformer based might become more attractive.
We need to use many thruhole parts in any case.
Flyback design consist of only 4 major parts:
- output capacitor
There is a concern with the inductor:
- the inductor magnetic core used in one B direction (as in the flyback design) has (?) worse efficiency
- than a transformer where magnetic core is used with alternating B direction (as in transformer design).
Inductor - (note: not transformer)
For experiments we can use 4 of these in parallel:
- 47 uHy 1.5A 0.14R 10% RAD * (BOU) RLB0914-470K 9.5
Finally we'll wind our own toroid or whatever type.
(12V / 12uH) < (16A / 16usec)
16A peak is a bit high (for the IGBT too, and definitely for the diode). 16A peak means about 16A / 2 * 12V=100W.
similar to what we have now, but to make 400V possible, clamping at 370V is not desired.
FETdriver is needed to drive the gate at 64 usec (15625 Hz).
To get 10A diode from 5 pieces of 2 A diodes is slightly more complex than simple parallel connection because of the -2mV/K temperature coefficient, the one with lowest voltage will overheat itself. Series resistors (for each diode, maybe trace is enough) can fix that.
- BY399 (3A continuous, 600V) dropped (thruhole not justified)
- SMB footprint fast ES2J that we use all over the place is perfect
Maybe 6..7 SMB in parallel and 0.022 Ohm in series with each.
Electrolitic cap is not the best idea at 16 usec period.
It might even explode. Some testing is needed in any case. Other cap that might work:
- 2uF 450V 10% . MOTOR MP60020061 (DNA) 25x52mm M (1.4 Euro)
0.25 A * 16 usec = 4uC
4uC / 2uF = 2V (ripple)
There are 2 possible types:
- solution1: the coil+ can be connected to a capacitor charged to 400V
- and coil- switched just like it is done in an inductive app (like v3.x)
- solution2: coil- connected to GND
- cap+ charged to 400V through an inductor, than switched to GND
- coil+ powered from cap-. cap- tends to 0V when inactive, but when cap+ jumps from 400V downto 0V, cap- is forced to jump from 0V to -400V therefore activating the coil (releasing spark immediately on secondary side)
- Both has similar driver requirements: IGBT sounds better, but thyristor can theoretically work if sized well
- The number of required caps is just 1 (significant advantage) for solution1 (and 1 / channel for the solution2)
- voltage on coil is hot (referenced from GND) or solution1 even when inactive
Push-pull type DC/DC
Push-pull use better the transformer, it can get more power with smaller transformer than forward, it needs two transistors.
There are some questions about CDI:
Are fired with Thyristors or IGBT? If it use Thyristor the supply must be shutdown when thyristor is actived until capacitor was discharged.
if IGBT are used, it is not necessary to shutdown supply but IGBT have to be fired with a precise pulse wide. Is it possible to configure ignition pulse wide in CDI mode?
It works fine!, At the moment i have meassured 100w at 350v, (input=13 volt). I calculated 10 W losses on the mosfets (it drops near 1 volt) but I'm not sure about losses on transformer.
I was trying several transformer configurations, and I finally got a good performing.
I realized that if the driver IC tries to down the voltage under the right voltage for the transformer, the efficiency of the circuit drops a lot and the mosfets drops more voltage. But if I set the voltage limit to a value a bit higher than the current one, the circuit works better.
Can you elaborate on this? Isn't it nonsymmetric pulse that causes DC inductance (B) field bias in the core ?
Yes, I did a fully simetrical winding (I placed the two windings in parallel in order they have exactly the same lenght and turns)
What happens is that this transformer has a fixed ratio (not as flyback) then if you made a x26 transformer and you fix the output to 300v at output, it will force the input to 11.5. If your supply has 14 volt, the difference (2.5) will fall into the mosfets. This is the reason why the supply works better at its "natural" voltage.
current transformer is about 30 x 30 mm size, but i think it could fit a smaller one, with more frequency. It could be really small!!!
I added an output stage based on MOSFET or IGBT to drive the coil. I placed one wire of the coil to 350 v in order to have always high voltage on the spark to do the current sense during the cumbustion.
This may be dangerous because the coil will have always high voltage, and touching it or the spark cable, can be dangerous.
I measure the ION current by using an optocoupler on the 350 volt line. This should work, but for the production circuit, the current mirror sounds more appealing.
uC controlled / standalone
For the CDI / Ion, uC controlled supply might be simpler and cheaper (and better logistics).
For uC main processor supply for the big display (with near-PC-performance, and a few Watts of dissipation at91rm9200+256 Mbyte SDRAM) power must be standalone.
Standalone is usually made from SG3525 , SG3524 SOIC16 or similar chip (compatible chips available from other manufacturers).
- prevents "stuck in" output stage (that might blow a fuse)
- suitable for the processor supply too (a processor can rarely control it's own supply, although it might be possible)
- higher cost the SG3525 is in the $0.6 range, logistics should not be too bad
- bigger footprint
- uC controlled has better flexibility (control supply voltage from software easily)
simple CDI implementation with v3.x
Rather for experiment than production.
- only works when injector PWMing is not used, since the PWMing duty is used to control (regulate) the CDI supply.
- a FET activates the CDI flyback transformer (eg. 8:175 turns) primary side
- since freq is 15625 Hz (64usec), the transformer is a bit big (2cm2 should be enough). Ferrite core is needed (is toroid OK, or it must have a small air-gap to prevent magnetic saturation?). Maybe 32usec period would be better than 64usec.
- when the FET switches off, the flyback voltage on the CDI transformer secondary side charges a cap through a diode
- diode is easy, ES2J can be fine
- 1..4.7uF cap, min 400V (electrolytic OK?). This cap will be charged to appr 300V. Not a small cap.
- feedback voltage divider is needed from the 300V to a free mcp3208 input.
- a control loop must be placed in firmware to regulate the CDI supply output voltage. Make sure the duty can go down to 0% (not 1/256 !)
- ignition transformer primary+ is connected to 300V
- ignition secondary switched with IGBT (as normal), but very low dwell (64 usec?).
- A flyback diode is needed (3xES2J in parallel?) towards the 300V trace
- ignition transformer secondary- is connected to 300V through Rionsense (270 .. 510 Ohm?) resistor (the other end of the secondary winding is the HV wire to sparkplug, of course)
- this way the IonSense current becomes available. Possible to divide and GND-reference through a differential-input channel pair: available through midopa. Than record with AVR or with soundcard for analysis (not at 300V potential, but the GND-referenced signal)
When CDI is active, the tip electrode of the sparkplug is either at +300V or +30000V (during spark) potential, so take care.
- http://fec.eng.monash.edu.au/challenge/ 30V to 230V DCDC inverter