Autor Tema: Como funciona un dimmer?  (Leído 41520 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado marvicdigital

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 311
Como funciona un dimmer?
« en: 07 de Octubre de 2008, 01:06:35 »
Quiero hacer una consulta, lo primero es que quiero hacer un dimmer automático para hacer una iluminación del pesebre(belen) navideño que simule el cambio de dia a la noche y viceversa..he leído algunos proyectos de microchip, y otros por los foros, pero algunos están en lenguaje C y la verdad de "C"  no "SE"   :D(soy de la vieja guardia del Assembler). Quería saber que tramo de la onda senosoidal es la que se deja pasar al triac para aumentar y disminuir le itensidad lúminica? he visto algunas gráficas y veo que solo es la mitad de un semiciclo positivo y la otra mmitad del semiciclo negativo.....ese rango es el que se varía ? y por que no variar todo el semiciclo?

De verdad me perdonan el que no halla entendido los datasheets pero estoy algo confundido y quiero entender bien el funcionanmiento para hacerlo desde cero.

Muchas gracias por la ayuda y la guía que me puedan brindar.

Saludos
« Última modificación: 07 de Octubre de 2008, 01:10:40 por marvicdigital »

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Como funciona un dimmer?
« Respuesta #1 en: 07 de Octubre de 2008, 01:14:40 »
Quizás convenga que le eches un vistazo a este hilo. Si luego sigues con dudas las vamos viendo
http://www.todopic.com.ar/foros/index.php?topic=19120.0;topicseen

Desconectado marvicdigital

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 311
Re: Como funciona un dimmer?
« Respuesta #2 en: 08 de Octubre de 2008, 11:29:31 »
Quizás convenga que le eches un vistazo a este hilo. Si luego sigues con dudas las vamos viendo
http://www.todopic.com.ar/foros/index.php?topic=19120.0;topicseen


Gracias.
He leído algunos mensajes, pero no tengo claro aún la teoría, o bueno quiero estar más seguro de haberla entendido:
Un dimmer lo que hace es dejar pasar un ancho de cada semiciclo, este ancho es el que variamos para darle mayor o menor intensidad a la bombilla; esto se puede gracias al detector de cruce por cero, cuando es detectado el cruce por cero del semiciclo positivo comienza los ms donde estará activado el triac; (estos ms son los que variamos) antes de que llegue le próximo cruce por cero, cuando llegue de nuevo estaremos en el semiciclo negativo y volvemos hacer la misma operación que con el semiciclo positivo y asi se repite una y otra vez.

Esto es correcto?  que concideraciones debo tener en cuenta a la hora de hacer el codigo? el triac juega un papel importante para que funcione bien, o cualquiera da igual? tambien sirve un SCR?

Muchas gracias, por la guía que me puedan dar.

Saludos

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Como funciona un dimmer?
« Respuesta #3 en: 08 de Octubre de 2008, 11:43:44 »
Hola.

En el dimmer se usa el llamado control de fase, el cual se fundamenta en el valor de voltaje RMS que se deja caer a la carga. Hay muuuchas consideraciones en funcion de la carga, la mas importante es si es altamente inductiva o si solo es resistiva.

Lo del detector de cruce por cero es para sincronizar la senal de disparo del triac, ya que de no hacerlo estariamos enviando pulsos de activacion si saber cuando!!! y no se tendria el control sobre el manejo de la potencia.

Elegir el triac si que es importante, y se hace en funcion de la potencia a manejar en la carga, otra cosa fundamental es saber que tan inductiva es la carga que se va a conectar al dimmer, ya que cargas inductivas generan transcientes de voltaje y corriente los cuales pueden ser daninos ( y se convierten en verdaderos dolores de cabeza ).

No se puede tener un control en todo el rango de tiempo que abarca la onda de AC, uno escoje un intervalo que va desde un 10% - 20% del inicio de la senal a un 75% - 80% del final de la misma. Intentar correr estos rangos involucran tener problemas en el control ( se mueve el pulso de disparo y se obtienen curvas erraticas en el control ). Para verificarlo siempre es bueno tener un osciloscopio a mano.

Saludos
El papel lo aguanta todo

Desconectado marvicdigital

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 311
Re: Como funciona un dimmer?
« Respuesta #4 en: 08 de Octubre de 2008, 12:09:24 »
Muchas gracias por tu buen texto, osea que mi teoría estaría bien si fuera lo ideal?..entonces entiendo que lo mejor es empezar entre un 10% y un 20% los intervalos hasta un 80%, me imagino que es debido a la tolerancia de los componentes..

Si estoy errado te agradecería enormemente una corrección.
Sobre los triacs pues te cuendo que  lo que voy a controlar no pasa de los 100W y es para unas bombillas de 15w.
Mil gracias

Saludos

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Como funciona un dimmer?
« Respuesta #5 en: 08 de Octubre de 2008, 12:57:08 »
Hola.

Ok.

Ahora debes definir si tu dimmer los vas a hacer digital o analogico.

Para hacerlo analogico, debes usar una red RC (hay muchos disenos en internet). El problema con este tipo de dimmer es que debes elegir muy bien los componentes y estas limitado a trabajar sobre un rango determinado sin poder elegir los limites minimo y maximo por separdo (ya que si cambias algun valor del componente te cambia el valor de disparo del valor minimo y al mismo tiempo el valor de disparo del valor maximo). Las ventajas: menos hardware.

Para hacerlo digital (que seria mi recomendacion), lo que necesitas es hacerte un buen detector de flanco y dedicarte a la programacion del microcontrolador, ya que sera justamente este el que se encarga de enviar el valor de disparo al triac. Obviamente en este caso tendras mucho mas control sobre el tiempo de disparo y podras elegir los valores que tu quieres con las escalas de cambio que tu quieras con ..... etc, etc (es la gran ventaja de hacerlo digital). Deventajas: mas hardware, debes usar optotriacs, un micro, una fuente.

Por la referencia del triac, te recomendaria el BT136 (yo lo he usado y me ha ido muy bien con el). Si es una bombilla la que vas a controlar puedes iniciar tu disparo desde los 256uS despues del cruce y puedes llegar hasta los 7.9mS antes del cruce, lo que te puede llegar a dar rendimientos de un poquito mas del 90% de la potencia.

Con respecto los intervalos, tiene que ver con muchas cosas, entre ellas los componentes, pero tambien esta que la frecuencia real de la red no siempre son 60Hz, cambia con el tiempo, ademas hay tiempos de respuesta (histeresis) diferentes en la activacion y desactivacion, y muchas cosas mas .... asi que es mejor darle un margen de error amplio para evitar inconvenientes.

Saludos
El papel lo aguanta todo

Desconectado marvicdigital

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 311
Re: Como funciona un dimmer?
« Respuesta #6 en: 08 de Octubre de 2008, 13:58:30 »
 :lol: :lol: :) muchas gracias, lo pienso hacer digital, voy a usar el PIC12F508 que es  lo que más tengo en mis cosas....no se si te moleste que te pida un último favor, en este hilo hago una pregunta de el código que estoy intentando comprender y poner a funcionar a 60Hz, viene original para 50hz, hice las modificaciones, pero no me funciona.....ojala me puedas dar una mano.

