25A Solid State Relays Keep Failing

Hello,
Wondering if someone can offer me some guideance on a exhibit that I have created. I am using an Arduino Uno to intermittently turn on and off a high power industrial fan. The fan draws about 12-13 amps when on. I am using a solid state relay to control the fan. The exhibit is a high traffic area and is activated several hundred times per day. This is the relay I am using:

http://www.fotek.com.hk/solid/SSR-1.htm

The problem that I am having is that after about 3 to 5 days of use, the AC side of the relay seems to get stuck on the "on" or permanently closed state regardless of the state on the input (arduino 5v) side, so the fan just runs constantly without any control from the Arduino. The SSR is properly heat sinked and actually barely even gets warm when the relay is operating normally.

I am just starting out in electronics. My suspicion is that this has something to do with the high current inductive load on the relay. I have tried to do my research here and in other places and I keep seeing reference to a RC snubber but I am not clear on how to, or if it is actually needed. Maybe I'm totally off on what the problem actually is to begin with. I have gone through 3 relays so far, so it seems to be pretty clear that there is a repeatable problem with my design.

Any assistance would be greatly appreciated. Thanks!

Hello

But if you check your first link you will see your ssr has a rc snubber already built in.

You could protect it with another rc snubber, i didnt had to design 1 yet, so i cant help you.

But i would try to protect it with a varistor.
http://www3.panasonic.biz/ac/e/control/relay/solid-state/related_information/caussr.jsp

I suggest reading omron pdf, since alot of it applys to ssr in general

Hi,
Not sure if I can help you much...
Looking at the diagram in your first link there isn't a way for the AC side to get stuck (unless something is wrong internally).
On the input side of the relay in the diagram is where your switch is...guessing the Arduino is controlling that switch? Also looks like a battery right below the switch? So the relay may require power as well as the Arduino..
The 'LOAD' in the schematic is the fan and the ~ lines would be where you hook up your AC. Also take note on the input side of the + and - DC terminals.
Can you see if that switch is working correctly?
Someone else can hopefully offer you more help.
Is everything wired correctly? How are you powering the Arduino, you mentioned +5VDC?
Also, would help to post your code.
I haven't messed around much with relays and never used a SS one but maybe someone else can chime in and help.

Edit* Just something I remember reading here a while back on something similar running for a length of time and going out of sync. or timing going out...could be something in your code but could be wrong.

t

Thanks very much. Just bought some varistors and also a heavier duty relay to try out (40A). I saw in the link you provided that for an inductive load, the rating should be double the max current of the load. Makes sense.

I'd be happy to clarify.

You are correct. The arduino is on the DC side. These relays will trigger with as low as 3V. There is a LED indicator on the relay itself that indicates when it is on or off. Side note: After the relay fails, this LED indicator still functions properly, despite the relay being stuck "on".

The Arduino is powered using an external 9v power supply. The Arduino hooks up to the relay, observing proper polarity, to a digital pin and a GND pin. The AC side is the fan, of course.

When the fan gets stuck on, it does so regardless of being hooked up or not to the arduino, so the issue can be isolated to the relay itself.

The sketch that runs this is mindlessly simple, I'll post it below.

int fanPin = 9;
int buttonPin = 2;
// set fan show duration
int fanDuration = 15000;

