Autor Tema: Control Temperatura para cautin  (Leído 20633 veces)

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

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Control Temperatura para cautin
« en: 24 de Julio de 2011, 21:37:13 »
Hola.

Hace rato que quería montarme un control de temperatura para mi cautin porque cuando dejaba de soldar un rato siempre quedaba al máximo y eso hace que las puntas se ensucien mucho y quedan negras y casi no duran  :( ... vi por ahí algunos diseños con unos diodos y demás, pero quise hacerlo con un PIC y con control de fase.

El sistema que diseñe tiene como base al PIC12F629, el esquemático:


La board:


puse pulsadores grandes ... porque soy torpe con los dedos  :D

La tarjeta ya terminada:


El funcionamiento es el siguiente:

El sistema tiene dos pulsadores con los que se puede seleccionar entre tres opciones de potencia:

  • Pulsador CHANGE: Cada vez que se presione va a cambiar el nivel de potencia entre máximo y medio-bajo.
  • Pulsador RESET: Cada vez que se presione el nivel de potencia pasa al mínimo.

y tiene un LED indicador:

  • Potencia Máxima: LED encendido continuamente.
  • Potencia Media: LED titilante.
  • Potencia Mínima: LED apagado.

Para el cruce por cero conecté directamente una resistencia de 1.5M al PIC ... y aunque temeroso  :2] al medir me pude dar cuenta que iba muy bien:


El código del PIC:
Código: C#
  1. #include<12F629.h>
  2. #fuses INTRC_IO,MCLR,NOBROWNOUT,NOWDT,PROTECT
  3. #use delay(clock=4M)
  4.  
  5. #zero_ram
  6.  
  7. #define subida                  1
  8. #define bajada                  0
  9. #define on                              output_low
  10. #define off                             output_high
  11. #define toggle                  output_toggle
  12.  
  13. #define GATE                    pin_a0
  14. #define CHANGE                  pin_a4
  15. #define LED                             pin_a1
  16.  
  17. #define ApagarLED               on(LED)
  18. #define EncenderLED             off(LED)
  19.  
  20. struct BytesFase
  21. {
  22.         int SetPoint;
  23.         short Flanco;
  24.         int IntsTimer;
  25.         short Estado;
  26.         short TLed;
  27. } CtrlFase;
  28.  
  29. #int_EXT
  30. void ZeroCross_isr(void)
  31. {
  32.         if(CtrlFase.Flanco==subida)
  33.         {
  34.                 enable_interrupts(INT_TIMER0);
  35.                 ext_int_edge(H_TO_L);
  36.                 CtrlFase.Flanco = bajada;
  37.                 if(CtrlFase.TLed)
  38.                         toggle(LED);
  39.         }
  40.         else
  41.         {
  42.                 enable_interrupts(INT_TIMER0);
  43.                 ext_int_edge(L_TO_H);
  44.                 CtrlFase.Flanco = subida;
  45.         }
  46. }
  47.  
  48. #int_TIMER0
  49. void TimeGate_isr(void)
  50. {
  51.         CtrlFase.IntsTimer++;
  52.         if(CtrlFase.IntsTimer>CtrlFase.SetPoint)
  53.         {
  54.                 on(GATE);
  55.                 delay_us(150);
  56.                 off(GATE);
  57.                 CtrlFase.IntsTimer=0;
  58.                 disable_interrupts(INT_TIMER0);
  59.         }
  60.         set_timer0(0);
  61. }
  62.  
  63. void main(void)
  64. {
  65.         setup_comparator(NC_NC_NC_NC);
  66.         setup_timer_0(RTCC_INTERNAL | RTCC_8_BIT | RTCC_DIV_1);
  67.         ext_int_edge(L_TO_H);
  68.         enable_interrupts(INT_EXT);
  69.         enable_interrupts(GLOBAL);
  70.         CtrlFase.Flanco=subida;
  71.         CtrlFase.SetPoint=20;
  72.         ApagarLED;
  73.  
  74.         while(true)
  75.         {
  76.                 if(input_state(CHANGE))
  77.                 {
  78.                         delay_ms(50);
  79.                         if(input_state(CHANGE))
  80.                         {
  81.                                 CtrlFase.Estado = !CtrlFase.Estado;
  82.                                 switch(CtrlFase.Estado)
  83.                                 {
  84.                                         case 0:
  85.                                                 CtrlFase.SetPoint = 14;
  86.                                                 CtrlFase.TLed = 1;
  87.                                                 break;
  88.        
  89.                                         case 1:
  90.                                                 CtrlFase.SetPoint = 4;
  91.                                                 CtrlFase.TLed = 0;
  92.                                                 EncenderLED;
  93.                                                 break;
  94.                                        
  95.                                 }
  96.                         }
  97.                         while(input_state(CHANGE));
  98.                 }
  99.         }
  100. }

Aquí pueden descargar el pdf para imprimir.

