Autor Tema: Dimmer con pic  (Leído 63875 veces)

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

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Dimmer con pic
« en: 24 de Enero de 2010, 21:16:11 »
hola.abro este tema para publicar mis experencias con el control de iluminacion con triac y microcontrolador.

llevo mas de un mes intentando comprender el funcionamiento de este tipo de circuitos.y despues de muchas pruevas y configuraciones.y con la ayuda de nocturno que me ha asesorado en el tema.he podido realizar un circuito que controla la iluminacion de lamparas de filamento y fluorescentes de bajo consumo.

voy a explicar por encima como funcina este circuito:

el control de brillo de las lamparas de filamento se realiza al modificar el voltage de entrada a esta.o quizas seria mejor decir por el control de los semiciclos de la corriente alterna de la red electrica.

para este control utilizaremos un tirystor o un triac.la diferencia radica en que con el tirystor,solo podemos controlar una de las partes positiva o negativa de los semiciclos de la corriente electrica.
y con el triac podemos controlar las dos.

en el circuito que voy a mostrar utilizo un triac.ya que podremos aplicar el control de la corriente para los dos semiciclos.y de esta forma evitar una sensacion de parpadeo de la bombilla.

el funcinamiento del triac se basa en la posibilidad de permitir el paso de la corriente en un sentido o en otro de los pin T1 y T2
al aplicar un impulso de corriente de duracion determinada por las caracteristicas del componente que vallamos a usar,en el pin G (gate).

para poder activar el triac,lo primero es tener el circuito montado y alimentado con la carga en serie.la polaridad es indiferente para su activacion.una vez alimentado el circuito solo hay que aplicar la corriente en el pin gate.y el triac se activara en el sentido de la corriente que hayamos aplicado.
para poder desactivarlo,hay varias formas si no estoy equivocado.una es la desconexion de la alimentacion del circuito.y a la posterior conexion.el triac habra pasado a estado de alta impedancia.
tambien si aplicamos una tension de corriente inversa al pin gate cuando este este activo.(aunque no estoy seguro de esto)
y la otra la que vamos a usar en este circuito trabajando con corriente alterna.
la desconexion por cruce por cero.esto es el punto donde la corriente alterna pasa de una polaridad a la otra.

el funcionamiento del circuito se basa en la aplicacion de un impulso de corriente en el pin gate del triac en cada semiciclo de la corriente alterna.tanto de los semiciclos positivos como negativos.

la obtencion de la regulacion se basa en la activacion del triac en el momento preciso de cada semiciclo positivo y negativo.
asi que cuanto antes activemos el triac despues de cada cruce por cero,mayor tiempo estara el triac en conduccion y mayor sera la intensidad de luz de la lampara.
y cuanto mas tarde activemos el triac,menor intensidad de luz tendremos.
esta imagen seria un ejemplo:



aqui pongo la imagen del circuito del trimer:




el funcinamiento de este circuito se basa en la deteccion del punto donde el voltage de la corriente alterna pasa por 0 voltios.
y la posterior activacion del triac en un punto intermedio del semiciclo positivo y negativo de la corriente alterna antes del siguiente cruce por cero.

la deteccion de la señal de cruce por cero se realiza por el pin GP4 del pic mediante una resistencia de 1 mega conectada a la linea contraria a la de masa de 220v .
como hay dos tipos de cruces por cero.cuando la coincidencia se produce al pasar de + a - y cuando pasa de - a +
dentro del programa del pic hay que identificar estas dos situaciones.
como este pic no tiene interrupciones.la identificacion la realizaremos con unas lineas extras.
pero si tubiera interrupciones.la identificacion la realizariamos por el pin INT0 modificando el bit de INTEDG para que el disparo de
la interrupcion se realizara por flanco de subido o de bajada.

en este circuito la activacion del triac se realiza al poner a 1 el pin GP4.la conexion se realiza intercalando una resistencia de 10 homios.
aunque este valor varia segun el triac que vallamos a usar.

