Protecting my Microchip from Noise, EMI

Thread Starter

beeson76

Joined Apr 19, 2010
211
This is a follow up post to one I have in The Programming section, but I decided to start a new post on a new subject. I will eventually provide a schematic (Im working on it right now)

But I have a few quick questions:

Simply put:) I believe motors and relays are locking up my microchip. Pretty sure it EMI or noise. I have a diode across the coils and I have Surge Absorbers across the on the relay/motors connections. Here the are ones I have:

http://www.digikey.com/product-search/en?x=18&y=17&lang=en&site=us&KeyWords=p7203-nd

I know a schematic would be great here (and I will have one in a short while) but when I pick the Surge Absorbers, should I go with one that is as close in value to my load. My load is motors on 120V? Or is Surge Absorbers not the answer in this situation?

Thanks in advance for any help here.
 
Last edited:

debjit625

Joined Apr 17, 2010
790
If your inductors are working in very high frequency then only it could interfere other EMI non immune devices. In your case its something else, as far I can understand without a schematic ,you are switching the motor using relay and switching the relay using mcu.

Or is Surge Absorbers not the answer in this situation?
To answer that need a schematic...

Good Luck
 

nsaspook

Joined Aug 27, 2009
13,273
Simply put:) I believe motors and relays are locking up my microchip. Pretty sure it EMI or noise. I have a diode across the coils and I have Surge Absorbers across the on the relay/motors connections. Here the are ones I have:

Thanks in advance for any help here.
Some general hints and things to look at. Anything thing that switches power or has switched power travel in it needs close attention. The suppression diodes and absorbers are needed but can only do so much if other factors are not taken into account.

As a last resort use a metal shielding enclosure for the controller in a high noise environment with filtered I/O connections but it's always best to reduce the EMI at the source. http://www.digikey.com/product-search/en?FV=ffec18cf&stock=1

Controller: On the controller make sure all unused pins are terminated and not left floating, they can also be configured as outputs. Use opt-isolators for noisy signals like roller or limit switch inputs external to the controller enclosure. Use pull-up/down resistors to reduce input impedance. www.ti.com/lit/an/szza009/szza009.pdf
Isolation by location: Move high power switching as far as possible from the controller and any external I/O it uses.
Power: Use Isolated power supply lines if possible or a filter and bypass capacitor as close as possible to the device.
Grounding: Connect digital, analog and relay/switched devices grounds in a star pattern if possible to reduce "ground bounce". http://www.analog.com/library/analogDialogue/archives/46-06/staying_well_grounded.html
Lead Dress: Avoid sharp bends in switched power wiring, keep supply and return leads close or twisted together and make them as short as possible.
 
Last edited:

Thread Starter

beeson76

Joined Apr 19, 2010
211
Here is the schematic for the circuit. It only takes in 2 relays and 1 motor. The circuit consists of 8 relays and 4 motors. It was just rehashing what is already presented. Hope this helps.

If you have any questions, or need more details or need the schematic drawn better:), please let me know.

The Surge Absorbers are represented by L1 to L3.

I appreciate the help that is provided.
 

Attachments

Last edited:

nsaspook

Joined Aug 27, 2009
13,273
If you disconnect the AC power to the motors and just switch the relays does the controller problem go away? Switching large inductive loads without zero-cross is a recipe for nasty noise problems. If the controller problems are caused by the relay AC power switching, adding a SSR (with the proper snubber circuit) with zero-cross on the main motor AC power line and switching AC power off, wait for a few power cycles, configure and latch register, wait for relays to settle and then re-enabling the motor AC power with the SSR will reduce RFI/EMI from contacts switching live power.

http://pewa.panasonic.com/assets/pcsd/catalog/semi_eng_caussr.pdf
 
Last edited:

Thread Starter

beeson76

Joined Apr 19, 2010
211
Thanks Nsaspook.

Did what you wanted me to do about unhooking the motor, and it is definitely the "large inductive load" causing the problem. It wouldnt lock my relays up for anything after I unhook the motors. This is getting exciting now:) because we definitely have locked down the problem to the motors causing the noise.

