TODOPIC

Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: Nocturno en 14 de Febrero de 2005, 10:01:00

Título: Dimmer con mando
Publicado por: Nocturno en 14 de Febrero de 2005, 10:01:00
Hola colegas.

He montado un dimmer para regular la luz de mi salón con el mando de la tele.
El caso es que ya he conseguido que el circuito funcione, y lo hace "casi" bien.
Digo "casi", porque cuando menos te lo esperas la luz hace un flash muy desagradable que, como podéis comprender, rompe cualquier ambiente cálido que se haya podido crear...desquiciado

Sospecho que el responsable de estos destellos es el detector de cruce por 0, pero ya es el segundo que monto y sigo igual. Os adjunto el esquema por si podéis echarle un vistazo:
http://miarroba.com/foros/ver.php?foroid=348538&temaid=2876424

Muchas gracias
Título: RE: Dimmer con mando
Publicado por: roc364 en 14 de Febrero de 2005, 10:58:00
Hola nocturno!

Encontre este circuitito que tiene un par mas de componentes en la deteccion que el tuyo. Por ahi te sirva.
saludos!


Título: RE: Dimmer con mando
Publicado por: Ignite en 15 de Febrero de 2005, 14:16:00
Yo casi que probaría el circuito que comenta roc364, ya que en los detectores que he visto disponen de más componentes y supongo que eso afectará bastante. Porque por o que comentas parece que se desincroniza la detección por 0 con cuando activas el TRIAC.
Otra cosa, no sería mejor poner por seguridad algun fusible? Más que nada para que no se ponga a arder la lámpara y rompa el ambiente Giño
Título: RE: Dimmer con mando
Publicado por: Nocturno en 15 de Febrero de 2005, 23:17:00
Lo voy a probar, pero no lo he hecho aún porque no sé si me cargaré alguna cosaEnfurruñado

Según parece, ese esquema está diseñado para detectar el cruce por 0 en señales pequeñas, y la señal que yo tengo es alterna y va de -6 a +6V.

Ya os contaré...
Título: RE: Dimmer con mando
Publicado por: J1M en 16 de Febrero de 2005, 08:25:00
nocturno tu eskema es valido, lo unico esq necesitas un red RC en paralelo con el triac, una R de 39Ohm y un condensador de 10nF de 400V, esta red tiene un nombre, a ver si encuentro el nombre, q un profesor me lo ha explicado esta mañana para algo parecido q estoy intentando hacer. Se suele usar por dos motivos, como protección anes cargas inductivas, y para evitar el disparo no controlado, q creo es lo q te está sucediendo.
Por otro lado, no veo el circuito que dice roc364 :S

Salu2!
Título: RE: Dimmer con mando
Publicado por: J1M en 16 de Febrero de 2005, 08:59:00
mira a esto es lo q me refería:
http://www.monografias.com/trabajos14/triac/Image2834.gif
http://www.monografias.com/trabajos14/triac/triac.shtml

Salu2!


pd: mira este datasheet, es del componente que voy a usar:
http://www.web-ee.com/Electronic-Projects/data/moc3041.pdf

Creo q es lo q andas buscando Giño
Título: RE: Dimmer con mando
Publicado por: Ignite en 16 de Febrero de 2005, 10:53:00
J1M  te refieres a la resistencia y condensador que se le pone en paralelo al TRIAC y a la carga? Es que esa red es para el caso de usar cargas inductivas, ya que su misión es filtrar y hacer que el TRIAC no se pueda quemar.
Es que a mi me da la sensación que esto te pasa cuando quieres un nivel bajo de luz, con lo cual el TRIAC se dispara bastante tarde. Y por cualquier motivo parece que cuando se dispara ya esta tan al final del semiciclo que el TRIAC se vuelve a poner en Off. La verdad es que no se.
Título: RE: Dimmer con mando
Publicado por: J1M en 16 de Febrero de 2005, 11:05:00
Si ignite me refiero a esa red, creo q se llama red snubber o algo similar, tienes razón que es para cargas inductivas, aunq supongo q una resisencia y un condensador no salen nada caros y ademas d la proteccion q estamos dandole al triac tambien evitaremos q se cebe cuando no debe.

Voy a ver si esta tarde compro un MOC 3041 y monto el circuito de ejemplo, junto con un TIC226, si sobrevivo os cuento q tal va :P
Título: RE: Dimmer con mando
Publicado por: Ignite en 16 de Febrero de 2005, 11:18:00
Buscando links he enconrtado un par de dimmers que a lo mejor te interesan, más que nada para ver como hacen la detección del paso por cero.

Link de un tio ke se parece al Leonardo Dantes
otro link

En este segundo me parece que usa como detector un optocoplador o algo así. Si no recurdo mal, me parece que en un application note de microchip, usa una resistencia de 20 megas conectada a la red  y al pic. Esta forma no me gusta nada pq se podría quemar fácilmente el pic, pero se me ocurre que ya que tienes el TRAFO pues puedes hacer lo mismo pero con menos tensión.
Lo puñetero es que si no se dispone de un osciloscopio no se puede saber muy bien por donde cae el problema.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 16 de Febrero de 2005, 14:15:00
Muchas gracias por vuestra ayuda.
Lo primero que probaré será la red RC que me habéis comentado y, si no tengo éxito, probaré con el circuito de Leonardo Dantés. Por cierto, los links son fantásticos.
Gracias de nuevo; ya os diré qué tal ha ido.
Título: RE: Dimmer con mando
Publicado por: J1M en 16 de Febrero de 2005, 14:27:00
Bueno no he muerto y parece que esto funciona :p simplemente es un relé electronico lo q trataba de hacer, bueno hoy he aprendido algo nuevo ya puedo irme a la cama agusto Giño

Salu2!
Título: RE: Dimmer con mando
Publicado por: Nocturno en 18 de Febrero de 2005, 01:00:00
Pues el problema no era la red RC, sigue fallando Enfurruñado

Probaré con ese sistema de detección del cruce por 0 basado en un Zener...
Título: RE: Dimmer con mando
Publicado por: lovando en 18 de Febrero de 2005, 12:21:00
Hola muchachos

Un buen proyecto de dimmer microcontrolado es el creado por ELEKTOR 1/2001. Controlado por un 16F84

Lo pueden descargar desde www.picmicroworld.net/foro


La red RC se conoce como: Snubber, y esta pensada en proteger al TRIAC de las cargas inductivas. valores tipicos: R=40 , C= 1nF

El triac-driver puede ser reemplazado por un MOC3041, por ejemplo.
La fuente DC no esta aislada electricamente de la red AC.



Saludos


PD: para bajar en necesario registrarse
Título: RE: Dimmer con mando
Publicado por: Ignite en 19 de Febrero de 2005, 05:14:00
He entrado en el foro ke comentas lovando y no veo nada solo hay 1 mensaje. Tengo que registrarme?

Editado******

Te tienes que registrar, sino no aparece el link.
Título: RE: Dimmer con mando
Publicado por: lovando en 19 de Febrero de 2005, 20:50:00
Busca mas abajo, en la seccion de ELEKTOR

Saludos
Título: RE: Dimmer con mando
Publicado por: Golden_Eagle en 20 de Febrero de 2005, 01:13:00
lovando, podrias facilitarnos el codigo fuente del proyecto?
es una parte fundamental Sonrisa Gigante

Con un simple vistazo al esquematico ya saltan las ideas para programar el pic desde cero; pero uno es curioso y quiere ver como pienSa el diseñador original Sonrisa

Título: RE: Dimmer con mando
Publicado por: lafe en 20 de Febrero de 2005, 18:32:00
Ya estan los archivos en el almacen ,el impreso y el codigo fuente si precisan
el articulo de la revista me dicen.
salu2
Título: RE: Dimmer con mando
Publicado por: J1M en 21 de Febrero de 2005, 07:10:00
lovando, con esos valores de la red Snubber, es posible alimentar una reactancia de un tubo fluorescente???, la resistencia de 1/4 sirve no?

Salu2
Título: RE: Dimmer con mando
Publicado por: Nocturno en 22 de Febrero de 2005, 02:57:00
Por fin he conseguido que el Dimmer funcione perfectamente.
Monté el condensador y resistencia que me recomendásteis a la vez que seguía haciendo cambios en el programa y conseguí quitar los destellos.
Ahora que lo he terminado, he desmontado condensador y resistencia y eso sigue funcionando perfectamente, así que al final ha resultado que la culpa la tenía el código.
La diferencia está en que antes usaba varias interrupciones en CCS y se ve que a veces presentaban conflictos entre ellas. Ahora sólo uso una, la del timer, y se ha vuelto mucho más estable.
Gracias por vuestra ayuda.
Título: RE: Dimmer con mando
Publicado por: lovando en 22 de Febrero de 2005, 22:09:00
Escrito originalmente por Golden_Eagle
lovando, podrias facilitarnos el codigo fuente del proyecto?
es una parte fundamental Sonrisa Gigante

Con un simple vistazo al esquematico ya saltan las ideas para programar el pic desde cero; pero uno es curioso y quiere ver como pienSa el diseñador original Sonrisa






OK

Ya he subido el codigo fuente y el diagrama del PCB, espero lo disfruten:

Dimmer Microcontrolado

Chavela
Título: RE: Dimmer con mando
Publicado por: Golden_Eagle en 23 de Febrero de 2005, 04:56:00
gracias!
Título: RE: Dimmer con mando
Publicado por: J1M en 23 de Febrero de 2005, 13:22:00
Podriais decirme como calcular la red snubber???, supongo que los valores tipicos me serviran, pero la duda es, de que potencia debo poner la resistencia???

Como ya dije, mi carga es inductiva, es un balasto, y la verdad no se como hacerlo, no tengo ganas tampoco de hacer la prueba y pegarle fuego a algo.

Gracias!
Título: RE: Dimmer con mando
Publicado por: lovando en 23 de Febrero de 2005, 23:22:00
Escrito originalmente por J1M
Podriais decirme como calcular la red snubber???, supongo que los valores tipicos me serviran, pero la duda es, de que potencia debo poner la resistencia???

Como ya dije, mi carga es inductiva, es un balasto, y la verdad no se como hacerlo, no tengo ganas tampoco de hacer la prueba y pegarle fuego a algo.

Gracias!




Hola

Aunque hay literatura que sugiere algunas tecnicas para diseñar la red snubber, las caracteristicas de los dispositivos depende de la inductancia de la carga...En todo caso, es comun ver resistencias entre 50 a 180 oms, y condensadores del orden de los 0,1 uF.

Asi las cosas, siempre enfatizan la naturaleza empirica de la eleccion de los dispositivos, de todas maneras la idea es eliminar la disipacion de la resitencia y manejar el dumping. La R puede ser de 0,5 W, 1/4 seria poco.

Puedes leer los sgtes papers:

 - http://www.onsemi.com/pub/Collateral/AN1048-D.PDF
   Muy bien explicado, y en detalle. Ver pagina 4 en adelante.

- http://www.fairchildsemi.com/an/AN/AN-3003.pdf

- http://www.fairchildsemi.com/an/AN/AN-3004.pdf

- http://www.fairchildsemi.com/an/AN/AN-3006.pdf

- http://www.fairchildsemi.com/an/AN/AN-3008.pdf

- http://www.cornell-dubilier.com/tech/design.pdf


Espero que el paper clarifique en algo tus dudas

Saludos


Título: RE: Dimmer con mando
Publicado por: J1M en 24 de Febrero de 2005, 07:15:00
ey muchas gracias lovando!! no sabia q en fair child estaban esos documentos! me pongo con ellos.

Gracias! Sonrisa
Título: RE: Dimmer con mando
Publicado por: marmatar en 24 de Febrero de 2005, 12:18:00
Hola a Todos...
Con respecto a la red RC (snubber), para el uso que le quiere dar Nocturno (variar la luminocidad de lámparas) no es necesario ya que solo se utilizan para cargas mayormente inductivas, y en éste caso podría considerarse resistiva pura.
Igualmente para el que quiera utilizar éste tipo de circuito para conmutar electroválvulas, motores, contactoras, etc. se pueden utilizar triac snubberlessque ya incluyen ese tipo de red RC... y no hay diferencia en el precio... además también se puede usar algunos triac que son de nivel lógico.. y permiten ser controlados directamente con el microcontrolador sin riezgo.
Por aquí habíamos puesto algo de info al respecto... y hay mas links al respecto en un par de mensajes que puse en su momento allí...

http://miarroba.com/foros/ver.php?foroid=58527&temaid=3049293&marcar=belenes

.. ahora les agrego un nuevo link, donde se hace referencia a el control con triac y microcontroladores... aunqie no son PICs es facilmente adaptable.

http://www.st.com/stonline/books/pdf/docs/1863.pdf

Un abrazo a todos...
marmatar
Título: RE: Dimmer con mando
Publicado por: J1M en 24 de Febrero de 2005, 12:41:00
hola marmatar...
ummm quizá me ekivoke, se lo poco que me ha contado mi profesor, una de las partes de mi proyecto hace necesaria el uso de un triac para activar una carga de alterna, y bueno le pregunté sobre la red snubber esta, sobre si era necesario o nó ponerla en cargas resistivas, me dijo que sí, y no como protección para el triac en el caso de desconexion de una carga inductiva, sino como proteccion para la carga resistiva, ya q en el momento de la conmutación la tensión sube muy rapidamente en la carga, y por lo tanto la intensidad q en ella pasa, y ese pico de tensión podría dañarla, es por eso q la red RC ayuda a q ese incremento sea mas paulatino, no se si será cierto o no, la verdad esq a mi me convenció! :p, cierto es q si usaramos un detector de paso por cero.. en teoria no seria necesaria no???

Salu2!
Título: RE: Dimmer con mando
Publicado por: Golden_Eagle en 24 de Febrero de 2005, 13:07:00
El detector de cruce por cero teoricamente sería suficiente para no darle un pico de tension repentino a la carga.