para la activacion del triac solo hace falta un impulso de corriente en su puerta.asi que entre pulso y pulso tenemos un tiempo bastante largo para gestionar otras operaciones del pic.como la lectura del boton de encendido/regulacion de la lampara.

este circuito es una forma basica del control de iluminacion midiante un microcontrolador 12F508.
dado que este pic no  maneja interrupciones,el programa en asm.es mas largo que si tubiera interrupciones.
y solo es un programa para el estudio de este sistema.
ya que este circuito es propenso al fallo por interferencias.es decir que si se produciera una interferencia en la alimentacion,la luz se apagaria.

proximamente realizare otro programa para el mismo circuito con algunas protecciones por software contra interferencias.
aunque es muy posible que utilize otro pic.dado que este no posee eeprom de datos para salvaguardar datos despues de un fallo
por desbordamiento del wachtdog.

y aqui pongo el software:

Código: [Seleccionar]
;*************************************************www.ingeniopic.com*******************************************************
; PROGRAMA : dimmer_12F508_1v1
; Funcion :  regulador de iluminacion para el hogar  
;          
;  
;  Revision : 1.1        26/10/2009            Programa para : PIC12F508
; CPU Clock : 4 MHz                     Reloj instruccion :
;       WDT : Deshabilitado                  Tipo de reloj : IntRC
; Code Prot : OFF          
;*****************************************************www.ingeniopic.com***************************************************
;FUNCIONAMIENTO DEL CIRCUITO:
;Para encender o apagar la luz se realizara una pulsacion breve sobre el pulsador.
;Si queremos entrar en el modo de regulacion,realizaremos una pulsacion larga (siempre que la luz este encendida)



      LIST   P=12F508   ;Se indica el modo de procesador
      
      RADIX   HEX      ;Sistema de numeracion hexadecimal

      INCLUDE   "P12F508.inc"  
      
               ;registros internos
      __CONFIG   _IntRC_OSC & _CP_OFF & _WDT_OFF & _MCLRE_OFF




CBLOCK    0x08 ;comienza el bloque de ram en la direccion 0x08
CONTADOR ;registro para el control de la pausa al activar el pulsador para entrar en modo de regulacion
REGULADOR ;registro que contiene el valor de la regulacion de iluminacion de la lampara
TIEMPO ;registro de temporizacion para la excitacion del tiristor
FLAGS ;registro contador de actuaciones sobre el pulsador
UPDOWN ;registro que identifica la ultima operacion de subida o bajada en el modo de regulacion de iluminacion
FLANCO ;registro contador del flanco de deteccion de cruce
REG_TEMPO ;registro para la temporizacion de la regulacion de la luz(para que al pulsar el boton tengamos mas precision a la hora de regular la luz)
ENDC ;fin del bloque de ram

;<<<<<<---------------------- VECTOR DE RESET ------------------------>>>>>>>
         ORG   0x00       ;Inicio en el Vector de Reset
     goto   INICIO       ;ir a la primera instruccion del programa

;<<<<<<----------------- INICIO PROGRAMA PRINCIPAL ------------------->>>>>>>
INICIO   movlw b'10000100' ;configura el divisor de TMR0 division 1:32, pull up enable,wake up disable.
option

movlw b'00101111' ;PG0 salida excitacion triac,PG1 tx,PG2 rx,PG3 entrada pulsador,PG4 entrada deteccion cruce po cero
tris GPIO ;configura le puerto
clrf GPIO ;borra todas las salidas


movlw D'5' ;valor de regulacion maxima(cuanto menor sea el numero,mayor sera la iluminacion)este valor no puede ser inferior a 5.para evitar que se junten los cruces por 0
movwf REGULADOR ;borra registro de regulacion
clrf UPDOWN ;borra registro de identificacion de incremento o decremento de iluminacion.
movfw GPIO ;carga en w el contenido de GPIO


clrf TIEMPO
clrf FLAGS
clrf UPDOWN
clrf FLANCO

;<<<<<<<------------------------------------------------PROGRAMA PRINCIPAL---------------------------------------->>>>>>>>>>>>>>
PRINCIPAL goto DIMMER ;subprograma controlador dimmer


