I have developed a soft-starter for a project of mine. I am using an Arduino Uno to generate PWM to an OAC-5 relay that turns on and off the voltage across my bridge rectifier.

Here is a simple block diagram: enter image description here

Everything is working fine, it blocks the in-rush current as its supposed to, however I can't generate a clean response:

enter image description here

Without my soft starter the motors in-rush current reached 8 A. So from this we could see that the application is working, however I'm not liking that noise.

I know its from the PWM, as you could see the faster it speeds up the faster the load reaches it's maximum voltage.

Any thoughts on this? Is the relay switching too fast? or is my Arduino frequency too fast for the relay & motor?

*Note: A typical desired step response for a soft-starter is shown here:


Also, my method of current measurement was putting a 10ohm resistor in series with the motor, and measuring the voltage across it to calculate current.

  • \$\begingroup\$ What about use a 74HC14 IC to make the PWM generator and a triac instead of a relay? high frequencies could damage the relay switching or at least reduce its life time. \$\endgroup\$
    – Guilherme
    Feb 27, 2021 at 16:48

1 Answer 1


Per the OAD-5 datasheet:

The OAC5 output module is used for controlling or switching AC loads of 12-140 VAC. Each module provides up to 4000 volts (transient) of optical isolation between the field devices and the control logic. This module is equivalent to a single pole, single throw, normally open contact (FORM A, SPST-NO, Make). All AC output modules feature zero voltage turn-on and zero current turn-off.

The OAC5 is made for switching AC in a graceful way (at voltage and current zero crossings) and is not designed to support PWM. As a result, the OAC5 is switching on when your PWM output is high AND the AC waveform has a zero voltage crossing, and the OAC5 is switching off when your PWM output is low AND the AC waveform has a zero current crossing. The result will appear near-random, I'd expect.

It seems to me that what you probably want to do is phase control on the AC side of the rectifier or PWM via a FET on the DC side of the rectifier to achieve soft start.

  • \$\begingroup\$ +1 for explaining the problem and +1 for proposing the DC-side control :) \$\endgroup\$
    – JimmyB
    Mar 27, 2013 at 20:58
  • \$\begingroup\$ So if I integrate DC-side control using a FET, I would still be able to use my PWM logic that turns on the relay, correct? Would this eliminate the random noise that you are mentioning? \$\endgroup\$
    – Maraldz
    Mar 27, 2013 at 21:50
  • 1
    \$\begingroup\$ Yes, though you'll be dealing with 170VDC peak, plus switching transients. You will want to use an isolated gate drive to prevent the risk of high voltage appearing on your logic board. Please be careful. \$\endgroup\$
    – HikeOnPast
    Mar 27, 2013 at 23:21
  • \$\begingroup\$ I will certainly consider safety first when dealing with this application. An isolated gate drive where? Sorry I'm confused on how exactly I should apply this FET and isolated gate drive. \$\endgroup\$
    – Maraldz
    Mar 27, 2013 at 23:40
  • \$\begingroup\$ en.wikipedia.org/wiki/Gate_Drivers Don't take this the wrong way, but doing PWM on 170VDC at ~2A is not a beginner project. @Joe's suggestion of using an appropriately sized inrush current limiter may be a better solution. \$\endgroup\$
    – HikeOnPast
    Mar 28, 2013 at 4:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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