duda con control de temperatura

Hola de nuevo
bueno aqui llevo a medio el proyecto de un control de temperatura, he utilizado el integrado max6675 para el que no lo conozca decirle que es una pequeña maravilla, es capaz de medir hasta 1000 grados centigrados y lleva compensacion de temperatura, que por cierto me pasa una cosa curiosa, y es que cuando lo pongo en marcha me mide una temp ambiente de 18 a 20 C, (normal), pero cuando le aplico calor con algun sistema calibrado ( tengo estacion de soldadura y pistolas de aire caliente) la temperatura que mide con respecto a estos aparatos es justo la mitad, sin embargo si configuro el dispositivo para que me coincida con el valor de temperatura de éstos, la temperatura ambiente me la indica doble ( aprox 40 grados), es algo que me trae de cabeza y agradeceria si alguien ha trabajado ya con este chip, que me explique cual es el problema.
bueno y por otro lado aqui tengo el codigo, no está terminado , es solo un esbozo que estoy utilizando para hacer unas pruebas, lo que hace por ahora simplemente es que al pulsar * me indica la temperatura de las dos sondas, al pulsar 0 me va al menu principal y al pulsar # me llevaría al menú de funcionamiento automático ( por ahora vacio).
problemas que se me plantean:
no se como controlar la temperatura, es decir necesitaria introducir un numero (de tres cifras maximo) y con esa cifra(que seria la temperatura a controlar) me mantuviese a la temperatura seleccionada, cuando llegue al valor, desconectaria y conectaria la fuente de calor para manter la temperatura.
si alguien me echase una mano con esa subrutina se lo agradeceria ya que a mi no me funciona correctamente.
aqui les dejo el esquema en proteus y el codigo
un saludo
 
Subí las rutinas y el esquema para poder ayudarte.
Que tipo de sonda usas? en donde pensás utilizar este control de temperatura?.
Por lo general en un Pirometro para altas temperaturas es normal que la temperatura ambiente se indique de forma erronea ,porque?:la razón de ésta es que la sonda y el instrumento estan calibrados para medir un rango especifico de temperatura, por ejemplo
de 500 grados Centigrados a 900 grados centigrados:entonces no es importante que lea de forma real la temperatura ambiente,si bien hoy en dia con la gran variedad de microcontroladores y sus perifericos es posible lograr esa gama de temperaturas,aunque en pirometros industriales tenes la posibilidad de variar el rango,el ajuste de "0" y otras variables más, inclusive el tipo de sonda; PERO, y muy importante es saber donde y en que situación se va a utilizar .En un horno es muy distinto que en un motor (por ejemplo) . En un horno, vamos a suponer, de laboratorio las condiciones ambientales son "especificas" ,en un motor ya sea de automovil camion son totalmente diferentes las temperaturas estan supeditadas a varios factores.
Esto es a modo de ejemplo .
pero según lo que vos sugeris es para control de tipo industrial no?
Saludos.
 
Hola
gracias por tu respuesta, se me olvido comentar la aplicación práctica que voy a usar, y es en una maquina de reflow, para poder desoldar bga´s.
utilizo una placa inferior (un calentador de resistencia halógena) para precalentar la placa, un vez que la placa de circuito impreso ha alcanzado los 100 grados se pondrá el calentador superior, que es una lámpara de infrarrojos para hacer el calentamiento del bga y poder desoldarlo.
para tomar la temperatura utilizo don sondas tipo K, estos termopares los pongo de manera que pueda medir la temperatura de la placa inferior ( preheater) y la otra sonda la pongo para medir en todo momento la temperatura del bga a desoldar.
en un princio iba a controlar la temperatura ,modificando la corriente de la lampara para mantener la temperatura, para ello utilizé un dimmer con triac para hacerlo (gracias a este foro, me dieron una gran ayuda) pero luego vi que realmente la temperatura no se controlaba como yo creía asi que para simplificar he optado por hacerlo simplemente apagando y encendiendo la lámpara para seguir manteniendo la temperatura.
 
El problema de controlar temperaturas es el tiempo que tarda en responder el sistema, es decir, si yo enciendo en este momento el cambio lo vere en los proximos 5 minutos (por ejemplo), por eso se acostumbra usar controles PID que tratan de "predecir" como se comportara el sistema, pero tienen el problema de que hay que saber calcularlos y ajustarlos para la aplicacion especifica
 
ok
por otro lado tengo una rutina hecha para poder introducir datos (un valor de 3 digitos) pero no me funciona.
alguien puede sacarme de este atasco?
lo que quiero es que utilizando el codigo que tengo me de la opcion de poder introducir por el teclado 3 digitos y esa variable guardarla en una direccion de la eeprom
 
Exacto si queres tener exctitud tenes un minimo de espera para que el sistema se estabilize,como te dije antes para poder ayudarte seria conveniente que subas esquema de lo que has hecho y rutinas que tengas.
Tambien tenés que tener cuidado con el tema de encender y apagar las lamparas no es lo más aconsejable, por su vida útil, el ideal es usar un dimmer,o por lo menos un encendido secuencial .me explico?.-
cual es la maxima temperatura que tenes que manejar?
probaste con otro tipo de sonda una J o PT?.
 
Atrás
Arriba