Saludos
El papel lo aguanta todo

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Control Temperatura para cautin
« Respuesta #1 en: 24 de Julio de 2011, 22:30:27 »
Muy bueno, gracias por compartirlo
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado leobiofa

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 371
Re: Control Temperatura para cautin
« Respuesta #2 en: 24 de Julio de 2011, 23:05:37 »
Gracias

Se ve interesante el proyecto

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: Control Temperatura para cautin
« Respuesta #3 en: 24 de Julio de 2011, 23:52:17 »
En tu circuito has asumido que el común es 5v ?? y que la salida despues del 470nf es gnd ? esta bien eso? O esq t has confudido, pues nunca lo he trabajdo asi.


Bueno el proyecto!

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Control Temperatura para cautin
« Respuesta #4 en: 24 de Julio de 2011, 23:55:07 »
gracias por compartir :-/
"Nada es imposible, no si puedes imaginarlo"

Desconectado NANO1985

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1698
    • Desarrollos Tecnologicos - Tucuman - Argentina
Re: Control Temperatura para cautin
« Respuesta #5 en: 24 de Julio de 2011, 23:55:26 »
me encanto!! muy buen proyecto hermano!
"La inquebrantable voluntad de vencer"
"hay dos cosas infinitas... El universo y la Estupidez humana" Albert Einstein
 "El sabio actua sin anhelos, permanece sosegado,... así no es afectado por el resultado de sus acciones sean éstas el triunfo o el fracaso"
- UNIVERSIDAD TECNOLOGICA NACIONAL - FACULTAD REGIONAL TUCUMAN -

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: Control Temperatura para cautin
« Respuesta #6 en: 25 de Julio de 2011, 00:00:00 »
Porcierto, mas interesante seria que cuando dejara de detectar movimiento en el propio cautin la potencia se ponga en minima o, mejor aun, se apage =D Porque a mi tb me ha pasado lo que comentas pero es una cosa que me voy y cunado regreso (despues de un par de horas) me doy cuenta que deje prendido el cautin y no fue porque quise, sino porq tuve que irme rapido ovlidandome de todo.

De esta forma, pensando en algo rapido, todo el circuito (en una pequeña cajita) iria en la parte superior del cautin junto con un acelerometro (talves?) o con uno de esos sensores de choque de los autos, y asi el PIC sabra el tiempo entre cada bivracion, entendiendolo como que aun se esta usando el cautin. Despues de un tiempo sin esta prescencia (talves de 1 min), se va dsiminuyendo la potencia hasta terminar por apagarlo. Bueno es una idea, es que me a gustado mucho tu proyecto  :mrgreen:

Exitos, saludos.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Control Temperatura para cautin
« Respuesta #7 en: 25 de Julio de 2011, 01:03:23 »
Porcierto, mas interesante seria que cuando dejara de detectar movimiento en el propio cautin la potencia se ponga en minima o, mejor aun, se apage =D Porque a mi tb me ha pasado lo que comentas pero es una cosa que me voy y cunado regreso (despues de un par de horas) me doy cuenta que deje prendido el cautin y no fue porque quise, sino porq tuve que irme rapido ovlidandome de todo.

De esta forma, pensando en algo rapido, todo el circuito (en una pequeña cajita) iria en la parte superior del cautin junto con un acelerometro (talves?) o con uno de esos sensores de choque de los autos, y asi el PIC sabra el tiempo entre cada bivracion, entendiendolo como que aun se esta usando el cautin. Despues de un tiempo sin esta prescencia (talves de 1 min), se va dsiminuyendo la potencia hasta terminar por apagarlo. Bueno es una idea, es que me a gustado mucho tu proyecto  :mrgreen:

Exitos, saludos.

Interesante,, y q te parece un golpe a la mesa ¿?,, o cuando estes soldando que lo dejas muy quieto ?.. No es mas simple un switch en donde lo apoyas? Y si pensas que esto te peude evitaria que no podas mover la base a cualquier lado, podrias poner un iman en la base y utilizar un reed switch que miestras no maneje mucha corriente te va a andar largo rato,, entonces cuando lo dejas en la base, un circuito detecte el cierre del reed switch y te lo apague de la formas que mas te gusta :D.

Ami las unicas puntas que se ponian negras si lo dejabas un ratito al soldador eran las de metal,, son horribles hasta para soldar.. Pero me compre una punta ceramica de las mas baratas que encontre y solucionado completamente... Obviamente hable de un soldador de 40W ,, tendria que ver si vienen para la estacion de soldado xD ^^

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
Re: Control Temperatura para cautin
« Respuesta #8 en: 25 de Julio de 2011, 01:49:26 »
Ten cuidado al tocar los pulsadores que si se te van los dedos a otras partes del circuito puedes hacerte daño.

Muy útil el circuito.

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: Control Temperatura para cautin
« Respuesta #9 en: 25 de Julio de 2011, 08:10:11 »
En tu circuito has asumido que el común es 5v ?? y que la salida despues del 470nf es gnd ? esta bien eso? O esq t has confudido, pues nunca lo he trabajdo asi.
Bueno el proyecto!

