0
\$\begingroup\$

I'm currently switching a single phase AC fan motor with an SSR. Here is the following SSR: http://www.crydom.com/en/products/catalog/s_1.pdf I activate this relay by applying continuous analog 10V to its inputs.

What if I use a PWM signal instead which has 490Hz frequency, like for example default Arduino PWM output? Since Arduino board doesn't have DAC, it mimics analog voltages by using PWM technique.

*For some reason I don't want to use digital outputs.

*I don't want the relay to switch on and off all the time which would cause too much heating.

My questions are:

1-) Is there a frequency limit for PWM where the relay would be always on? Or relay would always react the on of cycles of PWM what ever the freq of PWM is?

2-) I could use digital output for continuous analog voltage, but if I have to use PWM output at very low duty cycles would I have problem with the relay?

Would the motor jerk if I were to use PWM as analog DC input with this relay?

\$\endgroup\$
4
\$\begingroup\$

The SSRs you have linked use triacs to control the output. A triac is a semiconductor switch. When the triac is triggered on its gate it turns low resistance between its two anodes. Triacs have the odd characteristic that they will remain on after the gate signal is removed until the current falls below a very low hold-on current. This renders them almost useless in DC circuits but quite useful in AC circuits where the current falls to zero at every zero cross of the AC supply.

enter image description here

Figure 1. Common triac packages.

schematic

Figure 2. Triac symbol.

For on-off control the triac will be switched to give a load waveform as shown in Figure 3.

enter image description here

Figure 3. On-off AC time control.

Typically these circuits use zero-cross circuits to switch the load on at zero-cross to minimise electromagnetic interference. The triac itself switches off at the end of the next half-cycle. This approach works well for loads such as heaters which respond slowly to power.

For circuits which respond more quickly to pulses of power (such as lamps or motors) the on-off control gives too much flicker or jerk. In these cases phase angle control is used to vary the on-time of the AC supply to the load.

enter image description here

Figure 4. Phase-angle control.

Phase angle control requires instant-on (non zero-cross) SSRs but the control circuit needs to monitor the mains and give the pulses at the appropriate time relative to mains zero-cross.

What if I use a PWM signal instead which has 490Hz frequency, like for example default Arduino PWM output? Since Arduino board doesn't have DAC, it mimics analog voltages by using PWM technique.

You can't use PWM to control an SSR. The first pulse will turn it on and it will stay on until the next zero-cross.

For some reason I don't want to use digital outputs.

What is the reason?

I don't want the relay to switch on and off all the time which would cause too much heating.

What relay? Heating of what?

1-) Is there a frequency limit for PWM where the relay would be always on? Or relay would always react the on of cycles of PWM what ever the freq of PWM is?

You can't use PWM to control an SSR. You can only control to the nearest mains half-cycle.

2-) I could use digital output for continuous analog voltage, but if I have to use PWM output at very low duty cycles would I have problem with the relay?

You can't use PWM to control an SSR.

Would the motor jerk if I were to use PWM as analog DC input with this relay? pwm solid-state-relay

You can't use PWM to control an SSR.


Finally, you can't use PWM to control an SSR.


Update

Could you provide a waveform for PWM input and SSRs behavior if possible where we can see why it doesn't work?

Why PWM doesn't work with triacs.

Figure 5. The result of switching a triac with a PWM signal.

At the start of this answer I emphasised the statement, "Triacs have the odd characteristic that they will remain on after the gate signal is removed until the current falls below a very low hold-on current." This is key to the problem. In Figure 5 we can see that the triac output is off until the first PWM pulse is received. It then turns on and stays on until the next zero-cross regardless of the PWM switching. The result with continuous PWM will be that the triac turns on with the next PWM pulse after each zero-cross and stays on. Note the last half-cycle in the AC waveform. The triac is still on even though the PWM has stopped.