void setup(){
  pinMode(fanPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  Serial.begin(9600);
}

void loop(){
  int i;
  int buttonState = digitalRead(buttonPin);
  
  if(buttonState == LOW){
    Serial.write(0x01); //start audio sequence
    delay(7150); //sync start of fan to audio track
    for(i = 0; i<fanDuration; i++){
      digitalWrite(fanPin, HIGH);
      delay(1);
    }
  }
  else
  {
    digitalWrite(fanPin, LOW);
  }
}

Yes it is the surge on switching on your motor that is killing the relay. I am not sure that even a 40 A relay will be big enough, turn on surges can be 10 times normal running or more.

I don't see the point of this code:

    for(i = 0; i<fanDuration; i++){
      digitalWrite(fanPin, HIGH);
      digitalWrite(ledPin, HIGH);
      delay(1);
    }

As far as I can see, it is equivalent to:

    digitalWrite(fanPin, HIGH);
    digitalWrite(ledPin, HIGH);
    delay(15000);

Pete

Grumpy_Mike:
Yes it is the surge on switching on your motor that is killing the relay. I am not sure that even a 40 A relay will be big enough, turn on surges can be 10 times normal running or more.

Hey Mike,
Don't mean to change the subject...just a quick question. From working on my bot which has wheelchair DC motors, I read a lot about the Amp spike when you first turn on the DC motor. How does this compare to an AC motor turning on?

Mike - Agreed. So maybe it's best to go with a standard mechanical relay then.

Pete - You are correct. They would accomplish the same thing. This is equally irrelevant to my problem, but when I'm trying to learn something new (like writing code), I like to do things in various ways. It helps me to memorize and learn so I don't have to come here and bother people with basic questions. For loops were something that use to give me some trouble conceptually, so I used one here because it's good practice and, well i could. I also like to try to avoid delay whenever possible, but that's another technique that i often struggle with.

I also like to try to avoid delay whenever possible

So calling delay(1) 15000 times, instead of delay(15000) once, is avoiding using delay?

I used one here because it's good practice

How is it "good practice" to use a for loop when one is not needed?

Oh, never mind. I have made a note not to help you with programming problems.

Ciao

Pete

thomas3120:

Grumpy_Mike:
Yes it is the surge on switching on your motor that is killing the relay. I am not sure that even a 40 A relay will be big enough, turn on surges can be 10 times normal running or more.

Hey Mike,
Don't mean to change the subject...just a quick question. From working on my bot which has wheelchair DC motors, I read a lot about the Amp spike when you first turn on the DC motor. How does this compare to an AC motor turning on?

In general the current surges in AC motors are not as big as DC motors because the AC limits the lieush current. But 11 Amps is a lot of current to draw while running. It depends on the exact type of motor you have.

Grumpy_Mike:

thomas3120:

Grumpy_Mike:
Yes it is the surge on switching on your motor that is killing the relay. I am not sure that even a 40 A relay will be big enough, turn on surges can be 10 times normal running or more.

Hey Mike,
Don't mean to change the subject...just a quick question. From working on my bot which has wheelchair DC motors, I read a lot about the Amp spike when you first turn on the DC motor. How does this compare to an AC motor turning on?

In general the current surges in AC motors are not as big as DC motors because the AC limits the lieush current. But 11 Amps is a lot of current to draw while running. It depends on the exact type of motor you have.

If I remember correctly I read an article that said something along the lines that DC Amps were deadlier than AC (not sure what conditions, etc..). Kind of left me surprised hehe

I just pulled out some info on my DC motor & motor driver setup (may help the OP). Each of my DC motors use around 13A running. My motor driver is the sabertooth 2x25A (running) with a 50A peak rating for a few seconds with no problems.

@ kslagerman: That's still strange how it works fine switching that many times a day for 3-5 days before acting up. What happens when you cycle all power off then on?....does it work for another 3-5 days?

Thomas,

Unfortunately, power cycling does nothing. I literally have to replace the relay every 3-5 days with a brand new one because it literally is stuck on. I also found it interesting that it takes this length of time to burn it out.

I think the moral of the story here is that SSR are really best for resistive loads and not inductive loads, or at least not inductive loads of the size I am dealing with here.

kslagerman:
Thomas,

Unfortunately, power cycling does nothing. I literally have to replace the relay every 3-5 days with a brand new one because it literally is stuck on. I also found it interesting that it takes this length of time to burn it out.

I think the moral of the story here is that SSR are really best for resistive loads and not inductive loads, or at least not inductive loads of the size I am dealing with here.

Ahh :slight_smile: Post back after you try the mech. type and good luck

You need to use zero cycle switching so that the current spike problem is avoided.
This involves turning the SSR on when the AC waveform is at or close to its zero point in the AC cycle.
This way the initial current surge is avoided.
Its likley you are exceeding the di/dt rating of the SSR , by switching it on at or close to the peak of the AC cycle.
This would explain why the SSR does work for some time then fails.
All solid state switches not only have a maximum current rating, but also a maximum di/dt or rate of change of current with time rating.
The latter is usually not a problem with resistive loads, but becomes a problem with reactive or inductive loads.'

You need to use zero cycle switching so that the current spike problem is avoided.
This involves turning the SSR on when the AC waveform is at or close to its zero point in the AC cycle.

If you look at the data sheet that the OP posted at the start you wll see that it has a zero point crossing detector already built into it.

kslagerman:
Hello,
Wondering if someone can offer me some guideance on a exhibit that I have created. I am using an Arduino Uno to intermittently turn on and off a high power industrial fan. The fan draws about 12-13 amps when on. I am using a solid state relay to control the fan. The exhibit is a high traffic area and is activated several hundred times per day. This is the relay I am using:

http://www.fotek.com.hk/solid/SSR-1.htm

http://image.dhgate.com/albu_216569568_00-1.0x0/fotek-ssr-25aa-manufacturer-25a-ssr-solid.jpg

The problem that I am having is that after about 3 to 5 days of use, the AC side of the relay seems to get stuck on the "on" or permanently closed state regardless of the state on the input (arduino 5v) side, so the fan just runs constantly without any control from the Arduino. The SSR is properly heat sinked and actually barely even gets warm when the relay is operating normally.

I am just starting out in electronics. My suspicion is that this has something to do with the high current inductive load on the relay. I have tried to do my research here and in other places and I keep seeing reference to a RC snubber but I am not clear on how to, or if it is actually needed. Maybe I'm totally off on what the problem actually is to begin with. I have gone through 3 relays so far, so it seems to be pretty clear that there is a repeatable problem with my design.

Any assistance would be greatly appreciated. Thanks!

I find that the quality of those Fotek SSRs varies greatly - it seems now to be a generic name that all EBAY SSRs are sold under.

even when using them with a resistive load i over rate them by a factor of two - with an induction motor i try and quadruple it - and have still had problems in the past.

Craig

kslagerman:
Thomas,

Unfortunately, power cycling does nothing. I literally have to replace the relay every 3-5 days with a brand new one because it literally is stuck on. I also found it interesting that it takes this length of time to burn it out.

I think the moral of the story here is that SSR are really best for resistive loads and not inductive loads, or at least not inductive loads of the size I am dealing with here.

That is correct. A SSR typically requires an external 'snubber circuit' for larger inductive loads. This typically is just a series resistor and cap wired across the SSR's output terminals. However the proper values for the resistor and cap needs to be calculated for the inductive value of the motor which may not be easily found.

http://www.omron.com.au/FAQ/FAQ02088/index.asp

Lefty

retrolefty:

kslagerman:
Thomas,

Unfortunately, power cycling does nothing. I literally have to replace the relay every 3-5 days with a brand new one because it literally is stuck on. I also found it interesting that it takes this length of time to burn it out.

I think the moral of the story here is that SSR are really best for resistive loads and not inductive loads, or at least not inductive loads of the size I am dealing with here.

That is correct. A SSR typically requires an external 'snubber circuit' for larger inductive loads. This typically is just a series resistor and cap wired across the SSR's output terminals. However the proper values for the resistor and cap needs to be calculated for the inductive value of the motor which may not be easily found.

http://www.omron.com.au/FAQ/FAQ02088/index.asp

Lefty

The AC fan is inductive because of the windings in the motor, correct? Does this also include the core or magnets?
Just read up a bit on it...seems like the danger is when you cut all power to the inductor/coils(while the coils/windings are charged). This releases like a burst of current?

The AC fan is inductive because of the windings in the motor, correct?

correct.

Does this also include the core or magnets?

Magnets and cores are not part of an electrical circuit

...seems like the danger is when you cut all power to the inductor/coils(while the coils/windings are charged). This releases like a burst of current?

This is well known it is called back EMF but is nothing to do with the problem here because a triac only turns off when the voltage across it is close to zero. It contributes to the out of phase current and voltage but again that is not the problem.