Ayuda de temperatura NTC

1

Acabo de comenzar a escribir un programa que representa la temperatura de un termistor NTC TT102. Primero probé el famoso divisor de voltaje, pero pronto descubrí que no es bueno. Así que decidí usar la fórmula NTC para obtener la temperatura pero parece que no funciona. Dado que la fórmula da como resultado números flotantes, probé tales variables flotantes pero aún no tengo buenos resultados. ¿Que crees que deberia hacer?

    
pregunta MHtarokh

3 respuestas

2

Los pasos que suelo utilizar con un termistor NTC y un Arduino son los siguientes:

  1. Configure el termistor como la mitad de un divisor de voltaje entre Vcc y GND.
  2. Use el ADC para leer el valor en el punto central.
  3. Usa algunas matemáticas para calcular el voltaje que representa la lectura.
  4. Use ese voltaje para calcular la resistencia actual del termistor.
  5. Introduzca ese valor en la fórmula NTC junto con las especificaciones del termistor.

El código que suelo usar para hacer esto último es:

double Res2Kelvin(double R, double A, double B, double C)
{
    double T;
    T = (1 / (A + B * log(R) + C*(pow(log(R),3))));
    return T;
}

R es la resistencia, y A, B y C son los coeficientes para el termistor NTC. (Para el termistor que uso estos son 0.0015205025, 1.0875337E-4 y 3.2368632E-7 respectivamente - la hoja de datos debería proporcionarle estos.)

Lo que devuelve la temperatura actual en Kelvin. Luego tengo que convertir de Kelvin a lo que quieras para trabajar, por ejemplo, para Celcius, solo resta 273.15.

    
respondido por el Majenko
2

No parece existir un TT102, por lo que usaré otro NTC para la solución.

Los NTC son altamente no lineales, y los fabricantes publican tablas largas con valores de resistencia contra la temperatura. Tendrá que implementar esa tabla en su microcontrolador para la búsqueda, o puede linearize el NTC. Una resistencia paralela más una resistencia en serie para el divisor proporciona un comportamiento lineal de 0 ° a 60 °:

El voltaje de salida es 8V a 0 ° C y 3.2V a 60 ° C. Así que la función de transferencia es

\ $ V = -0.08 \ cdot T + 8V \ $

con \ $ T \ $ en ° C. Si almacena este búfer, puede reducirlo a [2V, 5V] y enviarlo al ADC. También puede usar un amplificador de diferencia para obtener un rango [0V, 5V], pero esto le dará una resolución más alta, no una precisión más alta, ya que el gráfico no será perfectamente lineal de todos modos.

También puedes usar un puente de Wheatstone, como sugiere Johan, pero nuevamente, obtendrás una resolución más alta que es un poco inútil si tienes que interpolar la tabla de búsqueda.

    
respondido por el stevenvh
0
  

Primero probé el famoso bus divisor de voltaje que pronto descubrí que es   no tan bueno.

También existe la posibilidad de colocar el NTC en un puente de wheatstone y hacer la medición sobre el puente.

enlace

    
respondido por el Johan

Lea otras preguntas en las etiquetas