Arduino 2560 Freeze when 400V contactor close

Hello Everyone,

First post here. Hope someone will see what I’m missing. Sorry if I do some english mistake, trying to do my best.

I’m playing with Arduino as a hobby since few years. But, as soon i start something using it at my job, Murphy is coming:

I’m struggling with my arduino 2560 who sometimes freeze when it shut down a 400V contactor.

I’ve then tried to put RC filter on the contactor outputs, a 220uF capacity on 24V, and ferrites everywhere. I had some encouraging result: this freezing occurs less often, but it still occurs (Lets say about one freeze for every 50 contactor switches).

I’ve tried as well to build a Faraday cage, using aluminium paper around a paper box, no difference.

I don’t see anything strange using a scope on both 24V and 5V, theses voltages seem’s to remain stable even when commuting.

Below you’ll find a part of the drawing, a picture of the project (became a bit messy with all the troobleshoot i’ve done), and the software I’ve made.

Any advice?

Thanks for reading!

ProgrammeArduino_V0.1.ino (2.36 KB)

Use grounded, shielded wire for all signal leads.

Do You have a kick back diode connected to the relay coil?
Using an opto coupler to isolate the controller is Another alternative. A transistor might be needed if the opto output current capacity needs strenghtening.

Is the relay load debounced, denoiced etc?

Railroader:
Using an opto coupler to isolate the controller is Another alternative.

An opto isolator was going to be my suggestion as well.

I am having similar problem as well. My arduino mega is powered from one 12V supply and another arduino nano from another supply. When I switch on Nano power supply the display on LCD connected on mega vanishes some times and also when I turn on conveyor motor in same panel (even though that motor contactor is connected to any these boards in any way) I have to restart Mega and Nano. Both controllers are serially communicating using Max232 IC and there is one 5v signal going from mega to nano so I have common the groundof both supplies.

saki003:
I am having similar problem as well. My arduino mega is powered from one 12V supply and another arduino nano from another supply. When I switch on Nano power supply the display on LCD connected on mega vanishes some times and also when I turn on conveyor motor in same panel (even though that motor contactor is connected to any these boards in any way) I have to restart Mega and Nano. Both controllers are serially communicating using Max232 IC and there is one 5v signal going from mega to nano so I have common the groundof both supplies.

Something is missing from your description. Are both Arduinos using their own Max232 boards? If so, you have to supply a signal ground for the RS-232 to operate.

Then you write about a 5v signal from mega to nano and this is why you have a common ground. You need a common ground for both reasons.

Most likely you are having problems for the same reason the OP is having problems.

Paul

edit: And you are using shielded wire for the communications, are you not?

Thank you for replying!

jremington:
Use grounded, shielded wire for all signal leads.

I was fearing this answer :slight_smile: This is the next thing I'll do.

Railroader:
Do You have a kick back diode connected to the relay coil?
Using an opto coupler to isolate the controller is Another alternative. A transistor might be needed if the opto output current capacity needs strenghtening.

Is the relay load debounced, denoiced etc?

I was sure to learn something when posting here :slight_smile: So, no it seem's I don't have any kick back diode on the 24V relay coil.

About the opto coupler, I'm wondering, as this contactor's coil is driven trought a L293d, it's already decoupled isn't it?

Anyway, I forgot to write something important: The problem only occurs when the load is applyied on the contactor (circuit breaker closed --> pump pumping). Knowing that I doubt the 24V coil is my problem. I'm wondering about magnetic field.

I'm not sure about what do you mean by relay load: This contactor (3 phasis relay) is driven by a 24V / 6mA (not sure about that amperage, i ll check tomorrow) coil. The load after the relay is a 0.75kW hydraulic pump placed 50 cm beneath it.

edit: I've posted the wrong software version, I'll correct that tomorrow.

Start by applying a kick back diode to the coil and see if it helps.
I can´t tell about any diodes in the L293. Check its data sheet.
A load havin a large inrush current will create noice. Three phase asyncronous motors consume more then 10 times the average current when they start. That will send noice into mains.
For testing maybe You can use a test load of some heaters to find out or test having the pump disconnected totally.

Railroader:
I can´t tell about any diodes in the L293. Check its data sheet.

The 'D' in L293D stands for internal Diodes.
The L293 without the 'D' needs external diodes.
Leo..

Sry for the very late reply. Maybe this could help someone.
--> Solved!
I finally got this working, fortunaly a long time ago. I were using an LCD over I2C , and it seem's that the standard library (wire.h if remember well) got some "while(answer)" loops inside, making all this i2c bus very, very sensitiv about perturbations. I've spended a countless amount of hours shielding cable, putting ferrites, starground, etc.. without any other sucess than making the same crash occurs but later.

After exchanging the LCD over I2C by a standard one using 4 bit, it was working well. I were able to remove all these shields and ferrites. I've already made 7 copies of this project, all are used on a daily basis since more than 1 year, without any problems.

I regret I didn't gave all the relevant informations the my first post. Thank you for having tried to help me.

Thanks. Up an running is always nice to read.

2 posts were split to a new topic: Display problem freezes