Reloj mediante la detección del cruce por cero en corriente alterna

Para la placa de «relés» del control domótico que se encarga de regular el brillo de las lamparas LED es necesario un detector de cruce por cero de la corriente alterna, esto permite que el Arduino sepa el momento exacto en el que la tensión del enchufe es de 0V, es necesario para sincronizar la frecuencia de la corriente alterna con la frecuencia del microcontrolador y hacer parpadear los LEDs en el momento exacto para dar un efecto de regulación de brillo… y no de flash de discoteca.

Para la detección se puede hacer de varias formas, a mi parecer la mas sencilla es usando un optoacoplador de doble LED para que se active tanto con corriente positiva como con negativa, el único momento que estará desactivado es cuando la corriente sea 0V.

Para probar el optoacoplador, un H11AA1, he usado el ejemplo de esta web: zero crossing detection, que permite contabilizar segundos y mostrar la hora en una pantalla LCD sin necesidad de un DS3231.

He retocado un poco el código, es el siguiente:

2 comentarios en “Reloj mediante la detección del cruce por cero en corriente alterna”

    1. Hola Marco,

      Para esta entrada no publiqué esa información ya que la saqué toda directamente del enlace que hay en mi post, sólo mejore un poco el código y poco más.

      Saludos.

Escriba aquí su comentario