;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<SUBPROGRAMA LECTURA INTERRUPTOR MANDO LUZ>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

BOTON clrf CONTADOR ;borra el contador de espera
espera btfsc GPIO,3 ;comprueva si el pin GPIO3 esta a 0(si el boton no esta pulsado)-
retlw 0x00 ;retorna

esperalo clrf TMR0 ;borra TMR0
espera_on movlw d'240' ;valor de temporizacion
subwf TMR0,W
btfss STATUS,C ;comparalo con TMR0 y si es menor sigue comprovando
goto espera_on
incf CONTADOR,F ;incrementa registro CONTADOR

movlw d'50' ;valor que determina el tiempo maximo de pulsado de interruptor para modo escaleras
subwf CONTADOR,W ;
btfsc STATUS,C ;si el valor es igual o superior,
goto REGULACION ;salta a subprograma de regulacion de luz
btfss GPIO,3 ;comprueva si el interruptor esta pulsado
goto esperalo ;si es asi,sigue temporizando
incf FLAGS,F ;en caso contrario incrementa FLAGS para on/off de la lampara
retlw 0X00




;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<SUBPROGRAMA PARA AJUSTAR REGULACION DE LUZ>>>>>>>>>>>>>>>>>>>>>>>>>>>


REGULACION btfss FLAGS,0 ;comprueva que la entrada en el modo de regulacion se realiza con la lampara encendida
retlw 0X00 ;en caso contrario no entrar en este modo de funcionamiento
incf UPDOWN,F ;registro para el control del aumento/descenso de iluminacion

REGU_2 btfsc GPIO,3 ;comprueva si el interruptor esta pulsado
retlw 0X00 ;si no es asi retorna

;LAS SIGUIENTES LINEAS SON PARA RELENTIZAR LA REGULACION DE LA LUZ
incf REG_TEMPO,F ;incrementa registro REG_TEMPO
btfss REG_TEMPO,2 ;comprueva el bit 2 de REG_TEMPO
goto SALIDA ;si esta a 0 salir del programa de regulacion
clrf REG_TEMPO ;si es 1 borra el registro REG_TEMPO y continua con el programa



btfsc UPDOWN,0 ;si el bit 0 de UPDOWN es 1 (si la luz estaba subiendo de intensidad la ultima vez que la regulamos)salta
goto incre ;goto incre,(subprograma para el aumento de iluminacion)(si la ultima vez que regulamos estabamos decrementandola)


decf REGULADOR,F ;en caso contrario decrementa REGULADOR(disminulle intensidad de lampara)
movlw 0x05 ;valor maximo de iluminacion
subwf REGULADOR,W
btfsc STATUS,C ;si REGULADOR es menor del valor anterior salta
goto SALIDA ;en caso contrario saca valor de iluminacion
movlw 0x05 ;carga el valor 0x05 de iluminacion(valor maximo de iluminacion)
movwf REGULADOR ;en REGULADOR
goto SALIDA

incre
incf REGULADOR,F ;incrementa REGULADOR
movlw d'116' ;valor de regulacion minima.tope 116(menor iluminacion,se produce parpadeo en las lamparas de bajo consumo)
subwf REGULADOR,W
btfsc STATUS,C ;si REGULADOR se pasa del valor que contiene w
decf REGULADOR,F ;decrementa REGULADOR
goto SALIDA

;AQUI SE DETECTAN LOS FLANCOS DE SUBIDA Y BAJADA DEL DETECTOR DE CRUCE.
SALIDA incf FLANCO,F ;incrementa registro contador de flancos
btfsc FLANCO,0 ;si es par detecta primero el flanco de subida
goto $+6 ;si es impar detecta primero el flanco de bajada

btfss GPIO,5 ;espera a que se produzca la subida del pulso de cruze por 0
goto $-1
btfsc GPIO,5 ;espera a que se produzca la bajada del pulso de cruze por 0
goto $-1
goto $+5
btfsc GPIO,5 ;espera a que se produzca la bajada del pulso de cruze por 0
goto $-1
btfss GPIO,5 ;espera a que se produzca la subida del pulso de cruze por 0
goto $-1

