PDA

View Full Version : AC Relay EMI Suppression



CocaColaKid
- 5th April 2005, 17:41
Any one have a good idea to stop the EMI coming from switching AC relays. We keep getting whacked by these huge spikes whenwe switch off the loads. We have bi-directional zener on the power supply and MOVs on the contacts of the small relays that fire the larger relays. The small relays are using the reverse-biased diode for suppression which seems to work really good. Just wish it would work for the AC relays as well. What keeps happening is the processor kepts resetting. Not all the time but a good chunk of the time though. Any suggestions would be greatly appreciated.

mister_e
- 5th April 2005, 18:00
you can do many many many many things...

the intelligent and easy solution is to activate and deactivate the relays when the AC signal line cross the zero volt.

Use separate ground lines for your relay and for the digital section of your design.

Be sure all your PIC pins are tie somewhere. Floating pins cause also many problem in noisy environement. Internal pull-up or set the unused i/o to output like Microchip suggest do absolutely nothing good.

if you can post your whole schematic and layout we can also suggest some things.

NavMicroSystems
- 5th April 2005, 18:30
CocaColaKid,

As Steve has already mentioned, best would be to toggle the relais at zero-crossing only.
This would not only reduce EMI-noise, it would also increase the relays lifetime.

There are many ways to achieve this, but we would need to have a look at your schematic to point you in the right direction.

In any case you'll need a zero-crossing detector for this.

What I have done is:
put a 74x574 (8-Bit D-Latch with Clock) between the PIC port (I2C IO Expander in my case) and the relay driver.
and let the ZeroCrossing detector clock the latch.

CocaColaKid
- 5th April 2005, 18:50
So basically I should determine what needs to be done and hold that information until the zero cross and then set the relays to there proper state. Is this correct?

mister_e
- 5th April 2005, 18:59
yep. As Ralph suggest, the latches will do the job for you. OR if you don't have many i/o, you can do it by software by checking the zero crossing on a specific i/o and once you get it, refresh your i/o states.

NavMicroSystems
- 5th April 2005, 19:25
If your application allows to do it within the software, fine.
But It will be a bit tricky to get the timing right.

I have given up on the software solution because I had to write to more than one I2C controller at the same time.

With the latches it works just fine.
The only thing you'll need is an option the adjust the trigger-level of the detector to compensate for the relays latency.

Luciano
- 5th April 2005, 23:00
Use a solid state relays (SSR) with built-in zero crossing.

http://www.components.omron.com/Products-Ind_Relays.shtm
(Omron)

http://www.celduc-relais.com/uk/okpac.htm

http://www.power-io.com/
(Ultra precise zero crossing for reduced EMI, without the cost of external filters).

http://www.branom.com/literature/scr.html
(SOLID STATE RELAYS AND SCR POWER CONTROLLERS Introduction).


Luciano

cupajoe
- 6th April 2005, 02:17
Cocacolakid,

Are you driving these relays with your PIC? If so how?

I guess what I am asking is: Are you sure that the noise isn't coming from the coil of the relay? Can you hook a relay up to your pic without a load and fire it and scope the noise?

You see I have never managed to induce enough noise from the AC mains side of a power supply thru to the DC side to reset a PIC...but I have done it by driving inductive loads thru improperly filtered drivers with my PIC.

Again, perhaps I am not understanding your problem, could you please show us a schematic?

Regards,

Joe.

Luciano
- 6th April 2005, 10:14
The small relays are using the reverse-biased diode for suppression which seems to work really good. Just wish it would work for the AC relays as well.
Joe may be right.

* * * *
Large relais have AC or DC coils. If you use a relay with a DC coil you can use
the same solution you have used for the small relay.

Suppressing Relay Coil Transients:
http://relays.tycoelectronics.com/kilovac/appnotes/transients.stm

* * * *

Example of relay with "AC coil" with built-in surge suppressor:

700-R -RM Sealed Switch Relays:
http://www.ab.com/en/epub/catalogs/12768/229240/229266/229661/3087128/484196/index.html


(SEE "Surge Suppressor" under TAB Accessories).
http://www.ab.com/en/epub/catalogs/12768/229240/229266/229661/3087128/484196/tab5.html

(From the web page).
When the circuit to a DC operating coil is opened, the inductive energy stored in the coil can generate very high transient voltages. With the addition of the appropriate surge suppressor, the stored energy is absorbed and dissipated limiting the voltage spikes. A surge suppressor is not required with AC 700-R or -RM relays because the AC operating coil transients are suppressed by a full wave rectifier connected to the coil.