\$\endgroup\$
  • \$\begingroup\$ "You can't use PWM to control an SSR. The first pulse will turn it on and it will stay on until the next zero-cross" I dont understand this. I think this is the main reason I asked this question. You found the root cause of my confusion. Could you provide a waveform for PWM input and SSRs behavior if possible where we can see why it doesn't work? \$\endgroup\$ – user16307 May 12 '16 at 22:16
  • \$\begingroup\$ Added PWM / triac waveform. See Figure 5 onward. \$\endgroup\$ – Transistor May 13 '16 at 10:34
  • \$\begingroup\$ In your last figure the SSR doesn't have zero crossing right? \$\endgroup\$ – user16307 May 19 '16 at 23:01
  • \$\begingroup\$ Correct. If the SSR is zero-crossing type it would only turn on if and when the PWM 'on' overlapped with the SSR's zero-cross period. i.e., it would be hit and miss. See my answer to Using AC current to trigger triac where I explain the inner workings of a zero-cross SSR. \$\endgroup\$ – Transistor May 19 '16 at 23:09
0
\$\begingroup\$

That datasheet refers to three different SSRs.

Refer to page 2 for the entries on "maximum turn on time" and "maximum turn off time."

One of the three SSRs switches at zero crossings, and so can switch no faster than 1/2 cycle of your AC - 100 or 120 times per second.

The other two can each takeup to 20mSeconds to turn on and up to 30mSeconds to turn off. So, 20+30=50mseconds=20 times per second.

It looks like driving these SSRs with an Arduino PWM signal with the default PWM rate is a bad idea.


SSRs aren't meant to be driven in an analog manner. They are meant to be turned on or turned off.
SSR= Solid State RELAY.
Relays are switches. If you could "half turn it on" somehow, that would be worse for the SSR than turning it on or off. If it were "half on" then it would be working like a resistor, and would have to dissipate all of the other half of the power that is not being allowed to reach the load.

If you are trying to control the speed of the motor, then I think you need to go a different route. There are other questions on this site that deal with controlling AC motors. Do a search and see what ideas you can find.

\$\endgroup\$
  • \$\begingroup\$ I use this SSR not for continous On off. I will use it On for long time to run the Ac motor and Off just to turn off the motor \$\endgroup\$ – user16307 May 12 '16 at 13:59
  • \$\begingroup\$ If I switch the one with zero crossing with more than 400Hz pwm, the motor will not run? \$\endgroup\$ – user16307 May 12 '16 at 14:01
  • 2
    \$\begingroup\$ You do know that the Arduino PWM pins are also digital pins? Just turn the bugger on or off and be done. \$\endgroup\$ – JRE May 12 '16 at 14:02
  • \$\begingroup\$ What do you mean? \$\endgroup\$ – user16307 May 12 '16 at 14:03
  • 2
    \$\begingroup\$ An Arduino PWM pin can also be used as a simple on/off digital pin. So, don't monkey around trying to find a PWM speed and SSR that wil play funny games together. Just use PWM pin in digital mode and turn the SSR on or off. \$\endgroup\$ – JRE May 12 '16 at 14:08
0
\$\begingroup\$

There appears to be no practical reason to drive a SSR with PWM. And several disadvantages and possible peril.

We don't know whether you have the "zero-crossing" kind of relay, or the "instantaneous" kind. The behavior of your system (controller, SSR, motor) will be different depending on what kind of relay you have.

We don't know (and perhaps you don't know either) how your motor will react to pulsed AC power. It depends on what kind of motor it is, and how much load you have on it.

Because there are so many unknowns here (including ones you haven't thought of), nobody can predict how this will work. You must do the experiment with your own components.

I don't want the relay to switch on and off all the time which would cause too much heating.

This is simply not true. The relay is already turning on and off 100 or 120 times per second. You can't possibly make it turn on/off faster than that.

It seems quite possible that the motor will jerk. oscillate, resonate and even overheat if you power it using your proposed regime. It is not recommended and has no apparent advantages. But feel free to do the experiment for yourself. You might get lucky.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.