bcf GPIO,4 ;desactivar triac
movfw REGULADOR ;carga en W el valor de REGULADOR (tiempo activacion de fase de semiciclo)
movwf TIEMPO ;mete el valor en TIEMPO
call FINE ;temporizacion fase de encendido de lampara
bsf GPIO,4 ;activar triac
FILL   (nop),6 ;serie de 6 nop para darle tiempo al triac a excitarse.
bcf GPIO,4 ;desactiva el triac
goto REGU_2



;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<DETECTOR CRUZE CERO>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
DIMMER clrf CONTADOR
btfss FLAGS,0 ;si el bit 0 de FLAGS esta a 0
goto APAGA ;apaga la luz


;AQUI SE DETECTAN LOS FLANCOS DE SUBIDA Y BAJADA DEL DETECTOR DE CRUCE.
incf FLANCO,F ;incrementa registro contador de flancos
btfsc FLANCO,0 ;si es par detecta primero el flanco de subida
goto $+6 ;si es impar detecta primero el flanco de bajada

btfss GPIO,5 ;espera a que se produzca la subida del pulso de cruze por 0
goto $-1
btfsc GPIO,5 ;espera a que se produzca la bajada del pulso de cruze por 0
goto $-1
goto $+5
btfsc GPIO,5 ;espera a que se produzca la bajada del pulso de cruze por 0
goto $-1
btfss GPIO,5 ;espera a que se produzca la subida del pulso de cruze por 0
goto $-1

bcf GPIO,4 ;desactivar triac
movfw REGULADOR ;carga en W el valor de REGULADOR (tiempo activacion de fase de semiciclo)
movwf TIEMPO ;mete el valor en TIEMPO
call FINE ;temporizacion fase de encendido de lampara
bsf GPIO,4 ;activar triac

FILL   (nop),6 ;serie de 6 nop para darle tiempo al triac a excitarse.
bcf GPIO,4
call BOTON ;subprograma de lectura de estado de interruptor de pared
bcf GPIO,0
goto PRINCIPAL ;principio de programa



APAGA bcf GPIO,4 ;apaga la luz
call BOTON
goto PRINCIPAL ;principio de programa



;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<SUBPROGRAMA DE RETARDO DE SEMICICLO>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

FINE clrf TMR0 ;borra TMR0
retraso2 movfw TIEMPO ;carga en w el contenido de TIEMPO(retraso para la excitacion del tiristor)
subwf TMR0,W ;comprueva si TMR0 es mayor que TIEMPO
btfss STATUS,C ;si es mayor salta
goto retraso2 ;en caso contrario sigue comprovando
FINE2 clrf TMR0 ;borra TMR0
retraso3 movfw TIEMPO ;carga en w el contenido de TMR0
subwf TMR0,W ;carga en w el contenido de TIEMPO(retraso para la excitacion del tiristor)
btfss STATUS,C ;comprueva si TMR0 es mayor que TIEMPO
goto retraso3 ;en caso contrario sigue comprovando
retlw 0x00 ;retorna

end ;fin
« Última modificación: 25 de Enero de 2010, 21:49:49 por un Moderador, Razón: he corregido Dimmer en lugar de trimmer »
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado zeusjorg

  • PIC10
  • *
  • Mensajes: 36
Re: trimmer con pic
« Respuesta #1 en: 25 de Enero de 2010, 17:57:51 »
Hola

Buen proyecto. y bien explicado.
Aunque siempre surgen dudas para quien lo mira.
Ya que no e leido todo lo que habras leido para realizarlo.

Yo quiero realizar algo parecido pero para regular la velocidad de extractores de aire.
De poca potencia ( no llega a 100W/ 220V)
y estava entre un proyecto como el tuyo o un regulador de frecuencia que no se exactamente como funciona.
porque no encuntro mucha informacion.
Lo que no se si con el tuyo funcionaria o seria estable la velocidad.

Lo que no acabo de entender es lo del cruce por cero. Como lo detecta exactamente.

un saludo

