I want to control (on and off) 1.5 HP, 220VAC motor from Arduino. I am thinking of controlling the motor by building a solid state relay using MOC 3021 and triac BTA16. Is this the best approach? or using a relay is the simple and better option? Need to know any advantages and disadvantages of both the approaches. Any suggestions are welcome. Thanks in advance.
Best is to buy a ready-made random turn-on SSR, but they are expensive compared to making your own. If you use a mechanical relay, you should connect a snubber network across the contacts to control arcing. You may need to use a snubber network with the home-made SSR too.
Thanks all for your responses. I have decided to go with 10 Amps relay. For the snubber network, If have one capacitor of 10nf/680V and one resistor 39R in series across the relay switching terminals, is that sufficient?
I suggest you check the starting current of your motor, to see whether a 10A relay is sufficient. Regarding the snubber, I'm not an expert in this area, but 10nF sounds way too small to me, I suspect you need at least 1uF for a motor of that size.
Thank you dc42. After doing some research on internet, I too realized that snubber circuits may not be useful in suppressing the arc totally. So I am left out with the option building my own SSR. Good news is there a snubberless version available in BTA16 Triac series for inductive loads.