El regulador de luz RobotDyn controlado por ESP 07 solo produce parpadeos

0

Utilizo un módulo dimmer conectado a un ESP07 que tiene firmware de MCU de nodo.

Estoy usando la interrupción Z-C para omitir los pulsos sinusoidales, sin embargo, solo obtengo parpadeo en lugar de atenuación. La luz de la bombilla es halógena, por lo que es regulable.

Debajo está el código que estoy usando. ¿Tienes alguna idea de lo que debería investigar?

--The Z-C pin
gpio.mode(2, gpio.INPUT)
--The PWM pin
gpio.mode(5, gpio.OUTPUT)


gpio.write(5, gpio.LOW)
pwm.setup(5, 1000, 0)
pwm.start(5)

counter = 0;

local function zc_callback(level, pulse)

    counter = counter + 1;
    counter = counter % 10;


    if (counter == 0) then
        pwm.setduty(5, 1023)
    else
        pwm.setduty(5, 0)
  end
end

gpio.trig(2, "low", zc_callback)
    

1 respuesta

1

Parece que estás usando PWM para tratar de controlar el atenuador. No es así como funciona.

Figura1.Laatenuacióncontroladaporfaseserealizaencendiendoeltriacenalgúnmomentodelsemiciclodelared.

En su lugar, debe medir el tiempo entre cruces por cero en (1), comenzar un retraso en el próximo cruce por cero y luego encender el opto-triac (2). Esto activará el triac (3) que permanecerá encendido hasta el próximo cruce por cero cuando se puedan repetir el retraso y el proceso de activación.

Cuanto más largo sea el retardo, más débil será la luz.

    
respondido por el Transistor

Lea otras preguntas en las etiquetas