PD: Muy buen aporte y suerte con la WEB que tambien esta muy bien

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
Re: trimmer con pic
« Respuesta #2 en: 25 de Enero de 2010, 19:42:29 »
Veo que ya lo conseguiste. Enhorabuena, Groundman.

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: trimmer con pic
« Respuesta #3 en: 25 de Enero de 2010, 20:26:27 »
hola zeusjorg.como bien sabras la corriente de la red es una onda sinusoidal de 220v eficaces de 50 Hz en europa 60Hz en america.mas o menos.

eso significa que hay un determinado tiempo donde el voltage es de 0v. asi que si tenemos 50 ciclos por segundo,esta coincidencia se nos va a dar 100 veces por segundo.ya ye tenemos dos cruces por cero por cada onda completa.la diferencia de estos cruces es que uno se realiza cuando la tension cambia del semiciclo positivo al negativo.y el otro cuando pasa del semiciclo negativo al positivo.

podiendo detectar estas dos coincidencias,tendremos el sincronismo de los dos semiciclos para que el microcontrolador pueda trabajar con el tiempo entre cruce y cruce.
para detectarlo usamos un pin del pic configurado como entrada.con una resistencia de 1mega conectada al conductor de 220v 50Hz o 60Hz segun el pais

lo curioso aqui es que si el pic funciona a 5v.como es que no se quema al aplicarle 220v.
pues no lo se.no he leido la explicacion.

pero a mi entender lo que ocurre es que la arquitectura interna del pic,hace que las entradas se comporten como lo que hace un diodo zener.
de esta forma al superar el voltage de 5v,todo el voltage restante 215v recaen en la resistencia.
y como esta es de un valor elevado,la intensidad es tan pequeña que la resistencia no se ve afectada por la potencia que consume.

si miraramos con un osciloscopio este pin,veriamos una señal de onda cuadrada de 5v.que dura todo el semiciclo positivo desde el cruce por cero ascedente.
y la bajada a 0v.en el cruce por cero descedente  durante la duracion del mismo.

asi que todo valor que iguale o supere los 5v el microcontrolador lo considerara como estado logico 1.
y todo valor que no supere los 5v incluido -220v el microcontrolador lo considerara como estado logico 0.

ya para saber que cruce por cero se ha realizado en determinado momento,solo tenemos que tener en cuenta si el valor a pasado de (1 a 0 ) o de (0 a 1)

en mi programa las lineas para esta cuetion son estas:

btfsc   FLANCO,0      ;si es par detecta primero el flanco de subida
goto   $+6         ;si es impar detecta primero el flanco de bajada
      
btfss   GPIO,5         ;espera a que se produzca la subida del pulso de cruze por 0
goto   $-1
btfsc   GPIO,5         ;espera a que se produzca la bajada del pulso de cruze por 0
goto   $-1
goto   $+5
btfsc   GPIO,5         ;espera a que se produzca la bajada del pulso de cruze por 0
goto   $-1
btfss   GPIO,5         ;espera a que se produzca la subida del pulso de cruze por 0
goto   $-1


aunque lo mejor es utilizar las interrupciones del pic.aplicando esta señal por el pin INT0.y gestionando en el pic la interrupcion.  realizandola  por flanco ascedente y despues por flanco descedente.y asi consecutivamente.

preguntas que si se podria controlar un motor con este sistema.
pues si se puede.pero todo depende de que quieres hacer con el motor.si es un giro continuo de alta velocidad,si es lento pero queremos que tenga fuerza.o queremos invertir el giro.
estas funciones puede que no basten con limitar la amplitud de voltage de los semiciclos.y quizas tengas que aplicar el semiciclo sin recortarlo.tanto positivo como negativo.y que lo que tengas que hacer es eliminar semiciclos completos secuenciales.es decir quitar un semiciclo cada dos semiciclos de la corriente alterna.o tres o cuatro,incluso trenes de impulsos de cuatro o cinco etc.
no se si me explico.

