Controlling Triac by Arduino

You can simplify the circuit in that instructable, by replacing the opto isolator used to detect zero crossings by one that accepts AC input, such as this http://uk.farnell.com/avago-technologies/hcpl-814-w60e/optocoupler-ac-wide-vde/dp/1604640. Then you don't need a bridge rectifier to feed it.