# How much will EMI noise levels decrease if AC voltage is reduced by 50%?

I’ve been thinking of some non-standard ways to reduce EMI noise at the contacts of relay(s) switching various AC loads. For example, when controlling a 4 Relay Module with an Arduino, the user’s code could:

1. Prevent multiple relays from energizing simultaneously by assigning, for example, time delays of 0, 50, 100 and 150 ms before energizing relays 1, 2, 3 and 4 respectively. I would think that avoiding simultaneous EMI noise emission from multiple contacts and coils would have beneficial effects.

2. Detect zero crossings and energize the relay so that the contact bounce period is precisely centered on the zero crossing that occurs 16.67ms later (60Hz AC) or 20ms later for 50Hz AC. If the contact bounce can be kept within 30 degrees of the zero crossing, then the peak voltage seen by the contacts during switching would be <= 1/2 the applied voltage.

My question is, for the same switched load, if the switched AC voltage is reduced by 1/2, how much would this mathematically reduce EMI levels?

Thanks Leo, it did help me find an image from here that shows what I'm looking for:

If the EMI intensity is the shaded area shown above, my best "guess" at this point is that this area would be 1/4 (reduced by 75%) if the voltage is reduced 50%. I'm also guessing the same EMI noise reduction would occur when switching capacitive loads (ballasts, etc).

Is there a formula for this?

No experience here. I suppose spark intensity depends both on voltage and current. A MOV, or snubber circuit can be used to reduce voltage. I think current is explained in the linked article. Seems a bad idea to swith an inductive load at zero crossing. Leo..

I would think switching at zero [u]current[/u] would make the least sparking, but timing would depend on phase shift caused by inductive reactance, current zero cross would lag voltage according to frequency and inductive reactance.

I think a lot depends on the speed the contacts move to make or break. The slower this is the more sparking you get. I am not sure if this is a fully researched subject, it might make a good student project.

If you were sensing current instead of voltage and knew the time lag between dropping power to the relay and the contacts opening, then dropping relay power at current peak + 1/4 cycle - relay lag would result in the smallest spark. I think.

Thanks everyone for your comments. Its got me thinking that I'll eventually need to write some code, set up some test circuits and get some real life data ... not sure if I'll get to that, but I'll definitely post results here if I do.

It seems that the relay lag time would be a constant (for a constant coil power), so this could easily be accounted for. For the Songle SRD relay, its about 7ms operation time and 3ms release time (reading from the graph).

Might have to consider if the relay is being energized or de-energized.

Contacts Closing:

If the NO contacts switch an inductive to AC power (COM contact) at zero crossing, both the load and AC power are initially at 0 volts, so in this case I would think there would be the least EMI as the contacts bounce.

Contacts Releasing:

Initially I was just thinking of zero-crossing voltage, then at the minimum AC reactive power, but I'm feeling confident with outsider's suggestion of dropping relay power at current peak + 1/4 cycle (zero crossing of current).

If the contacts could be always closed at zero-crossing of AC voltage and opened at zero-crossing of AC current, I wonder if this produce the minimum possible EMI?

I think a lot depends on the speed the contacts move to make or break. The slower this is the more sparking you get. I am not sure if this is a fully researched subject, it might make a good student project.

Yes I agree.

I've read somewhere that if you over-drive the coil (say 120% voltage), this will speed up the contacts on "make" and create extra bouncing. Not sure how this would effect arcing or EMI.

Once worked on a Brazil built machine tool that used 220VAC relays in a 24VDC control circuit, the coil was supplied through a NC, late break aux contact in parallel with a power resistor so when energized, the coil got 220 AC then, when the late break contact opened, 24 DC through the resistor. Don’t know if it helped with EMI but it worked well for years.

Found some useful info here that provides some insight. This company uses a hybrid (solid state switch) solution to contact arc suppression that has outstanding results but comes with a \$\$ price.

I've reviewed all their app/lab notes and a few things of interest in lab note #104 (EMI Reduction) are:

"There are two distinct arcs during the MAKE state: the ﬁrst is the initial dielectric breakdown (Make Arc), followed-by one or more Bounce arcs until the contacts come to rest in the CLOSED state. The most damaging arc occurs during the contact BREAK state, as it is akin to the process of arc welding."

Also, their EMI test procedure is quite elaborate.

It would be interesting to know what could be achieved with "Software Arc Suppression" using Arduino. An ultimate goal would be to get similar results to their video on the home page for the price of some code and a few low cost external components.

Triacs of course, always "open" at zero current.

I thought triacs were cheaper than relays anyway , what load are you trying to switch

Paul__B: Triacs of course, always "open" at zero current.

Good point. This should also be the ideal time for relay contacts to open.

Boardburner2: I thought triacs were cheaper than relays anyway , what load are you trying to switch

Leading, lagging and unity P.F. loads within the specifications of any mechanical relay.

Thinking at this point that it might be possible to use Arduino to reduce or eliminate relay contact arcing and EMI emission. So far, I can't think of any reason why it wouldn't work other than - Why hasn't this already been done?

I have a circuit and test setup in mind ... however will need to get some additional test equipment. Oh, another thing I'll need to get is some extra time to do this :)