en todo caso la deteccion ya te la he explicado como se hace.todo lo demas tienes que hacerlo con codigo.es como una configuracion a la carta.
cada uno moldea la señal alterna a su combenecia o necesidad.
quiero decir que como si tubieramos un piano.tenemos la herramienta y los conocimientos necesarios para su uso.la imaginacion es cosa tuya.

ya que como no he tenido la necesidad de controlar un motor.pues no se exactamente como se comporta ante la modificacion de la señal que lo controla.
se que segun sea la señal,pues tendremos mas o menos velocidad o par. par=(potencia a revoluciones)

espero haberte aclarado tus dudas. saludos.

PD: la web. :lol: que verguenza de pagina web.es que soy un poco malillo. :D







Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: trimmer con pic
« Respuesta #4 en: 25 de Enero de 2010, 20:39:23 »
Veo que ya lo conseguiste. Enhorabuena, Groundman.

gracias. cuando termine con los problemas de los reinicios por interferencias que te comente.voy a empezar ya con los 18F

en particular con el 18F2550.tengo una cuenta pendiente con los usb.
voy a tener que leer mucho para comprender este protocolo.eso si lo hare todo en asm.creo que es la unica forma de profundizar al maximo en este tema.
ademas me encanta desmenuzar los registros internos de los pic.

ah por cierto.podrias cambiar el nombre del asunto de este tema.queria haber puesto "dimmer con pic". si no,es posible que en los buscadores se tarde mas en encontrar esta informacion.

saludos.
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: trimmer con pic
« Respuesta #5 en: 25 de Enero de 2010, 21:40:59 »
lo curioso aqui es que si el pic funciona a 5v.como es que no se quema al aplicarle 220v.
pues no lo se.no he leido la explicacion.
pero a mi entender lo que ocurre es que la arquitectura interna del pic,hace que las entradas se comporten como lo que hace un diodo zener.
de esta forma al superar el voltage de 5v,todo el voltage restante 215v recaen en la resistencia.
y como esta es de un valor elevado,la intensidad es tan pequeña que la resistencia no se ve afectada por la potencia que consume.

Hola, para que te des una idea, los destornilladores "buscapolo", esos que tienen una lamparita de neon, para encontrar el polo"vivo", poseen una resistencia de 1 Megohm, por lo que la intensidad que circula, es bajisima  I=V/R

Ademas, el pic, tiene en sus entradas, un par de diodos, por lo que la tension de entrada, queda limitada a los 5V de alimentacion... si hay un exedente, lo absorberia la fuente de alimentacion...

Con respecto a "cortar" un tiristor en conducción , se podría generando un pulso opuesto en la alimentacion, esto se consigue con bobinas y otro tiristor...
Salvo que sea un modelo GTO, no es posible cortar cuando esta en conduccion empleando el gate...    :mrgreen:

No se si en mi PC, pero el programa que colocaste, lo veo con todos cuadritos ....  :shock:

Felicitaciones por la investigacion

Norberto
« Última modificación: 25 de Enero de 2010, 21:48:38 por todopic »
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: Dimmer con pic
« Respuesta #6 en: 26 de Enero de 2010, 11:21:53 »
gracias todopic.cuando estudie los triacs,algo asi entendi de que habia que aplicar una corriente inversa en el gate a la que previamente se habia activado.
lo que no sabia es lo de los GTO.
lo que si me he dado cuenta en mi circuito.es que segun el modelo de triac.el circuito puede comportarse de forma diferente.segun la sensibilidad del gate.
pero bueno.todo se arregla con la resistencia adecuada.

no entiendo lo que quieres decir con los cuadritos.en mi pc se ve bien.
si quieres te saco el asm.de la ventana de codigo.a lo mejor es por eso.

saludos.
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: Dimmer con pic
« Respuesta #7 en: 27 de Enero de 2010, 11:10:25 »
bueno.como dige antes el programa anterior no esta preparado para las interferencias.ya que cuando sucede esta,el pic se reinicia.
he provado ha realizar la regulacion sin usar el TMR0.para usar el peescaler para el wachdog.pero  he caido en la cuenta de que no me sirviria para nada.
ya que para esta proteccion, deberia salvaguardar el valor del registro de luminosidad.en la eeprom de datos.y como el 12F508 no tiene tal memoria.
pues empezare otro programa para un pic que si disponga de esta.

