4

I have been combating EMI from a motor switched by a relay but have managed to get it under control or so I think:

It started like this: 30+ voltage swing @ 5.000us+ enter image description here

After an AC snubber, opto-couplers, decoupling caps it's now: 2.5 volt swing @ 200ns enter image description here

It's all connected to a Arduino (5V) and various other components (LCD, LEDs, shift registers, etc))

So I'm trying to figure out if I have suppressed it enough so it won't effect the other components. I can't seem to find any best practices around, that say keep voltage spikes to X percent over X duration. Is there any guidelines like that I can follow? Is a 2-3 V spike over 200ns acceptable in this situation?

Circuit diagram for clarity: enter image description here

Thanks

Exist
  • 331
  • 2
  • 9
  • It's unclear what signal this spike is on : the 5V supply shared with the Arduino? Unacceptable. A separate 5V supply? (Maybe feeding the Arduino via a good L-C filter)? Probably acceptable; measure the Arduino side to be sure... An Arduino logic signal running near the motor? Unacceptable without further filtering... –  Dec 29 '12 at 10:14
  • Damn, not what I wanted to hear. It's on the Arduino 5V line. Made it so far but still not enough. I have added a circuit diagram to help. Thanks for the comments though. – Exist Dec 29 '12 at 20:28
  • 4
    pi-filter is your friend... though first check basic measurement technique. Solder a SMA or BNC socket directly to the 5V and ground pins and connect it directly to the scope... eliminate the possibility that a 4 inch scope earth lead is really what's picking up the signal. –  Dec 29 '12 at 21:49
  • 3
    Or get a ground lead as described here – AndrejaKo Dec 30 '12 at 22:42
  • Holy #*$$, always wondered what those little spring things were for. When changing the probe to use those the readings went down 3 fold. Worst case I'm seeing a 800mv spike over a 20ns duration. Brian or AndrejaKo please post this as an answer and I will accept so you get the points. Thanks! – Exist Dec 31 '12 at 02:09

1 Answers1

1

2V to 3V spike is probably not acceptable. A spike that big can disrupt operation if it gets into a reset line, interrupt line, clock line.

You can come up with an acceptable spec for the spike amplitude. Go through your circuit, identify important voltage thresholds: digital thresholds, brownout voltages, maximum supply voltages. (O.P. doesn't mention any analog circuitry, so I'll leave that out.) That will tell you the amplitude of the spike which your circuit can tolerate at one place or another.

A typical microcontroller circuit running off +5V usually can tolerate a 0.5Vpp spike. But please treat this just as a hand-wavy guess, which is good only for providing a starting point.

Usually, the best place to attack EMI is at the source.

Nick Alexeev
  • 38,181
  • 17
  • 100
  • 237
  • Thanks for the comments, is it fair to say the voltage spike size (2-3V) is more a concern than the duration. I was wondering if I should even be measuring at the nanosecond level? – Exist Dec 29 '12 at 08:28