Formula matematica termocupla

Hola amigos

He montado un sensor lm35 y funciona bien..... pero tambien me interesa montarlo con una termocupla y un ad595 pero no se como hacer la conversion matematica para el pic utilizando ADC=10

el codigo del lm35

Código:
delay_us(20);           //Retardo para que tenga tiempo de convertir
          Temperatura=read_adc(); //leemos la entrada analoga
          Temperatura=(Temperatura*300)/610; //Operacion para convertir
            if(TEMPERATURA!=Ayuda){//Si Temperatura es diferente a Ayuda
            lcd_gotoxy(1,2);  //Cursor en segunda linea
            printf(lcd_putc," %.2f Grados ",Temperatura);//Escribimos el resultado
            Ayuda=Temperatura;//Enviamos convercion a Temperatura
      }

Gracias por su ayuda
 
El AD595 da 10 mV/°C. Para 25 °C, entregará 0.250 V.

Si la tensión de referencia es de 5 V y el ADC tiene 10 bit, eso quiere decir que el valor máximo será 1024 para esos 5 V. La resolución entonces es de 5 V / 1024 niveles = 4.88 mV/nivel, que es casi el doble de resolución que la que entrega el AD595.

Si no te importa mucho la precisión, se puede aprovechar esto para hacer una cuenta sencilla (y muy rápida por parte del programa):
Código:
Temperatura = read_adc() / 2;
pero solo te daría un decimal significativo.

Aumentando la precisión, sería:
Código:
Temperatura = read_adc() * 0.48828125; // read_adc() * (5 / 1024) * (1 / 0.010)
Si quieres aún más precisión, debes reducir la tensión de referencia al adc, bajando de los 5V. Si, por ejemplo, no vas a medir más de 100 °C, entonces lo ideal sería tener un voltaje de referencia de 1 V, con lo que tendrás una resolución de 1 V / 1024 ≈ 1 mV por nivel, obteniendo resoluciones reales de décimas de °C.
 
Atrás
Arriba