tengo en mente el PIC12F675 que es el mas barato que he encontrado con eeprom de datos interna.tiene 2 timers y ademas entradas analogicas.
creo que vendra muy bien para el proyecto.
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado dagger

  • PIC12
  • **
  • Mensajes: 68
Re: Dimmer con pic
« Respuesta #8 en: 04 de Febrero de 2010, 00:19:16 »
A ver que les parece este...el famoso V1..tanto para 220 como 110 50 o 60 hz

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: Dimmer con pic
« Respuesta #9 en: 09 de Febrero de 2010, 20:34:41 »
hola dagger.agradezco tu aportacion.el esquema es practico para el aprendizaje.pero en los hex no creo que se pueda sacar algo en claro.lastima que no sean asm.

ahora estoy realizando el dimmer con un 12F675.lo tengo vastante avanzado.
pero me ha surgido un problema que nunca me ha pasado.

en el programa he integrado la opcion de guardar el valor de regulacion y el estado de la lampara encendida/apagada al faltarle la alimentacion.
pero se ha dado el caso,y no se porque.que al quitar la alimentacion el pic guarda el valor de regulacion correctamente.pero el del estado de la luz cambia.

parece que al ir agotandose la corriente.el pic lee como si se hubiera pulsado el interruptor.y graba el incremento que provoca el cambio de estado del pin.
como podria evitar esto?  hay algun tipo de proteccion?
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: Dimmer con pic
« Respuesta #10 en: 09 de Febrero de 2010, 20:57:00 »
valla.parece que lo he arreglado activando   _PWRTE_ON  :oops:
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado jim_17

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 309
    • Blog personal
Re: Dimmer con pic
« Respuesta #11 en: 09 de Febrero de 2010, 23:07:37 »
Groundman Hay una cosa que no entiendo: Porqué pones la resistencia de 1Mohm en el común(vss) y no en la fase?
A mi entender, si pones la resistencia de 1Mohm en el común i el gnd del pic tambien es el común en teoría, en la entrada del pic no habría variación de voltaje. Ya que los latch del pic están referenciados a gnd y detectarían siempre 0V no ?

Me gustaría saber esa cuestión que me tiene intrigado y con dudas :D, gracias.


Saludos.
Share the world !

Blog's

http://www.area0x33.com

Desconectado groundman

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1870
    • www.ingeniopic.com
Re: Dimmer con pic
« Respuesta #12 en: 10 de Febrero de 2010, 12:03:40 »
pues es muy sencillo.lo que pasa es que me he equivocado en la conexion.  :D habria que hacerla en el otro polo de la corriente.
Montando mi primera impresora 3D (Raprep Prusa i3)

Desconectado jim_17

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 309
    • Blog personal
Re: Dimmer con pic
« Respuesta #13 en: 10 de Febrero de 2010, 16:43:56 »
Okey, duda existencial resuelta gracias. :D
Share the world !

Blog's

http://www.area0x33.com

Desconectado fixup

  • PIC10
  • *
  • Mensajes: 6
Re: Dimmer con pic
« Respuesta #14 en: 10 de Febrero de 2010, 18:17:38 »
Hola a todos,
 He leido todos los post del tema "Dimmer". He buscado infinidad de paginas por inet pero no encuentro lo que busco que es lo sgte:
Dimmer con 3 cables
   1º Fase
   2º Boton el cual el otro cable va a fase
   3º Cable que baja de la bombilla.           
Al parecer la circuiteria se alimenta atraves del filamento de la bombilla y aunque no se encienda circula suficiente corriente para alimentar el
circuito.
Ventajas de tener 3 cables:
   En una instalacion existente no hay que tirar mas cables por los conductos.
   Seria quitar interruptor y poner Dimmer.

Un saludo todos. Poco a poco me estoy poniendo al dia (me refiero con la lectura de los post y que no son pocos).
Ademas no he visto aun foro igual. Enhorabuena a tod@s.
 


 

anything