Uso del detector de cruce por cero para el control del brillo de varias cargas

3

El detector de cruce por cero (IC H11AA1) genera un pulso exactamente en el cruce por cero de la onda de CA. Estoy tratando de controlar el brillo de varias bombillas (casi 48 cargas). Tengo 5 estados diferentes para ellos. En el estado 5 triacs dispararán instantáneamente. En el estado 4 triacs dispararán después de 1960 microsegundos. De la misma manera para todos los demás estados con el retraso de 1960 micro segundos. El problema es que necesito una lógica diferente en lugar del método delayMicroseconds () en arduino para evitar el retraso no deseado. Necesito generar cuatro interrupciones con un intervalo de tiempo de 1960 microsegundos después de la interrupción del detector de cruce por cero por cada medio ciclo de onda de CA. ¿Hay alguna implementación de software o hardware?

    
pregunta user2598121

2 respuestas

1

Deberías revisar las bibliotecas del temporizador. Esto le dará acceso a temporizadores más precisos:

enlace

    
respondido por el Daniel
0

La forma más fácil de hacerlo en hardware, creo, es reducir el voltaje de la red a un nivel razonable usando un transformador, que también comprará un aislamiento casi siempre bienvenido de la red, luego rectificará la onda completa. -voltaje de onda sinusoidal del transformador, utilizando Schottkys. Después de eso, use un comparador para realizar la detección de cruce por cero y 3 pares de comparadores como detectores de ventanas para generar los pulsos de salida en \ $ 0 ^ {\ circ}, 45 ^ {\ circ}, 90 ^ {\ circ}, \ text {y} 135 ^ {\ circ}. \ $

El ZCD generará un pulso en el próximo cruce por cero, \ $ 180 ^ {\ circ} \ $, y los detectores de ventana generarán los pulsos en \ $ 225 ^ {\ circ}, 270 ^ {\ circ }, \ text {y} 315 ^ {\ circ}. \ $

Luego, en \ $ 360 ^ {\ circ} / 0 ^ {\ circ}, \ $ el ZCD generará otro pulso de cruce por cero y el ciclo comenzará nuevamente.

No estoy seguro de si desea generar ocho o diez puntos de conmutación a lo largo de la onda sinusoidal, pero si necesita más, simplemente agregue detectores de ventanas.

Finalmente, podrías usar algo como un HC251 para dirigir los diversos pulsos hacia la carga.

ACTUALIZACIÓN:

Aquí hay una manera mejor de hacerlo:

T1 se usa para obtener una señal bifásica de bajo voltaje de la red eléctrica, y esa señal se rectifica en onda completa mediante D1 y D2 y se envía a U4, cuya salida baja cuando detecta los picos bajos de la señal completa. - señal rectificada de onda, que corresponde a los cruces por cero de la red.

La salida de U4 se usa para activar U5A, que genera un pulso de salida con un ancho igual a: $$ \ text {t = 1.1RC}, $$ donde 't' es el ancho del pulso, en segundos, R es el valor, en ohmios, de R1, R2, R3, R4. o R5 (profundizando en el que se selecciona por el Arduino) y C es el valor de C1, en faradios.

U1-Z está conectado a +5 voltios, por lo que, dependiendo de las salidas de Arduino a U1, como se muestra en la tabla de verdad, 5 voltios se conectarán a una de las 5 resistencias de temporización para U5A, configurando el ancho de salida de U5A pulso, el ancho del pulso determina el brillo de las lámparas.

Cuando U5A expira, su salida baja se diferencia y se usa para disparar U5B, que generará los pulsos utilizados, en última instancia, para disparar los TRIAC.

    
respondido por el EM Fields

Lea otras preguntas en las etiquetas