Control AC power with triAC

Hi someone can explain me the way of controlling Ac power with triAC from Arduino.

I have MOC3041,MOC3023 and BTA08-600C but I don’t know how to use it.

I know the way of controlling Ac power with relay but I don’t know with triAC.

Moore John

In general, you should always go find the datasheet for the part you want to use. In this case the Fairchild DS for the Moc3023 has lots of useful information. http://www.fairchildsemi.com/ds/MO/MOC3023M.pdf

or… what you’re looking for is probably more like this…

You have power in, Power in you will share one side of the power in wiring amongst all your outputs. The other side will run to the input side of the TRIAC such as a Q4015L5. I last used a MOC3052. I don’t recall with the MOC chips mentioned if they do zero cross or not. If you need to create timers for that. Otherwise you just switch on / off. You will place some resistors typically on the high voltage side and feed them into a zero cross chip if you are dimming or otherwise need to confirm mains electric is functioning properly in your circuit. I used a H11AA1. This then feeds on the low voltage side to a pull up resistor and into one of the Arduino interrupt pins.

For triggering triacs on/off the MOC chips are connected to the gate of the TRIAC. The MOCs are an opto isolator. One side has high voltage and the other low voltage. Most Zero Cross and OptoIsolators I’ve seen have the 1 pin on opposite sides. You would end up needing to install the pins “backwards” from each other with the dot/pin going opposite directions of each other to keep mains voltage isolated from the low voltage on different sides of the board. The high voltage passes through two pins when a infrared light inside the chip goes off from the low voltage side. It is driven by the Arduino when you output to these LEDS from some pins that are triggered from the 16 bit timer when dimming or any pin when simply switching. Depending on Arduino model this usually ends up somewhere around pins 9 and 10 or 10 and 11 (uno vs mega seems to have this output in different places) for dimming. You run each of those through a resistor like you do for normal LEDs.

You probably want to create a “map” array of the various times for the output timer and then based on between 0 and 100% lookup the appropriate number to set the the timer for.

If it’s just on/off you can probably just trigger like an LED to the MOC and then the moc triggers the TRIAC and the triac connects one side of mains to your output while the other side is always connected.

What generic male is describing is called phase control. Given that you only implied a need for on/off control, you don’t really need to worry about that. Zero crossing detection isn’t strictly required for on/off control but it is nice since turning the TRIAC on at random times (ie not at zero crossing) generates electrical noise. That data sheet I linked to shows lots of circuit diagrams, several of which are probably directly appropriate for your application.

From the arduino, you can trigger with any digital output.