1
\$\begingroup\$

Suppose I have an Arduino Uno or a similar board. I would like to have it create an electric spark over a spark gap as reliably as possible when instructed to do so.

As I understand, the minimum voltage required for a spark to form is 3kV per mm of air between the electrodes, so the Arduino has to be able to output a voltage in that order, preferably up to about 10kV in this specific situation. Now, I know that inductors can be used to create something known as a boost converter, which is able to step up the voltage quite a bit:

Boost converter schematic

Schematic from Wikipedia (License: Public domain)

My idea was to connect a digital pin as well as the ground to the "Supply" side, and have the "Load" side be two cables whose ends are spaced a few millimeters apart.

I assume this would fry the board quite quickly. How can I prevent that from happening? Is it even possible to achieve the required output voltage using just the Arduino? If it is, please help with the details for the circuit components I need.

\$\endgroup\$
2
  • 1
    \$\begingroup\$ Perhaps you should research the circuitry used in modern engines where the spark is electronically timed? \$\endgroup\$ Commented Jun 24, 2017 at 18:23
  • \$\begingroup\$ The digital pins of the Arduino (for that fact, any micrprocessor) can't supply enough current to drive a boost circuit to reach the voltage you want. You would do better to build a circuit that can generate the high voltage, then use the Arduino to turn it on and off. You need to protect the Arduino from the high voltage discharge, too. \$\endgroup\$ Commented Jun 24, 2017 at 18:41

1 Answer 1

1
\$\begingroup\$

The simplest, safest, most reliable and easy to get going would be to use an auto ignition coil, with a single high voltage N channel FET to switch voltage to it on and off.

It could be isolated more completely from the Arduino using an opto-coupler.

\$\endgroup\$