I've made a driver for ignition coils from Arduino Nano clone. Here's the schematics:
Just there is ignition coil instead of motor, just Proteus don't have a component for it. Input to MOSFET's gate is from Arduino digital port. The pin is driven high for 4 ms, then low. When it gets low, spark flashes. The pin is then kept low for some time (simulating different RPM of the real car engine), then everything is repeated. The schematics is exactly the same, I've found on the Internet here: http://christian.liljedahl.dk/gu....
Everything works OK, until I connect the real coil. Then Arduino works for a couple of seconds, and then either freezes, or resets. I've taken oscillograms from the MOSFET's drain:
Can this spike cause (somehow) arduino to reset? Gate oscillogram doesn't show any spikes. Here's the picture from the power supply (I use CPS3205):
We can see voltage drop from 13 to 10 volts each time coil is being charged, but Arduino is powered through on-board AMS1117 regulator, I guess it doesn't matter if it has 13 or 10V on the input?
So I have 2 questions:
1) What are possible reasons of unstable behavior and
2) How to avoid it?