Muy interesante todos los links q postearon; yo tenia unas cuantas dudas con las redes snubber tb.  Giño
Título: RE: Dimmer con mando
Publicado por: Nocturno en 24 de Febrero de 2005, 13:27:00
Como dije antes, ya he acabado con el dimmer, y además es mi única experiencia con dimmers, pero tengo que decir que funciona de cine sin red Snubber usando una bombilla (carga resistiva).
Claro, el detector de cruce por 0 es imprescindible, porque si no sé cuándo corta el Triac, no puedo empezar a contar el tiempo para que vuelva a activarlo cuando me interesa.
Título: RE: Dimmer con mando
Publicado por: marmatar en 24 de Febrero de 2005, 15:28:00
Es provable que en algunos casos de conmutación de cargas resistivas donde la componente inductiva sea significativa sea necesario.

Un abrazo...
marmatar
Título: RE: Dimmer con mando
Publicado por: Ignite en 25 de Febrero de 2005, 09:41:00
Los TRIAC se estropean muy fácilmente si se supera dI/dt o dV/dt que se indica en su datasheet. En una carga puramente resistiva(ya se que realmente no existe) no existe este problema con lo cual no se necesita esa red. El problema esta en si se pone una carga que disponga de una alta carga inductiva, eso hace que la dI/dt pueda ser bastante considerable, haciendo que se queme el TRIAC. Pero ya digo, para bombillas normales no es necesario.
Título: RE: Dimmer con mando
Publicado por: litris en 25 de Febrero de 2005, 16:32:00
nocturno66

Dime donde as dejado el codigo y circuito final del dimmer.

Yo busco un dimmer que al pulsar sin soltar se encienda de menor a mayor intensidad y al soltar lo haga al contrario, asi lo conecto a un detector de presencia y el encendido y el apagado, seria mas suave y elegante no el brusco apagado y encendido normal.

Saludos.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 25 de Febrero de 2005, 23:17:00
Aún no lo he soltado en ningún sitio porque estaba esperando a terminarlo todo, montado en PCB y en su cajita para publicar el proyecto completo
Con un poco de suerte, y aprovechando que este fin de semana es largo por el puente, lo dejo acabado y lo publico.
Título: RE: Dimmer con mando
Publicado por: litris en 26 de Febrero de 2005, 03:29:00
¿Que puente?.

Sera el de la Virgen... digo yo por que en el pueblo donde vivo mis niños no vuelven al cole asta el miercoles.

Yo ni lo sabia por que soy de Alicante, y creo que se trabaja toda la semana.

Esperaremos.Giño

Saludos.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 26 de Febrero de 2005, 03:54:00
Jeje, el lunes tenemos aquí el Día de Andalucía.
Título: RE: Dimmer con mando
Publicado por: litris en 27 de Febrero de 2005, 11:59:00
Mira aqui http://free-vz.htnet.hr/Ivica-Novakovic/Lightdimmer.htm parece que tienen buena pinta.

Saludos.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 27 de Febrero de 2005, 13:32:00
Joe, pues sí que tiene buena pinta eso Litris. El mío es el doble de grande Enfurruñado

Ya lo he montado todo, pero ahora no funciona, no sé que c... le pasa, porque en la protoboard iba perfecto. Tendré que seguir estrujándome hasta encontrarlo.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 02 de Marzo de 2005, 05:34:00
Por fin ¡¡¡ FUNCIONA !!!

Muchas gracias a todos los que me habéis ayudado.

He publicado el proyecto aquí:
http://miarroba.com/foros/ver.php?foroid=382972&temaid=3429642
Título: RE: Dimmer con mando
Publicado por: J1M en 02 de Marzo de 2005, 07:49:00
enorawena! Sonrisa se ha kedado muuuuyyy bien!!! y es un circuitillo btt util

gracias nocturno Giño

Salu2!
Título: RE: Dimmer con mando
Publicado por: Micom en 03 de Marzo de 2005, 00:37:00
¡¡¡¡¡¡¡¡Felicidades Nocturno esta bueno el proyeto!!!!!!!!!!. Hasta pronto
Título: RE: Dimmer con mando
Publicado por: Gabo65 en 04 de Marzo de 2005, 15:01:00
RE: Dimmer con mando[/b]

<
Título: RE: Dimmer con mando
Publicado por: Gabo65 en 04 de Marzo de 2005, 15:10:00
Excelente proyecto Nocturno, Felicidades!!!!!!



saludos
Título: RE: Dimmer con mando
Publicado por: Sispic en 05 de Marzo de 2005, 14:36:00
Haver que haces ahora con tanta intimidad (a media luz ) en el Saloon  Heeee ????Giño



ó me diras que es para ver el futbor ¡




Título: RE: Dimmer con mando
Publicado por: Nocturno en 05 de Marzo de 2005, 15:58:00
Y a ti te lo voy a contar...
Con angelito que yo soy Angelito sólo es para dormir mejor Noche
Muchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risas

Gracias a todos por vuestros comentarios
Título: RE: Dimmer con mando
Publicado por: INSANIFRESH en 05 de Marzo de 2005, 17:07:00
hIJOLE AMIGO GRANDIOSO
Título: RE: Dimmer con mando
Publicado por: Modulay en 05 de Marzo de 2005, 17:33:00
Cuando un tonto coge un camino,el camino se acaba y el tonto sigue...
Título: RE: Dimmer con mando
Publicado por: arkanto1 en 05 de Marzo de 2005, 21:28:00
Tienes   razon    Modulay  no vale escuchar a los tontos, sigan asi con sus interesantes proyectos Nocturno, siempre adelante,  felicitaciones
Título: RE: Dimmer con mando
Publicado por: kamehouse en 05 de Marzo de 2005, 22:41:00


        a palabras necias oidos sordos
 
        FELICIDADES NOCTURNO!!!!!!!!

Título: RE: Dimmer con mando
Publicado por: INSANIFRESH en 07 de Marzo de 2005, 08:00:00
oYE   mALDITO  MODERADOR    POR QUE BORRASTE EL TEMA DEL LIBRO DE rANMA  ,  A VER SI TE ATREVES A BORRAR ESTE PRTE DEL FORO.

A ver si te comportas... :5] :5] :5] :5]
Título: RE: Dimmer con mando
Publicado por: marmatar en 07 de Marzo de 2005, 08:17:00
Insanifresh...
... creo que ya es suficiente... de tres mensajes solo tres guarradas, lo que da derecho a cualquier moderador a borrar los mensajes que se pasen de la raya, sean ofensivos o fuera de lugar.

Lamento que no sepas apreciar el contenido de éste foro para aprender, si te parece poco interesante, ya sabes... así como entraste puedes dejar de hacerlo.

Un saludo,
marmatar
Título: RE: Dimmer con mando
Publicado por: INSANIFRESH en 07 de Marzo de 2005, 08:31:00
TRANQUILO    MARMATAR,   es que me caliento muy rapido    PROMETO   contener mis impulsos, asi que     RECTIFICO   mis anteriores NECEDADES,   asi que ni modo   espero   no Haber echo   ENOJAR   mucho al    MODERADOR, EN LO POSIBLE APORTARE   asi   que paciencia muchachones.      
Título: RE: Dimmer con mando
Publicado por: Modulay en 07 de Marzo de 2005, 12:23:00
Seguramente que mucha paciencia tendrán los de tu entorno muchachón porque para aguantar a un hipócrita suavón como tú es indispensable,además de un estómago a prueba de bombas que aguante tanto rebuzno.
Si estás escocido cómprate una pomadita que van muy bien y no nos aburras con tus penas
Título: RE: Dimmer con mando
Publicado por: Elena2000 en 08 de Marzo de 2005, 02:53:00
Eso eso, rectifique, señor Insanifresh... que buena falta te hace aprender modales, bonito. Te aviso que Marmatar no es el único moderador que está mirando con lupa tus actitudes, así que más te vale ser respetuoso con los demás y entonces lo demás lo serán contigo.
Por último, no critiques el trabajo de los demás con comentarios fuera de lugar. Si no te gusta lo que ves y lees, cierra el explorador y punto. Nadie te había pedido opinión.

Bueno, seguro que todas estas "amonestaciones" son más que suficientes para que Insanifresh rectifique de verdad y muy pronto pueda aportar cosas positivas al foro. Seguro!
Título: RE: Dimmer con mando
Publicado por: Abago en 29 de Marzo de 2005, 22:25:00
OPS!!!!... Menuda polémica teneis montada...
Y yo que  solo entraba a dar la GRAN ENHORABUENA!!! a mi amigo manolo...
Sonrisa Gigante Manolo, eres un mostruo... dejo de estar unos meses por el foro, y me he quedado obsoleto... Sonrisa Gigante

Bueno, un saludote para todos los que me conoceis... Giño

Título: RE: Dimmer con mando
Publicado por: Nocturno en 29 de Marzo de 2005, 23:24:00
Muchas gracias, querido Abago.
¿Obsoleto tú?, no me lo creo Muchas risas, a saber qué tendrás escondidillo...
Título: RE: Dimmer con mando
Publicado por: juno303 en 29 de Marzo de 2005, 23:29:00
esta buenisimo che !, decime, la recepcion infrarroja es con rc5 ??
Título: RE: Dimmer con mando
Publicado por: Nocturno en 30 de Marzo de 2005, 02:47:00
Pues no, no implementé ningún protocolo, ni el RC5 ni ningún otro.
Lo que he hecho es que el Dimmer tiene un modo de "aprendizaje". De esta manera, captura 5 tramas distintas correspondientes a 5 teclas del mando que pongas delante y luego es capaz de identificarlas correctamente.
Así conseguí que funcionase con casi todos los mandos.
Título: RE: Dimmer con mando
Publicado por: Micom en 30 de Marzo de 2005, 23:23:00
Realmente ingenioso eso de que el dimmer "aprenda" y reitero mis felicitaciones. Hasta luego
Título: RE: Dimmer con mando
Publicado por: doraimontv en 30 de Junio de 2005, 18:20:00
Buenas a todos, mi opinion es que esta cojonuo el invento!!! viva la comodidad!!!!
pero.... me podriais poner la lista de componentes o decirme de donde la saco???
  Muchas gracias de ante mano!
Título: RE: Dimmer con mando
Publicado por: Nocturno en 01 de Julio de 2005, 00:29:00
He generado un fichero con la opción de "Exportar componentes" de Eagle y lo he colgado en:
http://manolo.auna.com/Dimmer/Listado%20componentes.txt

Espero que te sirva, aunque pregunta si tienes cualquier duda.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 02 de Julio de 2005, 14:44:00
A ver, no se lo que es:

220V (supongo k la entrada de corriente)
B2
C1
C2
C4
C8
C9
ICSP
Lampara (supongo k la salida de corriente)
OK1
Pared
Q1
R2
R3
T1
U$1
Y el pic que sale es un 18f84a, pero tengo entendido que usas el 18f80, no??

Perdona las molestias tio, pero tengo la placa ya echa y me gustaria comprar el lunes el material para probar este peazo de proyecto.

Te las currao, si señor.
Felizidades!!!!
Título: RE: Dimmer con mando
Publicado por: Nocturno en 03 de Julio de 2005, 02:18:00
La verdad es que ahora me doy cuenta que el proyecto lo hice yo para mí mismo y no lo dejé nada documentado. Ni siquiera puse los valores a los componentes en Eagle Enfurruñado

He preparado una lista de componentes con comentarios adicionales para que pueda aclarar tus dudas y las de quien quiera montarlo. Está al final de los links del proyecto, en mi güeb:
http://manolo.auna.com/proyectos-dimmer.html
También he añadido una imagen de la cara de componentes de Eagle.

Es cierto que el micro no es un 16F84, sino un 16F88, pero el encapsulado era el mismo y por eso usé el 84 en Eagle.

Ya sabes, ante la próxima duda, dispara.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 03 de Julio de 2005, 09:16:00
Ahora si tio, ahora si esta perfecto!!!!

El lunes sin falta compro material y monto.

Una cosa que seria de pu.. ma... seria lo que comentas de sacar de la re los 5v sin transformador... ya que el transformador ocupa mucho por si lo quieres meter en una caja de registro o algo.

Si tengo tiempo, me currare una placa en smd, pero a ver que hago con el transformador.

Saludos.
Título: RE: Dimmer con mando
Publicado por: INSANIFRESH en 09 de Julio de 2005, 11:06:00
Escrito originalmente por INSANIFRESH