When you say zero-cross, what do you mean? Im still learning a lot about electronics, so the simpler the better:)
 

nsaspook

Joined Aug 27, 2009
13,273
Thanks Nsaspook.

When you say zero-cross, what do you mean? Im still learning a lot about electronics, so the simpler the better:)
This should help to explain zero-cross but I suspect your problem can be fixed without the SSR.
http://pewa.panasonic.com/assets/pcsd/catalog/semi_eng_caussr.pdf
Using a proper "snubber" circuit on every relay contact might reduce the level of generated signal below the problem point. For your simple circuit a RC snubber should be ok (100 nF + 100 ohm).
http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CGQQFjAB&url=http%3A%2F%2Fwww.hiquel.com%2Ffileadmin%2Fuserfiles%2FAppNotes%2FEnglisch%2FHIQUEL_Snubber_AppNote_EN_0100.pdf&ei=WRckUKjSEa_siwKxn4HYBg&usg=AFQjCNHQhqZW2x46vNGlYE_LHvcaXJ_RDA&sig2=RZZ-TjDEl-2wfvxk0UJodQ

I would look at your program code to make sure all possible interrupts are handled correctly and that all inputs are tied to something, not floating or are configured to outputs. The PORTB and any pin that causes a external interrupt would be a prime suspect. Sometimes just disabling all external interrupts during the EMI causing switching time window and clearing all the flags before re-enabling them is necessary to stop spurious signals from causing problems with non-time critical inputs.
 
Last edited:

bountyhunter

Joined Sep 7, 2009
2,512
If you disconnect the AC power to the motors and just switch the relays does the controller problem go away? Switching large inductive loads without zero-cross is a recipe for nasty noise problems.
+1 That kind of "spike noise" contains energy that basically goes out to infinity in frequency, so it radiates horribly and is picked up by even small length conductors. It takes specific physical design and layout techniques to manage it. It's a real pain.
 

Thread Starter

beeson76

Joined Apr 19, 2010
211
Using a proper "snubber" circuit on every relay contact might reduce the level of generated signal below the problem point. For your simple circuit a RC snubber should be ok (100 nF + 100 ohm).
So could I attach a 100ohm resistor to a 100 nF capacitor...that is what this quote means. How would this compare with the Surge Protector that is already there.
 

nsaspook

Joined Aug 27, 2009
13,273
So could I attach a 100ohm resistor to a 100 nF capacitor...that is what this quote means. How would this compare with the Surge Protector that is already there.
Read the HIQUEL link I provided to get a idea on exact component values, they are not usually not critical. The values I gave are standard values for off the shelf parts. http://www.farnell.com/datasheets/58283.pdf

You have "Surge Protection" devices from hot the neutral that are designed to clamp a already generated over-voltage signal transient but the source of the problem originates from the contacts switching the hot wire so suppressing the radiated energy source should be the first place to start and will usually be more effective than chasing it down the wire.
 

Thread Starter

beeson76

Joined Apr 19, 2010
211
Thanks Nsaspook for all your help. Your are helping greatly. Your speaking like an Electrical Engineer:), so I have to look up a bunch on what you say just to understand it...but thats good for me. Im learning tremendously...a whole lot more than what I did a couple days ago. I cut open a relay (just cut off the outside cover actually), and I am getting a lot of spark.

So the spark, arcing is what the problem is? So I need to correct the problem by getting rid of the arcing. Therefore a proper snubber circuit.

An RC Snubber is made from a resistor with capacitor in series. I was seriously considering the RC Suppressor from LCR but I was disheartened to find out the size of it. Would there be a smaller one, or could I make a snubber. My length is about 15mm (.600) by 8mm width (.365). I could possibly still use the LCR snubber, but I would have to squeeze and jam things together.

Thanks for the help.
 

nsaspook

Joined Aug 27, 2009
13,273
It's 10% engineering and 90% being in your shoes with a project that runs like crap because of stupid relay or contactor noise and trying to shoehorn in a fix after it's built. If you have properly rated parts for the RC networks then use them.
 
Top