De nuevo muchas gracias creo que con esta información ya es mucho  lo que puedo hacer hoy en la noche,...bueno si mi hija me da tiempo  :g)

Saludos

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Como funciona un dimmer?
« Respuesta #7 en: 08 de Octubre de 2008, 14:09:28 »
Hola.

 :( :( Esta en ASM y yo programo en C, asi que la ayuda que puedo darte seria muy poca ( digamos nula  :D ), pero ya entrados en gastos, podriamos iniciar tu proyecto en C si te parece, ahi podria darte una mano.

Saludos
El papel lo aguanta todo

Desconectado marvicdigital

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 311
Re: Como funciona un dimmer?
« Respuesta #8 en: 08 de Octubre de 2008, 14:37:15 »
Hola.

 :( :( Esta en ASM y yo programo en C, asi que la ayuda que puedo darte seria muy poca ( digamos nula  :D ), pero ya entrados en gastos, podriamos iniciar tu proyecto en C si te parece, ahi podria darte una mano.

Saludos

De verdad muchas gracias por tu ayuda, y quisiera poder aceptar tu ofrecimiento pero lo que deseo es poder entender bien como funciona para hacerlo desde cero, si entendiera bien el C ten por seguro que empezaríamos de una.
Muchas gracias y si tengo alguna duda te  la consultaré, popr ahora me voy al PC para empezar a depurar el codigo.

Saludos

Desconectado DATAGENIUS

  • PIC10
  • *
  • Mensajes: 11
Re: Como funciona un dimmer?
« Respuesta #9 en: 12 de Octubre de 2008, 17:38:18 »
Hola marvicdigital, me gustaría saber si te interesa esta otra alternativa antes de ponerme a programar su funcionamiento... (al menos en parte o lo que te falte a ti)

Estamos al habla...  8)
"... y la obra de sus propias manos mis escogidos usarán a grado cabal"
ISA 65:22

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Como funciona un dimmer?
« Respuesta #10 en: 13 de Octubre de 2008, 00:35:57 »
Cuidado con el MOC3041 que tiene detección del cruce por 0 y no podrás enviar tensión a la lámpara en un punto del ciclo de la onda que no sea 0.

Desconectado DATAGENIUS

  • PIC10
  • *
  • Mensajes: 11
Re: Como funciona un dimmer?
« Respuesta #11 en: 13 de Octubre de 2008, 01:13:00 »
 :-/ Correcto nocturno, no fue puesto al azar. Agregué una ilustración al final de la guía respecto a la influencia del del Dutycicle del pulso se salida del puerto B en el "uso" del período de cada ciclo de la corriente alterna. Intencionalmente se utiliza el MOC para que todo el trabajo comience a partir del cruce por 0.

Saludos.  8)
"... y la obra de sus propias manos mis escogidos usarán a grado cabal"
ISA 65:22

Desconectado sansanoloko

  • PIC10
  • *
  • Mensajes: 48
Re: Como funciona un dimmer?
« Respuesta #12 en: 13 de Octubre de 2008, 02:18:16 »
Holas a todos!

La propuesta de datagenius es interesante, pero por lo que veo no funcionaría :(
La detección del cruce por cero podría funcionar, pero el control del triac se está asumiendo como un transistor, es decir por corte y saturación, por eso no va a funcionar.

Pero si analizamos bien como funciona el triac, podemos ver que a ese mismo circuito hay que cambiar el optoacoplador MOC3041 por un MOC3021 y corregir el programa.

Recordemos que el triac no funciona por corte y saturación, sino por enganche. Esto quiere decir que se dispara al recibir un pulso por el gate, y queda enganchado (conduciendo corriente entre M1 y M2) hasta que se desconecte del circuito, y eso ocurre cuando la tensión de la fuente cae a cero, es decir, en cada cruce por cero de la sinusoide.

Entonces, lo que debe hacer el pic es detectar el cruce por cero, y cuando lo detecta debe esperar un tiempo antes de disparar el triac, y repetir esto por cada semiciclo, ya sea positivo o negativo. De este modo la forma de onda en la carga es inversa a la estimada en el documento publicado, y concuerda con la forma de onda en la carga de un dimmer común y silvestre.

Espero sirva de algo mi aporte, y saludos a quienes nos leen.

Desconectado DATAGENIUS

  • PIC10
  • *
  • Mensajes: 11
Re: Como funciona un dimmer?
« Respuesta #13 en: 13 de Octubre de 2008, 03:12:55 »
 :mrgreen: mmm tienes razón san.... y nocturno... consideré mal el punto de partida del triac por el uso del MOC3041 en vez del 21 y por ende realicé los ajustes y modificaciones a la guía.. yo creo que esta es la versión 3.0   :lol:
« Última modificación: 13 de Octubre de 2008, 03:34:22 por DATAGENIUS »
"... y la obra de sus propias manos mis escogidos usarán a grado cabal"
ISA 65:22

Desconectado marvicdigital

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 311
Re: Como funciona un dimmer?
« Respuesta #14 en: 15 de Octubre de 2008, 07:53:30 »
Muchas gracias a todos por las ideas, experiencias y comentarios sobre este proyecto.
Bueno por fín el Autodimmer está funcionando, después de leer mucha documentación, leer las respuestas de este maravilloso foro hice el código en ASM, voy a dar una breve explicación para que todos puedan hacerlo más fácil en el lenguaje que mejor sepan.
 Lo primero que hay que determinar es el tiempo del periodo de la onda senosoidal, tanto para los 60Hz como para los 50Hz:

Para los 50Hz :
1/50 = 20ms

Para los 60Hz:
1/60 = 16.666 ms

Para el caso de los 60Hz podemos dejar el periodo en 16.6ms

Nuestro dimmer no debe superar este periodo y para eso debemos tener nuestro detector de cruce por cero, que es el que informa a nuestro microcontrolador cuando comienza el periodo y tambien en que semiciclo nos encontramos; para este detector use solo una resistencia de 1Mohm para los 115Vac (para los 220Vac recomiendo 5Mohms(, entre la entrada de AC y uno de los puertos que no sea el GP3; tal y como recomienda Microchip  en su documento AN521; no se preocupen o no tengan temor, he hecho pruebas desde el viernes dejando encendido el autodimmer por más de 13 horas continuas y no he tenido ningún problema  :mrgreen:  ...
Bueno, luego que nuestro detector nos informe de que ha pasado por cero y que comienza el semiciclo positivo,llamamos a una rutina de tiempo que no debe superar los 8.3ms para los 60HZ y de 10ms para 50Hz; este tiempo es el que determina el brillo de nuestra bombilla; luego de que pase el tiempo encendemos nuestra lámpara o activamos el puerto que controla el triac. En este punto tuve varios altercados con el triac, las primeras pruebas hechas daban malos resultados, no encendía la bombilla, o si lo hacía era al 100% de su brillo en fín...luego investigue un poco y mirando datasheets encontré que la mejor opción era el BT137 que tiene un gate muy sensible y responde en 1us y la corriente que puede controlar era más que suficiente para una bombilla de 100W. Bueno luego de que pase el tiempo activamos el puerto por 1us osea una instrucción:

BSF GPIO,4
BCF GPIO,4

Esto hizo encender nuestra bombilla por un microsegundo en el semiccilo positivo luego de que pasara el tiempo que nos dará la intensidad de nuestra bombilla; ahora debemos hacer lo mismo para el semicilo negativo con el mismo tiempo, quedando asi en nuestro código:

Código: [Seleccionar]
btfss GPIO,Sync   ;Detecta cruce por cero antes de comenzar el semiciclo positivo
goto $-1
call tiempo       ;llamamos el tiempo que no sobre pase los 8.3ms(60Hz) o 10ms(50Hz)
bsf GPIO,Out    ;encendemos el triac
bcf GPIO,Out      ;después de 1us apagamos
btfsc GPIO,Sync ;De nuevo esperamos el cruce por cero y el semiciclo negativo
goto $-1
call tiempo    ;llamamos el tiempo que no sobre pase los 8.3ms(60Hz) o 10ms(50Hz)
bsf GPIO,Out     ;encendemos el triac
bcf GPIO,Out     ;después de 1us apagamos

Esta es la base del funcionamiento de un dimmer microcontrolado, para que se vuelva autoDimmer debemos crear una rutina que haga incrementar y disminuir el tiempo y para que sea más prolongado el tiempo le sumamos otra rutina que haga repetir más de una vez el tiempo, osea si en ese momento el tiempo es de 3ms hacer que lo repita unas 10 veces esto nos servirá para el pesebre o belen simule el cambio de dia a la noche. 
Tambien pueden servir otro tipo de triac por ejemplo el Q4015, el tiempo para este debe ser superior a los 4us osea hacer 4 veces el BSF GPIO,Out antes de apagarlo.
Otro detalle es que use una resistencia y un transistor para controlar el triac, debo suponer que para usar un optoacoplador debemos tener encuanta el tiempo que necesita este para funcionar.

Espero que esto sea de mucha ayuda y de guía para los novatos como yo y que si existe otra forma de hacerlo pues sería bueno conocerla.

Dejo un video en este caso controlo una manguera de luces de 2 canales: 


Saludos


 

anything