Título: RE: Dimmer con mando
Publicado por: pendexgabo en 27 de Julio de 2005, 21:36:00
tengo una pregunta!!! estuve viendo el código.. y encontre unas cosas particulalres, en la parte dentro de la interrupcion por timer donde verificas que no sera ruido lo que entre por el sensor veo que haces varias comparaciones y operaciones lógicas pero las operaciones AND estan hechas con un solo amphensarnd (&Giño en vez de dos (&&Giño.. ahora esto esta de ejemplo o compilo asi??

saludos


gracias


gabriel
Título: RE: Dimmer con mando
Publicado por: Nocturno en 28 de Julio de 2005, 00:24:00
Tal como está el código ahora mismo es como funciona, así que debe estar bien según el método empírico Muchas risas

Bromas aparte, soy nuevo en C y probablemente diga una burrada, pero creo que no hay diferencias entre usar & y &&. Creo que los dos hacen una operación AND entre dos operadores y devuelven el resultado.

De todas formas, no es broma que el programa está funcionando así.
Título: RE: Dimmer con mando
Publicado por: omix en 28 de Julio de 2005, 04:07:00
Hola, nocturno66, perdona que te contradiga con lo de que no hay diferencia entre & y &&, pero si hay una pequeña diferencia. El operador & se usa para realizar la operacion AND a nivel de bits, es decir,  si tenemos por ejemplo 0b01010 & 0b00111 el resultado que da la operacion es 0b00010. Si lo hacemos con el && lo que esta realizando logica AND de las dos variables, es decir, si tenemos lo mismo que antes 0b01010 && 0b00111 el resultado de la operacion es 0b00001, lo que es lo mismo realiza la misma operacion que el &, pero el resultado final de la operación && va a ser 1 si el resultado de aplicar el & es mayor que 0, y va a ser 0 en caso contrario.

Un saludo.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 28 de Julio de 2005, 05:02:00
Perfecto, por eso advertía que podía decir una burrada.Sonrisa Gigante

Entonces debe ser que los "if" en C sólo comprueban si la condición es 0 o cualquier otra cosa, entendiendo condición verdadera para cualquier número distinto de 0.
Título: RE: Dimmer con mando
Publicado por: omix en 28 de Julio de 2005, 05:26:00
Exactamente el C entiende como condición verdadera cualquier número distinto de 0 y como condición falsa el 0.

Saludos.
Título: RE: Dimmer con mando
Publicado por: Sispic en 28 de Julio de 2005, 06:12:00
&& se usa para anidar comparaciones y retorna TRUE ó FALSE solamente .

ejemplo:

if ( (0==0) && (0 == 0) && (1==1) )    ............... eso retorna verdadero .


BOOL A,B;

Sera_Verdadero_Falso = (32==5)  &&  A  && B;



& como muy bien explica omix , realizar la operacion AND a nivel de bits.

A=45 & 123  // resultado = 41 .

y se pueden conbinar .


if (  (( 45 & 123)==41)  &&  ( A==41)  &&  (32/4+4 ¡= 0) )


no se explicarlo con nombres tecnicos y eso .
No olvidar los corchetes , ya que de lo contrario puede salir una patata .
Título: RE: Dimmer con mando
Publicado por: RaDoN en 28 de Julio de 2005, 07:44:00
Una pregunta, BOOL = a un short int?
Título: RE: Dimmer con mando
Publicado por: MGLSOFT en 28 de Julio de 2005, 16:54:00
Hola Manolo !!
Estuve buscando el programa fuente del mando y no lo encuentro, el link no encuentra el archivo....LlorandoLlorando
Podras arreglarlo o lo sacaste a proposito???

Para la pregunta por el BOOL escrito por SISCO, esto que sigue esta en los archivos include de cada micro:

#define BOOLEAN short int

Sabiendo que la mente de Sisco es 1000000 de veces mas rapida que sus manos, se entiende el furcio, je..je..Sonrisa GiganteSonrisa GiganteSonrisa Gigante
Título: RE: Dimmer con mando
Publicado por: Nocturno en 29 de Julio de 2005, 01:26:00
Sí, entendida la diferencia entre & y &&, pero seguramente estaréis de acuerdo conmigo en una cosa.
Cuando el resultado de la operación que yo efectúe combinando & y && vaya a servir para usarlo en un "if" da igual que use & o &&, puesto que la decisión final será resultado=0 o resultado<>0.
No podrán utilizarse indiscriminadamente cuando se pretenda usar el resultado para operar con él.

Con respecto al fuente, cometí un error en los links del Rebujito, ya lo he resuelto y lo puedes descargar, Marcos.
Título: RE: Dimmer con mando
Publicado por: MGLSOFT en 29 de Julio de 2005, 07:47:00
Je..je..
Manolo, arreglas uno y el otro queda mal, ahora no anda el link al .pdf  Sonrisa GiganteSonrisa GiganteSonrisa Gigante
Título: RE: Dimmer con mando
Publicado por: Nocturno en 29 de Julio de 2005, 10:21:00
Joe, qué raro, aquí hay fantasmas. Juraría que había chequeado todos los links antes.
Bueno, ya lo he arreglado; gracias por avisar Marcos.

Y luego quiero aparecer en Google, anda que a este paso... loco
Título: RE: Dimmer con mando
Publicado por: doraimontv en 10 de Septiembre de 2005, 19:13:00
Hola a todos, tengo dos dudas..... 1 y mas importatnte, me esta costando encontrar el 16f88 y me preguntaba si el mismo hex, funcionara en un 16f84????


Y 2, sabeis ya como sacar las 5v de los 220, sin transfornador????
Título: RE: Dimmer con mando
Publicado por: Nocturno en 11 de Septiembre de 2005, 14:26:00
El HEX no te sirve, aunque es probable que si modificas / optimizas el programa puedas recompilarlo para un 16F84.

Con respecto a lo de la obtención de los 5V vi varios link en los que se conseguía, y encontré uno después de tener hecho el dimmer que hace lo mismo que el mío, pero sin trafo y mucho más pequeño.

Échale un vistazo y ya me contarás si te funciona:
http://free-vz.htnet.hr/Ivica-Novakovic/Lightdimmer.htm
Título: RE: Dimmer con mando
Publicado por: lord_10 en 11 de Septiembre de 2005, 18:40:00
el SFH al igual que el TSOP son receptores IR , cada uno tiene  diferentes carateristicas de trabajo en especial la frecuencia, con la cual trabaja....  Giño
Título: RE: Dimmer con mando
Publicado por: doraimontv en 12 de Septiembre de 2005, 01:32:00
ahhh, entonces segun el mando que use, tengo que montar uno u otro, no??

Y como se cual usa mi mando?? lo normal es tsop, no??
Título: RE: Dimmer con mando
Publicado por: Nocturno en 12 de Septiembre de 2005, 03:15:00
No creo que haya diferencias entre un receptor y otro, aunque habría que revisar el Datasheet de cada uno.
De todas formas, si no quieres equivocarte, compra un TSOP1738 y no tendrás problemas.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 12 de Septiembre de 2005, 08:42:00
Ha ver, en la page del hombre este no tiene colgado el hex.. asi k le mando un correo anoche pa ver islo va a poner o  me lo puede mandar o algo... y pa adelantar trabajo y tiempo me insolo  la placa... esta mañana compro los componentes, la monto y a falta del hex, miro mi correo y me encuentro respuesta del hombre, la cual es:

Hi,
Sorry, I can"t send you hex file, but i offer you programming
PIC12F629, or complete and tested IrLightDimmer .

If you have someone in Croatia, then is no problem for order.

Sorry about hex file, and thank you for show interest in my projects .
 

En otras palabras.... QUEME VENDE EL TIO EL PIC YA PROGRAMADO...


Hala, otrp circuito al cajon de los recuerdos...


Saludos.....

P.D. estaba de puta madre, xk es tan chico que el tio te pone hasta como empotrarlo en un mecanismo y todo, esta bien la page, tiene otros proyectos interesantes como el  termometro con el lcd de un 3310. Lo curioso es k en todos los demas proyectos si pone el hex, pero en el dimer nop.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 12 de Septiembre de 2005, 09:15:00
Anda, hombre, anímate y lo intentas tú. Vas a tardar mucho más, pero seguro que la satisfacción que tendrás luego no será comparable.
Y bueno, no sé cuanto dinero te pide, pero lo mismo es una cantidad razonable.
No es raro que quiera vendértelo, aunque sea totalmente opuesto a la filosofía de nuestro foro.
Título: RE: Dimmer con mando
Publicado por: RaDoN en 12 de Septiembre de 2005, 09:16:00
Bueno no te preocupes, tmpc es un proyecto muy complicado. El mismo hard te servirá, eso en C debe ser como quien dice 3 lineas... Flash
Título: RE: Dimmer con mando
Publicado por: doraimontv en 12 de Septiembre de 2005, 16:13:00
Pero yo por mi me animo ahora mismo... pero.... esk yo  de programar.... naica de ná, si me enseñais... pero desde 0 patatero.

queda en vuestras manos... jejeje

Adelante professs
Título: RE: Dimmer con mando
Publicado por: doraimontv en 14 de Septiembre de 2005, 02:27:00
A ver, e a contestado el señor este, y me a dicho k me lo manda en un sobre, por 10€.

Yo lo veo bien de precio, aunk lo suyo seria hacer el programa uno mismo... pero bueno, como no tengo ni idea....

En fin...

ENSEÑARMEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Título: RE: Dimmer con mando
Publicado por: doraimontv en 14 de Septiembre de 2005, 02:36:00
Ahhh una cosa mas... me estoy animando a esto, asi k... me podeis decir de algun manual para empezar desde abajo.... algun programa asi facilito para programar... etc...

Vamos, como empezamos todos.... desde abajo...
Título: RE: Dimmer con mando
Publicado por: Nocturno en 14 de Septiembre de 2005, 02:39:00
Vamos bien, si estás dispuesto a empezar a estudiar y practicar, te recomiendo que te mires los dos hilos que están al principio del subforo "Lenguaje C para microcontroladores":
http://miarroba.com/foros/ver.php?foroid=46840

Ambos están puestos con chinchetas para que no se muevan de ahí, porque forman una estupenda guía de iniciación, con multitud de ejemplos útiles con los que somos ya varios en el foro los que hemos aprendido.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 14 de Septiembre de 2005, 02:42:00
ok!!! oye una cosa, existe alguna manera de imprimir un hilo entero??? es pa imprimirlo e ir leyendo en casa de  mi novia y eso... xk en mi casa con el pc... solo paro los findes....
Título: RE: Dimmer con mando
Publicado por: Nocturno en 14 de Septiembre de 2005, 02:45:00
No tengo ni idea si se podrá, pero mi experiencia como sufridor de las limitaciones de MiArroba, me hace pensar que no se puede.
Título: RE: Dimmer con mando
Publicado por: RaDoN en 14 de Septiembre de 2005, 04:39:00
Como no vallas copy&paste en cada post al Word ... Helado
Título: RE: Dimmer con mando
Publicado por: vszener en 14 de Septiembre de 2005, 05:05:00
Hombre si lo que quieres es imprimir...abajito de todos los mensajes pone: "Opciones: Version imprimible del tema" le das y ya lo puedes imprimir....Giño
Título: RE: Dimmer con mando
Publicado por: Nocturno en 14 de Septiembre de 2005, 05:33:00
Joe, pues es verdad. Existe y funciona esa opción.
Gracias vszener
Título: RE: Dimmer con mando
Publicado por: doraimontv en 14 de Septiembre de 2005, 07:46:00
Coño, pues muchas gracias tiossss
Título: RE: Dimmer con mando
Publicado por: RaDoN en 14 de Septiembre de 2005, 11:33:00
Menos mal que posteo vszener Sonrisa GiganteSonrisa Gigante
Título: RE: Dimmer con mando
Publicado por: doraimontv en 14 de Septiembre de 2005, 17:18:00
hombre.... jejeje, el segundo manual son 180 pages... me parece que guardare la version de impresion en word, en el portatil y me llevo este pa estudiar....

1º duda: los comandos son estandar o cada pic tiene el suyo???? cuantos comandos son???
Título: RE: Dimmer con mando
Publicado por: RaDoN en 14 de Septiembre de 2005, 17:28:00
La serie 16F creo recordar que eran 33, estos son los mismos en toda la gama. Sonrisa Gigante
Título: RE: Dimmer con mando
Publicado por: doraimontv en 15 de Septiembre de 2005, 16:45:00
Ummmm veo que no sabeis de nadie...

Cambiando de tema, e pedio en microchip unos samples, ya sabeis... pa ahorar unos eurillos... Sabeis de alguna page mas que se puedan pedir samples???
Título: RE: Dimmer con mando
Publicado por: piriots en 16 de Septiembre de 2005, 06:03:00
Casi todos los fabricantes de componentes mandan samples es solo cosa de mirar las web yo he pedido a microchip, a dallas-maxim y a National Semiconductors y todas las veces que he pedido me los han mandado en menos de 15 dias, los de maxim en 5 dias laborables los tenia en casa.

Salu2
Título: RE: Dimmer con mando
Publicado por: vszener en 16 de Septiembre de 2005, 07:21:00
Ami los de microchip me tardan un mes largo.....pero llegan! y como dice piriots casi todos los fabricantes de componentes mandan samples.....suerte!!!Giño
Título: RE: Dimmer con mando
Publicado por: lord_10 en 16 de Septiembre de 2005, 10:19:00
una delas empresas que tambien manda samples y muy rapidos los envios  es Texas Instrument Giño y como dicen los amigos  piriots y vszener todas las empresas regalan samples Sonrisa Gigante y si  son totalmente gratuitos, claro esta que no hay que excederse pidiendo los samples,cuando mucho yo hago un pedido por mes y todo marcha muy bien Fumador
Título: RE: Dimmer con mando
Publicado por: doraimontv en 16 de Septiembre de 2005, 10:33:00
pero es totalmente gratuito???? cuantas veces puedes pedir samples en la misma empresa???
Título: RE: Dimmer con mando
Publicado por: vszener en 16 de Septiembre de 2005, 10:45:00
Si es todo gratuito......y segun la empresa puedes hacer un maximo d epedidos por tiempo, por ejemplo en microchip puedes realizar 2 pedidos como maximo en 30 diasGiño
Título: RE: Dimmer con mando
Publicado por: doraimontv en 19 de Septiembre de 2005, 17:35:00
Ok, po ya a echo un pedio de un 12f629, un 12f675 y  un 16f88a, a ver si me llega, jejeje

Oye sabeis si se puede pedir por sample, un tsop1738??

Ya seria la caña!
jejeje

Saludos.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 22 de Septiembre de 2005, 03:47:00
Hola
! a ver, en una de las dos unicas tiendas de electronica de granada, me dicen k no tienen el tsop, 1738, k por esas referencias..... su proveedor les da otras referencias.

E mirao el datasheet y creo k me puede valer cualquiera que ese en 38Khz.

La cosa es... es esto correcto?? o  tengo k mirar algo mas de su funcionamiento??


Saludos!!!
Título: RE: Dimmer con mando
Publicado por: Nocturno en 22 de Septiembre de 2005, 04:28:00
Si es un TFMS también sirve, es igual que el TSOP.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 23 de Septiembre de 2005, 01:30:00
Pero... TFMS es una marca, no?? y el modelo... esto no se me a quedado muy claro, lo siento.
Supongo k cualquiera que trabaje a la misma frecuencia, puede valer , no??

Oye, podrias poner la distribucion de los componentes en la placa???
Si lo pusieras, seria un proyecto al 100%, un 10!!!!!

Saludos y gracias!!!!
Título: RE: Dimmer con mando
Publicado por: Nocturno en 23 de Septiembre de 2005, 03:53:00
No, la marca es TEMIC y el modelo TFMS. Luego tienen una referencia que es 5xx0 donde xx es la frecuencia de recepción, en tu caso, 5380.

No pretendo que el proyecto tenga un 10 ni que sea 100%, sólo lo hago por divertirme y si de paso ayudo a alguien, pues mejor que mejor.
De todas formas, la situación de los componentes en la placa está bajo el listado de componentes.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 23 de Septiembre de 2005, 06:50:00
OK, no recordaba que lo tenias en el listado de componentes, fallo mio.

Perdona si soy pesado en este tema, pero... me valdria cualquiera que trabaje a 38khz??
Título: RE: Dimmer con mando
Publicado por: Nocturno en 23 de Septiembre de 2005, 06:59:00
No hay nada que perdonar, hombre, tú pregunta lo que quieras.

Yo no sé si te servirá cualquiera que trabaje a 38KHz, porque sólo conozco el TSOP y el TFMS. Aunque supongo que si son parecidos a estos debería servirte.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 23 de Septiembre de 2005, 10:33:00
oye, perdona si me equiboco, pero creo k en el diseño de componentes que pusiste, el puente de diodos lo tienes mal puesto, xk creo k el + lo as llebado a masa.

Dime si no estoy equibocado.

Un saludo.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 27 de Septiembre de 2005, 04:27:00
holaaaaaaaaaaaaaaaaaaaaaa

Joe, esto esta muertoooooo, bueno, por si alguien lo lee.

Ya me an llegado los samples!!!! jejejeje. unos 12 dias an tardado!! la caña

Esta tarde probare el dimmer conmi flamante 16f88!!!

jejeje


Saludos
Título: RE: Dimmer con mando
Publicado por: Nocturno en 27 de Septiembre de 2005, 04:35:00
El + al positivo y el - a masa, o de lo contrario no funcionará.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 27 de Septiembre de 2005, 06:16:00
ok, asi lo tengo, estaba claro, jejeje.

Sabeis la page, si esk se puede... pa padir samples a atmel??
Título: RE: Dimmer con mando
Publicado por: doraimontv en 27 de Septiembre de 2005, 14:29:00
a ver, una ultima duda, que tengo k hacer para k el dimmer grabe las teclas a usar??? cuales son los pasos de grabado??? solo me falta eso pa probarlo.....



Dios que nevios!!!!!!!
Título: RE: Dimmer con mando
Publicado por: Nocturno en 27 de Septiembre de 2005, 23:54:00
Venga, que ya falta poco.

Incluí en el código la explicación del proceso de grabación, así que te pego ese trozo:
Codigo:
/****************************************************************************/
/* Captura las pulsaciones de un mando y las almacena en EEPROM             */
/* El proceso de grabación es el siguiente:                                 */
/* - las teclas a almacenar serán, en este orden: ARRIBA,ABAJO,ONOFF,P1 y P2*/
/* para cada tecla, la secuencia será:                                      */
/*   1- hay un parpadeo del led rojo de 200ms                               */
/*   2- se lee la tecla y parpadea rojo 100ms                               */
/*   3- se lee de nuevo y se compara con la anterior.                       */
/*         4- Si Ok parpadeo de 200ms y siguiente tecla                     */
/*         5- Si no Ok hay 5 parpadeos de 100 ms y vuelta a 2               */
/****************************************************************************/

Es fácil; sólo has de pulsar el pulsador del dimmer para activar el proceso de captura. Luego tendrás que pulsar dos veces cada una de las cinco teclas; en la primera la memoriza y en la segunda la verifica. El led rojo te va informando del proceso.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 28 de Septiembre de 2005, 11:34:00
A ver, si le quito el pic, a la salida del 7805 tengo 6,87v, pero cuando pongo el pic, se me baja a 3,algo v.

Lo que e observado, esque segun las fotos de nocturno66, entre el suyo y el mio, varian los valores de casi todas las resistencias, pero yo lo e montado segun esquema...

Bueno, espero respuesta pa ver si echamos a andar esto....


Saludos.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 28 de Septiembre de 2005, 11:44:00
a ver, cosas nuevas, le pongo todo menos el lm741, y los led funcionan, su pulso una tecla, el led se enciende, etc... pero si le pongo el lm741, no hace nada de nada.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 28 de Septiembre de 2005, 17:58:00
A ver, sin carga, con el pic quitado, en las patillas del pic tengo:
1-0v
2-6,95v
3-0v
4-6,68v
5-
6-2,63v
7-0v
8-5,36v
9-0v
10-0v
11-0v
12-0v
13-0v
14-7,03v
15-0v
16-0v
17-0v
18-0v

A la entrada del 7805, el cual se calienta un poco, tengo:16,17v y a la salida 7,3v (creo k no regula bien, no??)

En el + del stop1736 tengo 7,02v


Si conecto el pic, se me pome muyyyy caliente, asi k lo quito y no me da tiempo a medir, por miedo a quemarlo o algo, con lo que me a costado conseguirlooooooo



Bueno, a ver... ayudaaaaaaaaaaaaaaaaaaaaaa

Si os hace falta mas info, nada mas k pedirla.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 28 de Septiembre de 2005, 23:53:00
Hola Doraimon, te he agregado al MSN a ver si online somos capaces de avanzar mejor con esto.

Con respecto a los valores de las resistencias, me gustaría que me dijeras cuáles son las diferencias respecto a los que aparecen aquí:
http://manolo.auna.com/proyectos-dimmer-componentes.html

Lo del LM741 ahora mismo no se me ocurre qué puede ser, aunque lo que más me preocupa es que tengas tanta tensión a la salida del 7805. No es normal y jamás he visto un 7805 que deje pasar más de 5V (a lo sumo 5,5V), por lo que yo empezaría mirando eso.

Lamentablemente, si el PIC se calienta puede haber sufrido algo, a pesar de que son bastante resistentes. ¿Tienes la posibilidad de montarlo en Protoboard?
Título: RE: Dimmer con mando
Publicado por: doraimontv en 29 de Septiembre de 2005, 17:06:00
nocturno66 muchas gracias por prestarme tu ayuda, hasta el viernes por la noche no creo k nos veaomon online, estoy en el curro k no paro... esto de tener dos trabajos...


Lo de la salida del 7805, supongo k sera xk se filtra la corriente por otro lado.

A ver si mañana compro otro lm741, un octoacoprador y y algun 7805 k otro, pa hacer las pruevas.

Mañana te posteare lo de las resistencias, un saludo.
Título: RE: Dimmer con mando
Publicado por: elmasvital en 03 de Noviembre de 2005, 10:36:00
Escrito originalmente por doraimontv
nocturno66 muchas gracias por prestarme tu ayuda, hasta el viernes por la noche no creo k nos veaomon online, estoy en el curro k no paro... esto de tener dos trabajos...


Lo de la salida del 7805, supongo k sera xk se filtra la corriente por otro lado.

A ver si mañana compro otro lm741, un octoacoprador y y algun 7805 k otro, pa hacer las pruevas.

Mañana te posteare lo de las resistencias, un saludo.


Hola si has cortocircuitado el 7805 aunque sea un segundo te lo has fundido casi seguro, suelen durar poco. El valor maximo de vo segun el datasheet es de 5.5v así que mira el tema
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 02 de Diciembre de 2005, 13:20:00
Hola, no lo habrás colocado al reves, a mi me pasó en un montaje con un 7808, y me daba mas de 8 voltios...

Saludos.
Título: RE: Dimmer con mando
Publicado por: doraimontv en 02 de Diciembre de 2005, 18:19:00
A ver, puesto que no fui capaz de echar a andar el dimer, nocturno66 se ofrecio a mirarmelo, asi que se lo mande por correo portal, tras ponerlo en la mesa de operaciones, resulto ser el lm, al parecer, los 3 o 4 lm que compre en la misma tienda, estaban defectuosos, nocturno66 le pudo uno y funciono a la primera.

Despues de las pruebas, nocturno66 llego a la conclucion que el lm sobra, se puede sustituir por una resistencia, ya que el pic por si solo, detecta el cruse por 0.


Muchas gracias nocturno66.


Un saludo a todos.

P.D. recomiendo el proyecto, es una comodidad cuando estas romantico con lamovia, jejeje
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 04 de Diciembre de 2005, 12:34:00
Hola a todos:
Me pregunto como hace el programa para saber cuando empieza una trama de datos del mando a distancia, pues veo que en la rutina de interrupcion del temporizador, se testea en un "if" que la entrada del detector de infrarrojos hay un cero, pero entiendo que este cero puede ser el primero, o uno posterior de una trama de datos del mando.

Saludos y gracias.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 04 de Diciembre de 2005, 13:57:00
Ciertamente es como dices, micro_falo, pero por eso pongo una variable flag a 1 en cuanto detecto el primer 0.
Codigo:
     if (MANDO==0 & !Recibiendo)   // se detecta pulsación en el mando si la señal baja a 0
      {
       Recibiendo=1;             // comienzo de la recepción de una pulsación
       Pasos=0;
       LED_VERDE=1;
      };

La próxima vez que venga un 0, como Recibiendo será 1, no se cumple la condición.
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 07 de Diciembre de 2005, 16:51:00
Hola a todos:

Nocturno, me gustaria saber para que usas la directiva #use rs232, y la funcion printf().

Saludos y gracias.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 08 de Diciembre de 2005, 00:10:00
Son restos de sangre de la batalla. En la práctica no sirven para nada, pero durante el desarrollo me servían para depurar el programa, viendo en el PC los pasos por donde iba ejecutándose.
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 06 de Enero de 2006, 14:49:00
Hola, me gustaria saber con que mandos usan el dimmer, y que receptor usan.

Yo uso un TSOP1736, y he probado con un mando de TV TOSHIVA, uno de cadena de musica THOMSON, las teclas las memoriza rapidamente, pero luego el dimmer no responde, y he probado con el de un video SONY, con el que tarda en memorizar un rato las teclas, y luego funciona el dimmer, aunque tarda un poco en responder.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 07 de Enero de 2006, 01:44:00
El receptor que yo uso es el TSOP1738 y me va bien con casi todos los mandos de casa, aunque el que uso habitualmente es un Sony.
Lo que no entiendo es a qué te refieres con "tarda en responder".
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 07 de Enero de 2006, 05:44:00
Me refiero a que por ejemplo, para bajar la intensidad de la luz, desde que pulsas el mando hasta que se empieza a notar la disminucion de la luz, tarda mucho, o hay que pulsar el mando muchas veces.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 07 de Enero de 2006, 07:33:00
¿Cuando memorizas las teclas das un golpe de botón o lo dejas pulsado?

Prueba al contrario de como lo hagas y dime qué tal.
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 09 de Enero de 2006, 10:16:00
Hola nocturno, grcias por la respuesta.

Dando golpes de boton no consigo memorizar, aunque con un mando Philips parece que va mejor.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 10 de Enero de 2006, 00:03:00
Es difícil para mí ayudarte sin poder probar el mando que te da la lata, pero el mando que yo uso es un Sony y me va estupendamente.
De todas formas, me alegro que ya lo hayas resuelto.
Título: RE: Dimmer con mando
Publicado por: micro_pepe en 10 de Enero de 2006, 16:29:00
Hola nocturno.

Me pregunto si el codigo fuente que tienes en tu pagina web, es el definitivo, pues yo tomé este codigo y lo compilé con el ccs 3.227. No he probado con el .hex de tu pagina.

Saludos y gracias.
Título: RE: Dimmer con mando
Publicado por: Chapujose en 30 de Enero de 2006, 13:36:00
Primero decir k esta increible el proyecto Sonrisa Gigante un 10
Hacia tiempo k keria hacer algo parecido

La unica duda k tengo es el valor d la resistencia 3, porque en la lista d componentes el valor d esta es d 576ohm, en cambio en la foto del proyecto es igual k la resistencia d arriba (R7) 10K

Alguien podria resolverme la duda, gracias Muchas risas
Título: RE: Dimmer con mando
Publicado por: Nocturno en 30 de Enero de 2006, 13:42:00
Sí, no es crítica. Con la de 10K va perfecto.
Título: RE: Dimmer con mando
Publicado por: Chapujose en 30 de Enero de 2006, 16:00:00
muchas gracias x responder, sobre todo tan rapido
ya os contare k tal Sonrisa Gigante
Título: RE: Dimmer con mando
Publicado por: Chapujose en 01 de Febrero de 2006, 10:04:00
wenas, ahora tengo otro "problema"
e estao mirando el esquema del eagle y me parece k el puente d diodos esta al reves loco, es cosa mia o esta asi por algun motivo k desconozco?
Giño muchas gracias
Título: RE: Dimmer con mando
Publicado por: Nocturno en 01 de Febrero de 2006, 14:39:00
¿A qué te refieres con "al revés"?, yo lo veo bien. Al menos así es como lo tengo montado y funciona de lujo.
Título: RE: Dimmer con mando
Publicado por: Chapujose en 02 de Febrero de 2006, 08:21:00
la verdad es k me explico un poco ... loco

digo k el positivo del puente d diodos es la masa
y el negativo va a la entrada del 7805

http://www.cit.org.ar/archivos_cit/simbolos_archivos/image035.gif
Título: RE: Dimmer con mando
Publicado por: Nocturno en 02 de Febrero de 2006, 13:22:00
Pues tienes razón; menudo desastre de esquema que hice loco

Por suerte, al montarlo lo puse bien Sonrisa Gigante
Título: RE: Dimmer con mando
Publicado por: RedPic en 03 de Febrero de 2006, 00:33:00
Ja, ja, ja  Muchas risas  Muchas risas  Muchas risas

A ver Nocturno, escribe mil veces en la pizarra: El positivooooo con el positivooo, el negativoooo con el negativoooooo

Título: RE: Dimmer con mando
Publicado por: Nocturno en 03 de Febrero de 2006, 00:36:00
Escrito originalmente por RedPic
Ja, ja, ja  Muchas risas  Muchas risas  Muchas risas

A ver Nocturno, escribe mil veces en la pizarra: El positivooooo con el positivooo, el negativoooo con el negativoooooo



¿Puedo utilizar el Copy / Paste Enfurruñado ?
Título: RE: Dimmer con mando
Publicado por: RedPic en 03 de Febrero de 2006, 00:40:00
Nooooooooooooo

Tienes que escribirlo: ALT+65 para la "A" ... etc ( Muchas risasMuchas risasMuchas risas )

¡Pero vamos! ¡Qué te has creido! ... venga ¡de cara a la pared con los brazos en cruz!  ... ¡Pepito ... trae la orejas de burro!

Título: RE: Dimmer con mando
Publicado por: Chapujose en 09 de Febrero de 2006, 08:57:00
wenas, sigo con mi intento d hacer el dimmer Giño
y viendo k el pic16f88 no lo puedo conseguir me e puesto manos a la obra para convertir el codigo para un 16f84a

lo unico k e hecho a sido kitar el ""#use rs232(BAUD=19200 ,XMIT=PIN_B7 ,RCV=PIN_A4 ,BITS=8)""
ademas d todos los printf´s

y cambiar esto ""#include <16F84A.h>""
y esto ""#fuses HS,NOWDT,NOPUT""
ademas d esto ""#use delay(clock=4000000)""

como lo veis?? e hecho algun disparate?? Avergonzado
Título: RE: Dimmer con mando
Publicado por: Chapujose en 09 de Febrero de 2006, 08:58:00
El codigo keda asi ...


//    PROYECTO DIMMER DIGITAL
#include <16F84A.h>
#use delay(clock=4000000)
#use fast_io(A)
#use fast_io(B)

#rom  0x2100={0x0A,0x94,0x92,0x55,0x09,0x4A,0x49,0x2A,0x09,0x4A,0x92,0x55}
/*2708 / 37461 = 0A 94 92 55
2378 / 18730 = 09 4A 49 2A
2378 / 37461 = 09 4A 92 55*/

#fuses XT,NOWDT,NOPUT

#byte PORTA                = 0x05
#byte   PORTB                = 0x06
#bit  TRIAC                = PORTB.1
#bit  LED_VERDE            = PORTA.0
#bit  LED_ROJO             = PORTA.2
#bit  PULSADOR             = PORTA.3
#bit  INTERRUPTOR_PARED    = PORTB.2
#bit  MANDO                = PORTB.3
#byte ANSEL                = 0x9B
#byte OPTIONREG            = 0x81

#define LimiteInf            40
#define LimiteSup            150
#define Periodo              86//86
#define PausaTrasEnvio       4
#define RelacionMandoDimmer  8
#define LimiteAntirrebotes   350
#define ModoEjecucion        0
#define ModoProgramacion     1
#define PausaCorta           100
#define PausaMedia           200

// arriba  2708, 37461
// abajo   2378,18730
// derecha 2346,19029
// izda    2708,38058
// ok      2378,37461


/**************************************** VARIABLES ******************************************/

int Recibiendo;   // está a 0 en reposo, y a 1 mientras recibe una pulsación del mando
                  // al finalizar la pulsación se incrementa 1 cada ciclo hasta final de pausa

int Pasos;        // se incrementa en 1 cada X vueltas del timer, coincidendo con la captura de bits del mando

int PasosDimmer;  // se incrementa con cada vuelta del timer
                  // se pone a 0 en la detección del cruce por 0

int Intensidad;   // almacena el valor de disparo del triac.
                  // Cuando PasosDimmer llega al valor de Intensidad se dispara el Triac

int i,j;          // genéricas

int par;          // se incrementa en 1 cada vuelta del dimmer
                  // sirve para saber cada cuantas vueltas hay que ejecutar lectura de mando

int Modo;         // distingue si el circuito está en modo ejecución o en modo programación

int EstadoProceso;   // en Modo Programación, va pasando por todos las teclas que se están programando
                     // en primera pasada se captura la tecla
                     // en segunda pasada se captura de nuevo y se comprueba

int Direccion;    // Dirección de la EEprom donde se está almacenando un valor en cada momento

int UltimoEstadoInterruptor;  // 0 si el interruptor estaba apagado y 1 si estaba encendido

long Antirrebotes;   // se pone a 0 tras la pulsación del mando
                     // y se va incrementando en cada ciclo del timer
                     // Se utiliza en teclas donde no queremos autorrepetición, como la tecla OnOff

long Lectura1, Lectura2, CapturaTemporal1, CapturaTemporal2; // valores temporales de las lecturas del mando

// Valores de las teclas almacenadas en la EEProm
long BajaIntMSB,BajaIntLSB,SubeIntMSB,SubeIntLSB,OnOffMSB,OnOfFLSB,P1MSB,P1LSB,P2MSB,P2LSB;


/*************************************************************************/
/* Lee de la EEPROM los códigos de mando que se hayan memorizado         */
/*************************************************************************/

void LeeCodigosMando(void)
{
   i=read_eeprom(0);
   BajaIntMSB=i*256+read_eeprom(1);
   i=read_eeprom(2);
   BajaIntLSB=i*256+read_eeprom(3);
   i=read_eeprom(4);
   SubeIntMSB=i*256+read_eeprom(5);
   i=read_eeprom(6);
   SubeIntLSB=i*256+read_eeprom(7);
   i=read_eeprom(8);
   OnOffMSB=i*256+read_eeprom(9);
   i=read_eeprom(10);
   OnOffLSB=i*256+read_eeprom(11);
   i=read_eeprom(12);
   P1MSB=i*256+read_eeprom(13);
   i=read_eeprom(14);
   P1LSB=i*256+read_eeprom(15);
   i=read_eeprom(16);
   P2MSB=i*256+read_eeprom(17);
   i=read_eeprom(18);
   P2LSB=i*256+read_eeprom(19);
}



/*************************************************************************/
/* Se ha capturado una pulsación del mando. Actuamos en consecuencia     */
/*************************************************************************/

void ProcesaTecla ()
{
   if (Lectura1==BajaIntMSB & Lectura2==BajaIntLSB) // Ha pulsado la tecla ARRIBA
      {
         Intensidad=Intensidad-2;   // acortamos la variable intensidad para que ilumine más
         if (Intensidad<LimiteInf)  // y si ha llegado al límite inferior, no se baja más
            Intensidad=LimiteInf;
      }

   if (Lectura1==SubeIntMSB & Lectura2==SubeIntLSB) // Ha pulsado la tecla ABAJO
      {
         Intensidad=Intensidad+2;      // alejamos la variable intensidad para que ilumine menos
            if (Intensidad>LimiteSup)  // y si ha llegado al límite superior, no se baja más
               Intensidad=LimiteSup;
      }

   if (Lectura1==OnOffMSB & Lectura2==OnOffLSB & Antirrebotes>LimiteAntirrebotes) // Ha pulsado la tecla OnOff
         if (Intensidad<((LimiteSup-LimiteInf)/2+LimiteInf)) // si está por debajo de la media
            Intensidad=LimiteSup;   // enciendo
           else
            Intensidad=LimiteInf;   // en caso contrario, apago
//   printf ("%lu / %lu: %u
",Lectura1,Lectura2,Intensidad);
}


/****************************************************************************/
/* Captura las pulsaciones de un mando y las almacena en EEPROM             */
/* El proceso de grabación es el siguiente:                                 */
/* - las teclas a almacenar serán, en este orden: ARRIBA,ABAJO,ONOFF,P1 y P2*/
/* para cada tecla, la secuencia será:                                      */
/*   1- hay un parpadeo del led rojo de 200ms                               */
/*   2- se lee la tecla y parpadea rojo 100ms                               */
/*   3- se lee de nuevo y se compara con la anterior.                       */
/*         4- Si Ok parpadeo de 200ms y siguiente tecla                     */
/*         5- Si no Ok hay 5 parpadeos de 100 ms y vuelta a 2               */
/****************************************************************************/

void AlmacenaTecla()
{
   LED_VERDE=0;
   if (EstadoProceso%2==1) // impar
      {
         // Captura de la tecla
         CapturaTemporal1=Lectura1;
         CapturaTemporal2=Lectura2;
         // Parpadeo del Led Rojo
         LED_ROJO=1;
         Delay_Ms(PausaCorta);
         LED_ROJO=0;
         EstadoProceso++;
//         break;
      }
     else // par
      {
         // comprobación de la tecla
         if (CapturaTemporal1==Lectura1 & CapturaTemporal2==Lectura2)
            {  // comprobación OK
               Direccion=EstadoProceso*2-4;
               write_eeprom(Direccion,Lectura1/256);
               write_eeprom(Direccion+1,Lectura1%256);
               write_eeprom(Direccion+2,Lectura2/256);
               write_eeprom(Direccion+3,Lectura2%256);
               EstadoProceso++;
               LED_ROJO=1;
               Delay_Ms(PausaMedia);
               LED_ROJO=0;
            }
           else
            {  // comprobación fallida
               for (i=0;i<5; i++)
                  {
                     LED_ROJO=1;
                     Delay_Ms(PausaCorta);
                     LED_ROJO=0;
                     Delay_Ms(PausaCorta);
                  }
               EstadoProceso--;
               CapturaTemporal1=0;
               CapturaTemporal2=0;
            }
      }
   if (EstadoProceso==11) // ya se han capturado las cinco teclas
      {
         // leemos los nuevos valores de la eeprom y cambiamos a modo ejecución
         LeeCodigosMando();
         Modo=ModoEjecucion;
         EstadoProceso=0;
         LED_ROJO=0;
         LED_VERDE=1;
         Delay_MS(PausaMedia); // antirrebotes
         LED_VERDE=0;
      }
}



/****************************************************************************/
/* En la interrupción del Timer se ejecuta el núcleo principal del programa */
/* Se ha establecido un ciclo de repetición que es adecuado para el dimmer  */
/* y 8 veces más rápido que la frecuencia de pulsos del mando               */
/* De esta manera, cada vez que se ejecuta la interrupción del Timer        */
/* se procesa el Dimmer, pero sólo una de cada 8 veces se procesa el mando  */
/****************************************************************************/

#INT_TIMER0
void tempo()
   {
   set_timer0(Periodo);

   PasosDimmer++;

   if (PasosDimmer==Intensidad & Modo==ModoEjecucion) // cuando se ha llegado a la altura del semiciclo deseada
      TRIAC=0;                   // se enciende el triac

   if (!Recibiendo)             // cuenta los ciclos en pausa para evitar autorrepetición
      if (Antirrebotes<2000)    // la variable Antirrebotes se pone a 0 tras una pulsación del mando
         Antirrebotes++;

   if (MANDO==0 & !Recibiendo)   // se detecta pulsación en el mando si la señal baja a 0
      {
       Recibiendo=1;             // comienzo de la recepción de una pulsación
       Pasos=0;
       LED_VERDE=1;
      };

   if (Recibiendo==1 & (par%RelacionMandoDimmer)==0) // mientras Recibiendo sea 1, se está leyendo el mando
      {
         if (Pasos<16)                    // se usan dos word de 16 bits cada una
            Lectura1=Lectura1*2+MANDO;
           else
            Lectura2=Lectura2*2+MANDO;

         Pasos=Pasos+1;

         if (Pasos==32)                   // fin de la captura
            {
               // el ruido suele ser un pulso que baja a 0 y luego permanece a 1 durante todo el tiempo
               // por tanto, se detecta como una cadena con esta forma 01111...1111
               if ((Lectura1!=0xEFFF & Lectura2!=0xFFFF) & (Lectura1!=0 & Lectura2!=0)) // con esto evitamos la mayoría de los ruidos
                  {
                     if (Modo==ModoEjecucion)
                          ProcesaTecla ();
                        else
                           {
                            AlmacenaTecla();
                            Delay_Ms(PausaMedia);
                           }
                  }
                 Recibiendo=2;   // fin de lectura de la pulsación
                 Lectura1=0;
                 Lectura2=0;
                 Pasos=0;
                 Antirrebotes=0;
                 LED_VERDE=0;
            }
      };
  if (Recibiendo>1 & (par%RelacionMandoDimmer)==0)
      {
         // puede que algunos mandos envíen más pulsos que los capturados,
         // por lo que hacemos una pausa tras la captura
         Recibiendo++;
         if (Recibiendo>=PausaTrasEnvio)
            Recibiendo=0;
      };


  if (!PULSADOR)    // Se ha pulsado la tecla
      {
         if (Modo==ModoEjecucion)
            {
               Modo=ModoProgramacion;
               EstadoProceso=1;
               LED_ROJO=1;
               Delay_MS(PausaMedia); // antirrebotes
               LED_ROJO=0;
               Recibiendo=0;
            }
           else
            {
               Modo=ModoEjecucion;
               EstadoProceso=0;
               LED_ROJO=0;
               LED_VERDE=1;
               Delay_MS(PausaMedia); // antirrebotes
               LED_VERDE=0;
            }
      }

   if (UltimoEstadoInterruptor!=INTERRUPTOR_PARED) // se ha pulsado el interruptor de la pared
      {
         // eso tiene el mismo efecto que la tecla OnOff
         Lectura1=OnOffMSB;
         Lectura2=OnOffLSB;
         ProcesaTecla();
         UltimoEstadoInterruptor!=INTERRUPTOR_PARED;
      }
   par++;
   TRIAC=1; // cortamos la señal que se envía al TRIAC
            // ya que permanecerá encendido hasta el próximo cruce por 0

   }


/****************************************************************************/
/* El ciclo del TRIAC comienza de nuevo con cada cruce por 0                */
/* por ello en la interrupción externa se pone a 0 la cuenta de PasosDimmer */
/* y se cambia la detección de flanco de la entrada                         */
/****************************************************************************/

#INT_EXT
void CrucePor0()
{
   PasosDimmer=0;
   if (j==0){
   j=1;
   ext_int_edge(H_TO_L); // Cambio la detección del flanco, para que la proxima sea de bajada
   }
   else {
   j=0;
   ext_int_edge(L_TO_H); // La próxima interrupción será de subida
   }
}



/****************************************************************************/
/* En el main lo único que hay es la inicialización                         */
/****************************************************************************/

void main()
{
   set_tris_B(0b00001101);
   set_tris_A(0b00011000);
   ANSEL=0;
   OPTIONREG=OPTIONREG & 0x7F;      // activa las pullups internas

   LeeCodigosMando();

   setup_timer_0(RTCC_INTERNAL | RTCC_DIV_2);
   enable_interrupts(INT_TIMER0);
   enable_interrupts(INT_EXT);
   ext_int_edge(L_TO_H);
   enable_interrupts(GLOBAL);
   set_timer0(Periodo);
   Intensidad=LimiteSup;
   Modo=ModoEjecucion;
   LED_VERDE=0;
   LED_ROJO=0;
   UltimoEstadoInterruptor=INTERRUPTOR_PARED;
   while(1);
 }
Título: RE: Dimmer con mando
Publicado por: Nocturno en 09 de Febrero de 2006, 09:04:00
¿Compila sin errores?, ¿lo has probado?
Tendría que funcionar sin problemas en un F84, aunque no sé si a 4MHz notarás algo extraño, quizás tengas que tocar algunos retardos.
Título: RE: Dimmer con mando
Publicado por: Chapujose en 09 de Febrero de 2006, 09:21:00
compila sin errores
entonces podria ser k funcionase??
mañana cuando lo pruebe ya os digo k tal ...

por cierto, como va el minidimmer, cuando podremos verlo?
Título: RE: Dimmer con mando
Publicado por: Nocturno en 09 de Febrero de 2006, 11:53:00
Este fin de semana verá la luz.
Título: RE: Dimmer con mando
Publicado por: Chapujose en 13 de Febrero de 2006, 08:20:00
creo k he leido k con una resistencia d 2M conectada a alterna despues d pasar por el trasformador y conectada al rb0 del pic, se puede eliminar el lm741, funcionara d esta forma?

e probado ya con el 16f84 y no funciona, la lampara parpadea, creo k es xk el cristal del 16f84 es d 4mhz, seguire investigando en este tema ... Giño
Título: RE: Dimmer con mando
Publicado por: Nocturno en 13 de Febrero de 2006, 09:28:00
Funciona perfectamente. En el minidimmer lo tengo implementado así.
Título: RE: Dimmer con mando
Publicado por: Chapujose en 21 de Febrero de 2006, 03:29:00
wenas otra vez, creo k se a roto el enlace del pcb en pdf, lo podrias arreglar? Avergonzado
Título: RE: Dimmer con mando
Publicado por: Nocturno en 21 de Febrero de 2006, 05:05:00
Pues no veo que esté roto. Acabo de probarlo y va perfecto.
Título: RE: Dimmer con mando
Publicado por: Nocturno en 03 de Abril de 2006, 16:12:00
Sí, es un triac, aunque en el esquema aparece el símbolo de un tiristor.

El código no es público.
Título: Re: Dimmer con mando
Publicado por: RedPic en 05 de Abril de 2006, 01:31:40
Amigo Nocturno:

Tengo en casa una lampara de pié con un dimmer manual, de las que se compran en carrefour, que está empezando a dar las boqueadas (ya no logra apagar del todo la bombilla ni no llega a tope de iluminación, además de vez en cuando se pone a parpadear como un led haciendo blink  :lol: ) En cuanto estire la pata voy a montar tu diseño y sacaré un telemando del baúl de los recuerdos para manejarlo. Ya te informaré de tutti bacalátti con tomáti.


Título: Re: Dimmer con mando
Publicado por: Nocturno en 05 de Abril de 2006, 01:36:43
Será un honor para mí que un maestro como tú monte un diseño mío.
En lo que pueda ayudarte, ya sabes, sólo te cobraré cervezas.
Título: Re: Dimmer con mando
Publicado por: RedPic en 05 de Abril de 2006, 01:43:16
Ja ja ja  :lol:  ¡¡¡Que tiemblen los de la Field Cross!!!  :mrgreen:
Título: Re: Dimmer con mando
Publicado por: RedPic en 10 de Julio de 2006, 15:05:53
Hummmm ... este búlgaro igual es medio japonés ...  :x

InfraRed Controlled Lamp Dimmer ...  (http://mcu.sytes.net/index_en.htm)

Título: Re: Dimmer con mando
Publicado por: Nocturno en 10 de Julio de 2006, 17:06:54
No creo que sea japonés, tampoco yo tuve una idea original, creo que me inspiré por ahí en alguna página...
Título: Re: Dimmer con mando
Publicado por: warriorfenix@hotmail.com en 14 de Enero de 2008, 18:52:38
Hola de nuevo pongo aqui mi consulta dado que no sabia donde la tenia q colocar, pido perdon por mi ignorancia, la pregunta es nocturno que estoy intentando desarrollar un dimmer parecido al tuyo simplemnte q x aora solo quiero controlarlo con un pulsador, y hacer efecto anochecer amanecer y tl, el problema es q no se si activo bien el triac x q la lampara siempre esta encendida, no se si es problema del codigo, o de que e intentado acer funcionar el codigo del dimemr con mando con el circuito de entrada de cruce por cero del mini dimmer y la salida a tiristor que tienes en el mismo, como controlas el tiristor en l minidimer gracias x todo, agradecería q m dijeras n q pode fallar mi programa y que mejores ves.

#include <16F84a.h>
#use delay(clock=20000000)
#use fast_io(A)
#use fast_io(B)

#fuses HS,NOWDT

#byte PORTA                = 0x05
#byte   PORTB                = 0x06
#bit  TRIAC                = PORTB.1
#bit  SALIDAFREC           = PORTB.4
#define LimiteInf            50
#define LimiteSup            160
#define Periodo              85
int PasosDimmer,intensidad,j;

#INT_TIMER0
void tempo()
   {
   set_timer0(Periodo);

   PasosDimmer++;
   SALIDAFREC=1;
   if (PasosDimmer==Intensidad) // cuando se ha llegado a la altura del semiciclo deseada
      TRIAC=0;                   // se enciende el triac
      delay_us(300);
      TRIAC=1; // cortamos la señal que se envía al TRIAC
            // ya que permanecerá encendido hasta el próximo cruce por 0
      SALIDAFREC=0;
   }

/****************************************************************************/
/* El ciclo del TRIAC comienza de nuevo con cada cruce por 0                */
/* por ello en la interrupción externa se pone a 0 la cuenta de PasosDimmer */
/* y se cambia la detección de flanco de la entrada                         */
/****************************************************************************/

#INT_EXT
void CrucePor0()
{
   PasosDimmer=0;
   if (j==0){
   j=1;
   ext_int_edge(H_TO_L); // Cambio la detección del flanco, para que la proxima sea de bajada
   }
   else {
   j=0;
   ext_int_edge(L_TO_H); // La próxima interrupción será de subida
   }
}

void subir()
            {
               INTENSIDAD++;                 //Decrementamos minuto2
               if(intensidad > 160)            //Si minuto2 es mayor de 5
               {
               intensidad = 50;               //Minuto2 es igual a cero
               if(intensidad < 50)            //Si minuto2 es menor de 1
               intensidad = 160;
               }}

/****************************************************************************/
/* En el main lo único que hay es la inicialización                         */
/****************************************************************************/

 main()
{
   set_tris_B(0b11001101);
   set_tris_A(0b00011100);
   setup_timer_0(RTCC_INTERNAL | RTCC_DIV_2);
   enable_interrupts(INT_TIMER0);
   enable_interrupts(INT_EXT);
   ext_int_edge(L_TO_H);
   enable_interrupts(GLOBAL);
   set_timer0(Periodo);
   while(1)
   {
   if (input(pin_a1))
   {
   subir();
   }
   }}
Título: Re: Dimmer con mando
Publicado por: Nocturno en 14 de Enero de 2008, 20:33:46
Deberías asegurarte que la interrupción externa está funcionando bien, o sea, que se detecta el cruce por 0. Quizás poniendo un led en lugar del triac para ver si se enciende y cómo lo hace.
No veo la función subir() por ninguna parte
Título: Re: Dimmer con mando
Publicado por: warriorfenix@hotmail.com en 15 de Enero de 2008, 10:48:06
Como puedo segurarme que la funcion de cruce por cero funciona correctamnt?, la funcion subir esta justo antes del main, vy a probar lo del led aber q pasa.

gRacias
Título: Re: Dimmer con mando
Publicado por: DDG en 22 de Abril de 2008, 15:06:16
Hola nocturno disculpa pero los enlaces de este foro estan rotos a esepcion del dibujito del puente de diodos, por cierto gracias por contestar en el foro de sistema modular rrboard2, podrias repararlos o pasarme un enlace nuevo, digo si no es mucho pedir  :-/
Título: Re: Dimmer con mando
Publicado por: Nocturno en 23 de Abril de 2008, 02:47:20
¿Cuáles son los links que no te funcionan?, ¿qué necesitas?
Título: Re: Dimmer con mando
Publicado por: DDG en 23 de Abril de 2008, 09:13:44
He generado un fichero con la opción de "Exportar componentes" de Eagle y lo he colgado en:
<a href="http://manolo.auna.com/Dimmer/Listado%20componentes.txt" target="_blank">http://manolo.auna.com/Dimmer/Listado%20componentes.txt[/url]

Espero que te sirva, aunque pregunta si tienes cualquier duda.
La verdad es que ahora me doy cuenta que el proyecto lo hice yo para mí mismo y no lo dejé nada documentado. Ni siquiera puse los valores a los componentes en Eagle <img   src="http://pics.miarroba.com/caretos/frown.gif" alt="Enfurruñado" title="Enfurruñado" />

He preparado una lista de componentes con comentarios adicionales para que pueda aclarar tus dudas y las de quien quiera montarlo. Está al final de los links del proyecto, en mi güeb:
<a href="http://manolo.auna.com/proyectos-dimmer.html" target="_blank">http://manolo.auna.com/proyectos-dimmer.html[/url]
También he añadido una imagen de la cara de componentes de Eagle.

Es cierto que el micro no es un 16F84, sino un 16F88, pero el encapsulado era el mismo y por eso usé el 84 en Eagle.

Ya sabes, ante la próxima duda, dispara.
Hola nocturno denuevo dandote lata pues en si solo veo que el proyecto funciona muy bien, pero no logor ver en si nada del proyecto y la verdad parece muy funcional y me interesa montarlo si me pudieras echar la mano con los esquemas para poder implementarlo a de paso saver si el programa que esta en el foro esta correcto para de hay sacarlo.
Título: Re: Dimmer con mando
Publicado por: Nocturno en 24 de Abril de 2008, 12:33:06
Ah, es que esos links son tan antiguos que ya ni los recordaba  :D

Puedes verlo todo aquí:
http://www.micropic.es/index.php?option=com_content&task=view&id=37&Itemid=40
Título: Re: Dimmer con mando
Publicado por: DDG en 27 de Abril de 2008, 18:58:27
ok nocturno muchas gracias este link si que funciona perfecto
Título: Re: Dimmer con mando
Publicado por: Medusa en 08 de Enero de 2010, 15:07:17
Hola a todos, yo tambien me he animado a armar este dimer, un excelente trabajo de Nocturno por los comentarios que he leido. Mi problema es el siguiente, he bajado el codigo del dimer con mando de la pagina de Micropic  (http://www.micropic.es/index.php?option=com_content&task=view&id=37&Itemid=40), estoy trabajando con el pic16f88 y he modificado la fuente de poder, usando tambien una fuente sin transformador recomendada tambien por nocturno, tambien he eliminado el lm741 que hace la funcion del detector de paso por cero y he conectado la linea N a traves de una resistencia de 1mohm al mismo RB0 del pic  para haga la misma funcion de detector de paso por cero, tambien he eleminado el optotriac y lo he conectado directamente a gate del triac a traves de una resistencia de 1k, pero no funciona  :5], no enciende el foco y los leds solo parpadean un momento y se apagan, quisiera que alguien me diga si tambien tengo que modificar el codigo fuente o asi como esta deberia de funcionar.
Título: Re: Dimmer con mando
Publicado por: Nocturno en 08 de Enero de 2010, 16:51:16
Jaja, has usado el firmware del "Dimmer con mando" en el hardware del "Minidimmer" :)

Eso no funciona  :D
Título: Re: Dimmer con mando
Publicado por: MGLSOFT en 08 de Enero de 2010, 17:21:35
El firmware del dimmer con mando no se puede bajar, o al menos no esta el link... :shock: :shock:
Título: Re: Dimmer con mando
Publicado por: Nocturno en 08 de Enero de 2010, 18:00:18
Aquí lo tienes, Marcos: http://www.micropic.es/index.php?option=com_remository&Itemid=27&func=select&id=18
Título: Re: Dimmer con mando
Publicado por: Medusa en 08 de Enero de 2010, 22:31:01
Citar
Jaja, has usado el firmware del "Dimmer con mando" en el hardware del "Minidimmer"

Eso no funciona 

Hola nocturno, segun la respuestas #121 de doraimontv
Citar
Despues de las pruebas, nocturno66 llego a la conclucion que el lm sobra, se puede sustituir por una resistencia, ya que el pic por si solo, detecta del cruse por 0

se podria presindir el comparador. Si esto no es posible y si no es mucha molestia me podrias dar una pista de como puedo hacerlo compatible ??
Título: Re: Dimmer con mando
Publicado por: Nocturno en 08 de Enero de 2010, 22:38:20
Básicamente tendrás un 0 en el semiciclo negativo y un 1 en el positivo. Si lo metes en un pin de interrupción externa y vas cambiando de flanco te saltará con cada paso por cero.
Título: Re: Dimmer con mando
Publicado por: Medusa en 08 de Enero de 2010, 23:15:38
Si tienes razon ... :oops:
Título: Re: Dimmer con mando
Publicado por: wATAw en 11 de Enero de 2010, 19:42:34
Hola a todos,
Primero de todo agradecer a todos, en este caso a Nocturno, que seáis tan generosos de compartir vuestros proyectos para que gente menos experta que vosotros(Este es mi caso), pueda realizar este tipo de artilugios...

Me he animado a realizar el dimmer, pero como cojeo un poco en electrónica, no me fio a trabajar con 220V. Por eso he pensado en realizar una mezcla entre el dimmer y el minidimmer. Se trata de un dimmer con trafo, pero sin utilizar el amplificador operacional ni el opto para detectar el cruce por 0.

Debido a mi floja base de eléctronica, me gustaría que le echarais un vistazo al esquema que "he realizado" (Más bien me he basado en el dimmer, minidimmer y datasheets), no vaya a ser que haya cometido alguna barbaridad y me queme media casa.... :lol: :lol: :lol:

Gracias de antemano!!!!

GENERAL

-pic18f2550
-Oscilador 20MHZ + 2 condensadores de 15pF
-2 LEDS + 2 resistencias de 1k
-1 diodo 1N4148 + 1 resistencia 4,7k
-conector para pickit3



ALIMENTACION

-Transformador 230-9V (He mirado unas para montar en PCB de hasta 2.3 VA, es suficiente??)
-Puente de diodos rectificador (Cual debo comprar??)
-Regulador 7805T + condensador 0,33uF + condensador 0,1uF



CRUCE CERO

-resistencia 10k conectado desde una fase de de los 9A.C directo al pic.



TRIAC

-TIC206 activado por una resistencia de 470 conectada directamente al pin del pic. (Fusible proteccion 0,5A)



INFRAROJOS

-SFH5110
Título: Re: Dimmer con mando
Publicado por: Nocturno en 12 de Enero de 2010, 04:32:21
Parece que está todo correcto, no veo a priori nada raro. Te podriás ahorrar el cristal y sus condensadores porque ese micro tiene oscilador interno a 8MHz y no necesitarás más velocidad.
Suerte
Título: Re: Dimmer con mando
Publicado por: todopic en 12 de Enero de 2010, 10:17:46
mmmmm yo creo que el triacks está invertido....
Título: Re: Dimmer con mando
Publicado por: MGLSOFT en 12 de Enero de 2010, 10:32:18
Va a leer doble cruce por cero tambien...
Título: Re: Dimmer con mando
Publicado por: wATAw en 12 de Enero de 2010, 14:30:02
mmmmm yo creo que el triacks está invertido....

Si? Hoy a la noche cuando tenga un momento me lo miro y lo compruebo!! (Ahora estoy en el trabajo).

Va a leer doble cruce por cero tambien...

No entiendo muy bien a que te refieres, podrías explicarmelo por favor?

Muchas gracias por las aportaciones!!!Ya sabía bien que en algo fallaría......jejeje
Título: Re: Dimmer con mando
Publicado por: MGLSOFT en 12 de Enero de 2010, 15:04:33
Vas a tener en el pin de entrada del pic un pulso cada vez que pases por cero, esto es dos veces por ciclo.
En los aspectos practicos estarias viendo los semiciclos, o sea 100 interrupciones por segundo para 50 Hz y 120 para 60 Hz.
Título: Re: Dimmer con mando
Publicado por: flacoclau en 12 de Enero de 2010, 16:05:23
Dos preguntas constructivas:
El sensado de cruce por cero lo hace directamente de la alterna de la salida del trafo, ¿No se puede quemar el pic cuando le ingrese con tensión alterna y sin regular?
¿Con respecto a que tensión de la alterna (220V) se toma referencia el disparo del Gate del triac? Esto lo digo viendo solo el esquema aquí subido, por ahí me estoy salteando algo.
saludos!!

Edito: Veo que tiene una R de 10K lo que limita la corriente de los diodos protectores del puerto (RB2)
Otra cosa el puente de diodos de la fuente está al revés.
Título: Re: Dimmer con mando
Publicado por: Nocturno en 12 de Enero de 2010, 16:17:38
Jaja, menos mal que le habéis dado un repaso, porque si hubiera sido por mi consejo habría visto fuegos artificiales  :D

Efectivamente, Marcos, se leen dos cruces por cero, pero ambos son necesarios porque en ambos se cierra el triac cuando corresponda.
Título: Re: Dimmer con mando
Publicado por: Medusa en 12 de Enero de 2010, 16:28:12
Hola wATAw, tu puente rectificador esta invertido !!

Citar
mmmmm yo creo que el triacks está invertido....
cuando se usan triacs la carga puede estar en M1 o M2 recoerdemos de que estamos trabajando con CA
Título: Re: Dimmer con mando
Publicado por: MGLSOFT en 12 de Enero de 2010, 17:06:56
Parece un juego de las 10 diferencias !!! :D :D :D
Título: Re: Dimmer con mando
Publicado por: Medusa en 12 de Enero de 2010, 17:17:00
SIP  :mrgreen:
Título: Re: Dimmer con mando
Publicado por: wATAw en 12 de Enero de 2010, 19:48:38
10 diferencias (o 10 errores...)...jijiji!!!!

Gracias a todos por el aporte!!! Corregirme si me equivoco, pero al final llego a la conclusión de que el único error es que el puente está al reves no?? Esque con tanto apunte al principio me he asustado...jejeje!!!!


Dos preguntas constructivas:
El sensado de cruce por cero lo hace directamente de la alterna de la salida del trafo, ¿No se puede quemar el pic cuando le ingrese con tensión alterna y sin regular?
¿Con respecto a que tensión de la alterna (220V) se toma referencia el disparo del Gate del triac? Esto lo digo viendo solo el esquema aquí subido, por ahí me estoy salteando algo.
saludos!!

Edito: Veo que tiene una R de 10K lo que limita la corriente de los diodos protectores del puerto (RB2)
Otra cosa el puente de diodos de la fuente está al revés.

Los pins del pic vienen protegidos y con limitar la corriente es suficiente....Nocturno ha llegado a conectar los 220 directamente(con su respectiva R pa limitar la corriente)!!!
Título: Re: Dimmer con mando
Publicado por: flacoclau en 12 de Enero de 2010, 23:41:01

¿Con respecto a que tensión de la alterna (220V) se toma referencia el disparo del Gate del triac? Esto lo digo viendo solo el esquema aquí subido, por ahí me estoy salteando algo.
saludos!!


solamente creo que queda ver eso, anque no sé si está bien o está mal
Título: Re: RE: Dimmer con mando
Publicado por: messi1980 en 07 de Mayo de 2010, 10:20:53
por favor que estoy ententando a programar el pic12f675 un control de potencia de una lampara 230v paso por zero gp2........A/D gp1  pata conectada a un potenciometro.. gp0 salida al triac abajo mas detalles


1 Detector de paso por cero

el componente principal es el PIC_12F675. Este pico detecta el paso por cero a través de un transformador secundario. a partir de aquets momento empieza a contar a partir de un tiempo que depende de la luminosidad de la bombilla. Pasado este momento se activa el triac con un impulso positivo en una pata a través de una resistencia en serie. Este proceso se repite cada semiciclo (100 veces para segundo).
El opto triac sirve |para aislar el circuito de otro dispositivo externo desde el cual podemos controlar el "snuber" como por ejemplo el control de fase con el pico.
5.2 Etapa de potencia
El diseño se igual que la etapa anterior pero lo opto triac se le excitará directamente por|para un pin de salida del microcontrolador
5.3 Mando
Hará uso de un potenciómetro (5-10k) que, a partir de 5 v estabilizados de la fuente, enviará una tensión variable a una entrada del microcontrolador configurada para software como entrada analógica de un convertidor analógico-digital que contiene en su interior el microcontrolador escogido.
5.4 Microcontrolador
Se utilizará el pico 12f675 del, los fabricantes Microchip con una configuración interna de 4 Mhz, el "watch dog timer" desactivado y el flag de rotecció de lectura de la memoria flash desactivado.
aqui tengo un trzo de programa se me pudeis ayudar graçias

Define ADC_CLOCK = 3  'Set clock source (3=rc)
Define ADC_SAMPLEUS = 50  'Set sampling time in uS

TRISIO = %00000110
ADCON0 = 0x0e
TRISIO.1 = 1
TRISIO.2 = 1
TRISIO.0 = 0
Dim t2400 As Word
Const con = 396
Dim adval As Byte
Dim voltatge As Word
Dim angle2 As Word
Dim k As Byte
Symbol triac = GP0
ADCON0.7 = 1
ANSEL = %00000010
CMCON = 7

inici: Adcin 1, adval
voltatge = (adval * 500) / 1023  'Equates to: (adval * 500)/1024

If GP2 = 1 And voltatge = 50 Then
GP0 = 1
Endif

   


            Select Case 32

angle2 = angle2 - 960
If angle2 < 0 Then
angle2 = 0
Endif
   
               Select Case 33

angle2 = angle2 + 960
If angle2 > 9000 Then
angle2 = 9000
Endif



Goto inici

End
por favor mirad mi este programa si esta bien 
Título: Re: Dimmer con mando
Publicado por: Nocturno en 07 de Mayo de 2010, 12:13:28
¿No funciona?, ¿qué es lo que hace?
Título: Re: Dimmer con mando
Publicado por: messi1980 en 07 de Mayo de 2010, 12:40:10
necessito ayuda en mi programa de control fase de luz con triac optotriac pic12f675 en lenguaje picbasic del picsimulator ide
pin 1 entrada analogica (potenciometro 10 bits) pin 2 detectar paso por zero pin 0 salida a l'optotriac (desparo del triac)
el problema es
                                            - INICIO
                                            - Lectura del valor de la entrada conv. Analog/dig
                                            - Valores de 0 a 250(x>250x=250)
                                                     T = (valor *4)/10 = us
                                            -Lectura del pin de detector de fase
                                           -¿Cambio de estado?   Sí                            No
                                            -Esperar el tiempo que marca la variable “T” calculada anteriormente
                                           -Poner a 1 la salida hacia el triac durante 100us
                                           -Poner a 0 la salida hacia el triac
                                             -return


espero a tu respuesta nocturno



Título: Re: Dimmer con mando
Publicado por: Nocturno en 07 de Mayo de 2010, 14:37:00
Disculpa Messi, pero no me entero del problema. ¿Puedes explicar lo que hace tu dimmer?, ¿provoca parpadeos en la lámpara?, ¿acaso ni siquiera enciende?
Título: Re: Dimmer con mando
Publicado por: stk500 en 27 de Mayo de 2010, 14:10:43
Manolo lo he montado, es normal que al iniciar se encienda los dos LEDS?
pues bien, lo he montado pero sin el Triac para observar la señal que sale con el Oscilocopio, con la programacion de la tecla no lo tengo muy claro( se debe mantener la tecla pulsa de Receptor y al mismo tiempo pulsar la tecla que se quiera programar?  :z) :z) aqui es donde me lio ya que yo ante tenia uno, no me aclaro eso de pulsar o mantener pulsador,  :z)soy extraterrestre Manolo, lo que supongo que en la salida donde va el Optoaclopador deber salir PWM? y el voltage varias de segun la programacion de la tecla?
Título: Re: Dimmer con mando
Publicado por: Nocturno en 27 de Mayo de 2010, 14:28:38
Vayamos por partes. He mirado el código y creo que los leds no deberían encenderse en el arranque.
Por otro lado, la salida del optoacoplador debería ser un PWM sincronizado con los 50Hz de la red eléctrica.
Y para programar las teclas se procede como indica el programa, así:
/****************************************************************************/
/* Captura las pulsaciones de un mando y las almacena en EEPROM             */
/* El proceso de grabación es el siguiente:                                 */
/* - las teclas a almacenar serán, en este orden: ARRIBA,ABAJO,ONOFF,P1 y P2*/
/* para cada tecla, la secuencia será:                                      */
/*   1- hay un parpadeo del led rojo de 200ms                               */
/*   2- se lee la tecla y parpadea rojo 100ms                               */
/*   3- se lee de nuevo y se compara con la anterior.                       */
/*         4- Si Ok parpadeo de 200ms y siguiente tecla                     */
/*         5- Si no Ok hay 5 parpadeos de 100 ms y vuelta a 2               */
/****************************************************************************/
Título: Re: Dimmer con mando
Publicado por: stk500 en 27 de Mayo de 2010, 15:26:29
pues los LEDS se me enciende al reiniciar el pic con corriente, probe quitandole la señal del detector de cruce y darle corriente y el pic reinicia con los LEDS apagados, manolo esa instrucion de funcionamientos lo he leido varias veces,pero lo que no comprendo, para almacenar las tecla que se quiera programar mi pregunta es, se debe mantener la tecla de receptor pulsada y a la vez por orden ir programando en ese orden ARRIBA,ABAJO,ONOFF,P1 y P2*/
lo que a mi me hace parpadeo alternativo de un led y despues del otro al mantener la tecla pulsada del receptor, voy a montarlo en una placa ya que el Protoboard me esta haciendo falso contactos :x
 
Título: Re: Dimmer con mando
Publicado por: Nocturno en 27 de Mayo de 2010, 15:49:22
Pues no me acuerdo bien, Rafa, hace años que lo monté. Pero si no te funciona como está escrito será por algún problema de la protoboard como indicas.
Título: Re: Dimmer con mando
Publicado por: stk500 en 28 de Mayo de 2010, 13:21:58
Haber Sr. Manuel, esto analizando el esquema y tengo dudas
(http://img88.imageshack.us/img88/1629/esquemadimmerconmando.jpg)
segun veo en esquema el pin 1 del Opto acoplador va a 5 Voltio, esto es cierto?
tampoco cai en cuenta cuando hacia la prueba del interruptor que va a la pared, osea que tiene que estar cerrado? pin 8(16F88) y masa y pin 3(16F88) y mas es el pulsador?
lo tengo casi acabado en la placa y me faltan esos detalles.


Título: Re: Dimmer con mando
Publicado por: Nocturno en 29 de Mayo de 2010, 02:18:14
Yes, el pin 1 es a 5V.
El interruptor de la pared se conecta entre pin 8 y masa, sí.
Pero el pulsador de programación no se conecta en el pin 3, sino entre el pin 2 y masa.
Título: Re: Dimmer con mando
Publicado por: stk500 en 29 de Mayo de 2010, 04:17:52
yo lo quiero usar sin el detector de Cruce osea que tendre que cambiar algo del programa, me puede dar una pista de eso? yo solo quiero que sea sin Triac, poner un led, para decoracion de un planta interiores :mrgreen:
Gracias Genio por aclararme el esquema.
Título: Re: Dimmer con mando
Publicado por: Nocturno en 29 de Mayo de 2010, 06:24:55
Para eso creo que te vendrá mejor este otro:
Generación de 3 PWM, probamos led RGB
 (http://www.micropic.es/index.php?option=com_content&view=article&id=59:generacion-de-3-pwm-probamos-led-rgb&catid=38:tecnicas&Itemid=65&lang=es)
Título: Re: Dimmer con mando
Publicado por: setshomaru en 10 de Junio de 2010, 16:49:02
Buenos dias compañeros,

De nuevo acudo a los grandes para la solucion de mis problemas, llevo 8 dias tratando de hacer un dimmer gobernado por puerto serie, me he basado en el minidimmer de Nocturno, utilizo un micro 16f688, las interrupciones externas de este micro estan en el pin RA2, de alli conecto una resistencia de 1 mega como hace Nocturno para detectar el cruce por cero, como no tengo osciloscopio para verificar que se realice correctamente pongo un contador y cuando llega a 120 cambia de estado un led cada segundo, 120 porque en Colombia manejamos redes electricas de 120 Voltios a 60Hz, considerando que se detecta el cruce por cero 2 veces en una onda por eso se debe contar 120 veces y tendremos 1 segundo, esto lo hace perfectamente, segun mis calculos para controlar la intesidad de la lampara si a 50Hz, debo cortar la onda en no mas de 10mS en 60Hz será 1/60= 16mS aprox.  tiempo que toma una onda completa por lo tanto cada semiciclo toma alrededor de 8ms. he probado de mil formas y no me funciona, lo hago cada vez que entra a la interrupcion desactivo el triac, espero menos de 8ms y lo activo. La unica forma en que me funciona a medias es con Delays en microsegundos como lo muestro en el sgte programa pero asi solo logro 3 intensidades alta, media y nada, ademas que no tiene ningun sentido, pensé que era un problema con los delay del CCS, y lo probé con el timer0 arrojando lo mismo, ya no se que mas hacer, si alguien me puede ayudar se los agradeceria mucho. les adjunto el programa en CCS y el esquema.




/*
Dimmer gobernado por puerto serie
Setshomaru 2010_05_09
*/


#include <16F688.h>
#fuses XT,NOWDT,NOPROTECT,PUT,BROWNOUT   
#device ADC=10
#use delay(clock=4000000)
#use rs232(baud=4800, xmit=PIN_C4, rcv=PIN_C5)
#use standard_io(c)


#define  salida1_on        output_high(pin_c0)
#define  salida1_off       output_low(pin_c0)
#define  salida2_on        output_high(pin_c1)
#define  salida2_off       output_low(pin_c1)
#define  in1               input(pin_c2)
#define  in2               input(pin_c3)

int      i=1,cont=0;
int1     flag1=0;
byte     intensidad=0,intensidad2=0;
char     dato_pc;
int16    cuenta=0;
byte     recibe[64];                  //declaramos variables
byte     envia[64];

/////////////////////////////////////////////////////////////////////
//  subrutina que recibe datos del pc////////////////////////////////
////////////////////////////////////////////////////////////////////

#int_rda   
void rda_isr() {
 
  output_toggle(pin_c0);
  dato_pc=0x00;   
  if(kbhit()){   
     dato_pc=getc();
     intensidad=dato_pc;   //lo que reciba sera la intensidad de la luz
     printf("ok ");        //confirmacion dato recibido
  }
   
}

/////////////////////////////////////////////////////////////////////
//  interruciones externas///////////////////////////////////////////
/////////////////////////////////////////////////////////////////////

#int_ext

void interrup_RA2() { 

      cuenta=cuenta+1; //cuenta ingresos a la interrupcion
      switch (flag1){
      case 0: flag1=1; ext_int_edge(L_TO_H);break;// cambio los flacos de interrupcion
             
      case 1: flag1=0; ext_int_edge(H_TO_L);break;   
      }
     
     
      if(cuenta==120){  //entró 120 veces?
         output_toggle(pin_c0);// el led cambia de estado cada segundo
         cuenta=0;
      }
     
      salida2_off;            //desactivo triac
      delay_us(intensidad);   //espero para activacion                           
      salida2_on;             //activo triac
}

/////////////////////////////////////////////////////////////////////
//  bloque principal/////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////

void main(void) {

 
 
   intensidad=0;
   flag1 =0;
   set_tris_c(0xfc); //defino entradas y salidas
   salida1_on;       //pruebo salida 1
   delay_ms(500);
   salida1_off;
   delay_ms(500);
   salida2_on;       //pruebo salida2
   delay_ms(500);
   salida2_off;
   delay_ms(500);
   enable_interrupts(int_rda);   //habilito interrupciones puerto serial
   enable_interrupts(int_ext);   //habilito interrupciones externas
   ext_int_edge(H_TO_L);         //defino primer flaco interruciones
   setup_adc_ports (NO_ANALOGS); //no analogos
   enable_interrupts(global);    //habilito interruciones
   
   while (1)
   {
   delay_us(50);  //ciclo infito a la espera de interrupciones
   
   }
}
Título: Re: Dimmer con mando
Publicado por: setshomaru en 10 de Junio de 2010, 16:54:27
Se me olvidaba los valores que funcionan en microsegundos son de 0 a 255  cambiando de estado en 160 y 200, 0= todo, 160=medio, 255= bajo. Lo he probado tambien con la minifuente de Nocturno y es lo mismo.
Título: Re: Dimmer con mando
Publicado por: MLO__ en 11 de Junio de 2010, 16:42:14
Hola.

Yo quitaría ese printf de la interrupción serial, ya que en algunas versiones del CCS, se suelen desactivar las interrupciones (te aparece algun warning en la compilacion?).

Saludos
Título: Re: Dimmer con mando
Publicado por: setshomaru en 09 de Diciembre de 2010, 21:09:00
Muchas gracias por la repuesta, el problema era el optoacoplador al parecer si tienen detección de cruce por cero no funcionan.
Título: Re: Dimmer con mando
Publicado por: MGLSOFT en 10 de Diciembre de 2010, 15:19:20
Que optoacoplador terminaste usando?? :shock: :shock:
Título: Re: Dimmer con mando
Publicado por: setshomaru en 11 de Diciembre de 2010, 00:13:05
MOC3021, no tiene detector de cruce por cero y me trabaja a la perfección.
Título: Re: Dimmer con mando
Publicado por: Suky en 11 de Diciembre de 2010, 00:37:54
Muchas gracias por la repuesta, el problema era el optoacoplador al parecer si tienen detección de cruce por cero no funcionan.

Exactamente  ;-)
Título: Re: Dimmer con mando
Publicado por: setshomaru en 21 de Diciembre de 2010, 12:15:19
Buenos días compañeros,

Ahora tengo otra pregunta, se podrán controlar varios dimmers con un solo pic?, lo he tratado de hacer y me hace efectos no deseados les dejo el codigo:



/*
Dimmer gobernado por puerto serie rs485   
2010_12_03
*/


#include <18F452.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000)
#use i2c(master,sda=PIN_C4, scl=PIN_C3)       // Definición I2C estándar
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

#define  ON        output_high
#define  OFF       output_low
#define  tx_rs485  output_high(pin_c5)
#define  rx_rs485  output_low(pin_c5)
#define  dir_local 0xA2
#define  ejecutar  'X'
#define  pregunta  '?'
#define  enter     0X0D

//aqui se pueden cambiar los pines de los actuadores
int  act[16]   =  {pin_d2,pin_d3,pin_d4,pin_d1,pin_d0,pin_c2,pin_c1,pin_c0,
                   pin_b5,pin_b4,pin_b3,pin_b2,pin_b1,pin_d7,pin_d6,pin_d5};
                     
byte      i=1,cont2=0,i_buffer=0,i_act=0;
int16    cuenta=0;
byte     intensidad[16], i_cont=0, cont[16];
byte     buffer_in[32];
byte     buffer_out[32];
int1     buffer_rs485_lleno=0, z=0,flag_dim[16];

/////////////////////////////////////////////////////////////////////
//  subrutina que recibe datos del pc////////////////////////////////
////////////////////////////////////////////////////////////////////

#int_rda   
void rda_isr() {
 
  if(kbhit()){
 
     buffer_in[i_buffer] =getc();
   
     
     if( buffer_in[i_buffer]==0x7e){
         
         i_buffer=0;
       
     }
     if( buffer_in[i_buffer]==enter){
         buffer_rs485_lleno=1;
         i_buffer=0;
         tx_rs485;
         putc('R');
         rx_rs485;
     }
     i_buffer = i_buffer+1;
  }
   
}

/////////////////////////////////////////////////////////////////////
//  interruciones externas///////////////////////////////////////////
/////////////////////////////////////////////////////////////////////

#int_ext

void interrup_RB0() { 
       
      enable_interrupts(INT_TIMER0);         //activo int por timer0
      set_timer0(0);//11-40-----   
     
}

////////////////////////////////////////////////////////////////////////////////
//interrupciones por desborde de timer0
////////////////////////////////////////////////////////////////////////////////

#int_RTCC
void reloj_isr(){
 
   
   for(i_cont=0;i_cont<=15;++i_cont){
   
      cont[i_cont]++;                 //cuenta las veces que se entra a la int           
   
   if (cont[i_cont]==intensidad[i_cont]){ // de 1 a 80
      cont[i_cont]=0;                 //borro contador
     
      if(flag_dim[i_cont]==1){
      disable_interrupts(INT_TIMER0);
      ON (act[i_cont]) ;// el led cambia de estado cada segundo
      //delay_us(100);
      OFF(act[i_cont]);
      }
   }
   
   }     
}           
/////////////////////////////////////////////////////////////////////
//  bloque principal/////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
void analiza_buffer_rs485(){
   
   if(buffer_in[1]==dir_local){
      if(buffer_in[3]==ejecutar){
         intensidad[buffer_in[4]]=buffer_in[6];
         flag_dim[buffer_in[4]]=buffer_in[5];
         
      }
   }
   
   buffer_rs485_lleno=0;
   
}

void main(void) {

   //intensidad[i_cont]=5;
   for(i_cont=0;i_cont<=15;++i_cont){
      intensidad[i_cont]=30;
      flag_dim[i_cont]=0;
      cont[i_cont]=0;
   }
   
   rx_rs485;
   enable_interrupts(int_rda);   //habilito interrupciones puerto serial
   enable_interrupts(int_ext);   //habilito interrupciones externas
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2|RTCC_8_BIT); //ver cabecera                                                                                                                                         
   enable_interrupts(INT_TIMER0);         //activo int por timer0
   ext_int_edge(L_TO_H);         //defino primer flaco interruciones
   setup_adc_ports (NO_ANALOGS); //no analogos
   enable_interrupts(global);    //habilito interruciones
   flag_dim[0]=1;
   //intensidad[2]=40;
   //intensidad[3]=15;
   while (1)
   {
   rx_rs485;
   
   
   if(buffer_rs485_lleno==1){
      analiza_buffer_rs485();
     
   
   }
   
   
   }
}



Mientras utilice una sola salida todo bien, o todos tengan la misma intensidad funciona bien, pero si las intensidades son diferente se porta de forma irregular, será que no es posible?
Título: Re: Dimmer con mando
Publicado por: MLO__ en 21 de Diciembre de 2010, 13:34:42
Hola.

Si se puede. Mira aqui (http://www.todopic.com.ar/foros/index.php?topic=33140.0). También hice uno de 5 canales y va bien hasta ahora.

Saludos.
Título: Re: Dimmer con mando
Publicado por: MexaTronko en 24 de Noviembre de 2014, 23:26:34
Hola que tal estoy haciendo un dimmer pero tengo dudas acerca con la fuente de alimentación. Quiero alimentarlo con una fuente sin transformador que alimente el micro controlador que consume 1.65mAmp, un led que consume 10mAmp, Un moc3020 que consume 10mAmp, un TSOP1738TB1 que consume 5mAmp, un 4N33 que creo que consume 50mAmp. Tengo entendido que estas fuentes solo proporcionan alrededor de 20mA, entonces quisiera saber si es bueno alimentar con una fuente sin transformador o si a una de este tipo se puede diseñar para que proporcione más corriente o es mejor utilizar un transformador para la fuente. Espero que me puedan ayudar y corregir si me equivoque en los consumos de corriente de cada elemento, dejo un diagrama de la fuente.