Luciano

NavMicroSystems
- 6th April 2005, 14:20
We keep getting whacked by these huge spikes when we switch off the loads.



Are you sure that the noise isn't coming from the coil of the relay? Can you hook a relay up to your pic without a load and fire it and scope the noise?


I have had a simmilar situation,
with no load I could switch all relays without seeing any spike,
but with (inductive) load on the large relais I had huge spikes about 1 or 2 times out of 10.
The spikes were definitely comming from the relays contacts when opening.

Since the "power-side" of the project was an existing installation, replacing the relays was no option.

This is why I went for the "ZeroCrossing" solution.

@CocaColaKid,

However you should doublecheck you have done everything to suppress noise comming from the coils.
Make sure you have proper grounding and no Ground loops.
Use a separat PSU to drive the small relays.

@Melanie

Isn't this one of the areas you are experienced in?

Mike Johnson
- 10th April 2005, 15:57
If your final load is inductive, then the best solution is a zero crossing turn-on and a MOV protected zero crossing turn-off is the easiest solution. See: http://www.power-io.com/new/motorstarters.htm
as an example of this.

NavMicroSystems
- 11th April 2005, 01:15
Mike,

thanks for the link,
the price is as high as the heatsink is large
;-)

Melanie
- 11th April 2005, 03:01
Sorry Ralph I wasn't continuing to read this thread as I'd assumed it had already been adequately answered some days ago...

Yes, zero cross is the way to go with inductive loads, plus VDR's (capable of absorbing any transients) across the switching element.

Ensure inductive surges will not penetrate your PSU and it is clean. You've sprinked 100nF Capacitors around your power rails like confetti.

Basic filtering on any other input pins (you'll be surprised what a 10K Resistor and a 100nF Capacitor will stop!).

Site the PIC well away from your switching elements or ensure it is screened and if nescessary has a large ground plane all around and underneath it.

I've not experienced the PIC problems that a lot of folks seem to have, perhaps it's because I build-in all the above recommendations into my PIC designs from the very beginning. It is important to identify what kind of interference is causing your problem... without knowing that you're stabbing in the dark as to a solution. It's overly simplistic saying it's "an inductive load switching". well what's it doing? Is the transient going down the power lines and affecting your PSU? Is it being induced into PCB tracks and coming down other input pins (or being induced locally into the PSU)? Or is it a localised EMP screwing the chip directly. You MUST first identify the root cause before applying a solution otherwise you will just end up wasting hours of your life.

NavMicroSystems
- 11th April 2005, 11:17
Thanks Melanie!

CocaColaKid
- 13th April 2005, 19:25
First, thanks for all the help here.

Unfortunately I was not aware of this problem when switching AC relays. We can rule out the load on the relay because we can get the circuit to reset on the bench with no load on it. This makes me think that there is a nasty little spike travelling down through the ground back to my board. If I insert an MOV at the relay the problem seems to disapear. However this I consider a not so easy to implement solution since there about 400 of these products out in the field right now that need to be corrected.

As for driving the relays I use a small signal relay that switches the 24VAC to the larger relay. The small relay is driven from a transistor connected between it and ground. I then have the base connected to the PIC via a 10k resistor.

As for solid state relay, way too expensive and way to much real estate. Would be nice but not doable.

Luciano
- 13th April 2005, 20:24
Post the model number and brand of the large relay.
(URL where we can see the large relay + datasheet).

Luciano

CocaColaKid
- 20th April 2005, 16:00
I was just looking at some relays and noticed that Panasonic has some SSR that have a zero-cross built-in. This would eliminate the need to use my small signal relay + transistor to fire the larger relays while providing a zero-cross circuit for a cheaper price.

lazerthegreat
- 3rd January 2006, 23:15
Hello guys! I am new at this. Can somebody plz explain in detail the differences between AC & DC relays. In what circumstances these are used. We have a heating element (for residential heaters) and some of them use AC contactors and some DC contactors. The person who designed them is gone. Can somebody let me know why two different types of contactors (AC & DC) are used?
thanks in advance.

Luciano
- 4th January 2006, 09:13
Hi,

See this link.

http://synergy.sager.com/ProductPDFs/relays.pdf

Best regards,

Luciano