Hola Jeremylf, analizando la fuente, está correcta... en un semiciclo actua un diodo, cargando el capacitor de la fuente, en el otro semiciclo, actua el otro diodo, para cerrar la alterna del cap. de 470n...

Buen trabajo MLO! felicitaciones!

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

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

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Control Temperatura para cautin
« Respuesta #10 en: 25 de Julio de 2011, 17:21:57 »
Hola.

Gracias por los comentarios y por las ideas  :-/ :-/ :-/ suenan bien  ... suenan muy bien .... por economía me iría por lo del sensor magnético, pero usaría uno de efecto hall mejor  :mrgreen: quise hacerlo con pulsadores porque la idea es que no se apague totalmente porque esto haría bajar mucho la temperatura de la punta y habría que esperar demasiado cuando lo vuelvo a encender ... pero esta muy buena la idea de contar mas de un tiempo cuando este en el punto medio-bajo (unos 5min) y si sobrepasa ese límite, apagarlo.

Ten cuidado al tocar los pulsadores que si se te van los dedos a otras partes del circuito puedes hacerte daño.
Hay que tener cuidado con los dedos jejeje eso sí .... por eso puse pulsadores grandes ... pero ya me gustó la idea del sensor magnético  :D

En tu circuito has asumido que el común es 5v ?? y que la salida despues del 470nf es gnd ? esta bien eso? O esq t has confudido, pues nunca lo he trabajdo asi.
Va bien así, esa fuente la saque de una nota de aplicación de microchip  ;-) .. ya el maestro todopic lo explica mejor (gracias maestro  :) )

Voy a buscar de esas puntas cerámicas a ver ... pero acá donde vivo dudo que las encuetre  :(

Saludos
El papel lo aguanta todo

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Control Temperatura para cautin
« Respuesta #11 en: 26 de Julio de 2011, 02:11:02 »
Ahora que veo este circuito me llamo la atencion algo que super ver en una plaqueta de un sistema de porton levadizo.. Mandaste una resistencia de la alterna directamente al PIC no es asi ? esa de 1.5Mohm

Por que cuando vi el circuito este que decia,  una de las salidas del trafo de 12V iba derecho a una resistencia y a una pata del PIC, cuando lo vi me quede mudo.. siempre que me pase poniendo tensiones de mas en las entradas las rompi.. es por esto que quede asombrado. Esto es alguna particularidad de algun periferico ?.. Busque en el datasheet y en la seccion  electrical  dice


Código: [Seleccionar]
Voltage on all other pins with respect to VSS ........................................................................... -0.3V to (VDD + 0.3V)
Tambien pense que al ponerlos como entradas, o sea de alta impedancia esto no seria problema para el PIC,, pero jamas me largue a probar por las dudas de quemar alguno..

Como dije.. usas algun periferico en especial ? el Comparador?

Me intriga saber que se le peude poner una señal alterna que pase por debajo de VSS y por encima de VDD sin que muera el PIC xD.. O el datasheet especifica que ese pin "aguanta todo" ? xD preguntas :P

Otra de las malas cosas de la punta de metal es: Que se comen con el tiempo.. el estaño se funde en un solo lado. a no ser q la limpies y estañes rapidamente. Ojala consigas de la otra.. xD
« Última modificación: 26 de Julio de 2011, 02:18:22 por KILLERJC »

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: Control Temperatura para cautin
« Respuesta #12 en: 26 de Julio de 2011, 09:25:18 »
Me intriga saber que se le peude poner una señal alterna que pase por debajo de VSS y por encima de VDD sin que muera el PIC xD.. O el datasheet especifica que ese pin "aguanta todo" ? xD preguntas :P

Hola, la entrada de los pic, poseen un par de diodos, como proteccion por estatica, y es aprovechada en esta configuracion... al ser una R de valor tan elevado (1,5 megohms) la intensidad es muy pequeña, y perfectamente soportable por la entrada del pic... esto está documentada en nota de aplicacion como detector de cero...  ;-)

Saludos!
Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

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

Desconectado Felixls

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 300
Re: Control Temperatura para cautin
« Respuesta #13 en: 26 de Julio de 2011, 11:12:06 »
Excelente MLO, gracias por compartirlo!!

No se si están de acuerdo, pero en lugar de una resistencia de 1.5M yo acostumbro a poner dos R en serie (una de 1.5M y la otra de 1M) ya que la probabilidad de fallo de dos resistencias es más baja que una.

saludos!

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Control Temperatura para cautin
« Respuesta #14 en: 26 de Julio de 2011, 13:31:06 »
Gracias OH GRAN SEÑOR todopic  :mrgreen:

Ya lo encontre xD

Código: [Seleccionar]
http://ww1.microchip.com/downloads/en/AppNotes/00521c.pdf
Felixls sabes que jamas me puse a pensar que pudiera fallar una resistencia de esas :S,, pero aveces es bueno tenerlo en cuenta. En el por SI LAS DUDAS. xD
« Última modificación: 26 de Julio de 2011, 13:38:54 por KILLERJC »


 

anything