Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial Internet of Things >> Incrustado

Realización de mediciones de precisión con sensores de temperatura de silicio

La industria de la electrónica exige cada vez más niveles de precisión y la detección de temperatura no es una excepción. Existen muchas soluciones de detección de temperatura, cada una con sus ventajas e inconvenientes. Los sensores de temperatura de silicio, aunque son bastante lineales, nunca han ofrecido la precisión de otras soluciones. Sin embargo, los avances recientes en la detección de temperatura de silicio significan que ahora se puede lograr una alta resolución y precisión con una solución de silicio.

Un nuevo congelador

Era marzo de 2020 y el Reino Unido estaba a punto de entrar en bloqueo. El mundo se estaba abasteciendo de alimentos por si los supermercados cerraban y el futuro parecía incierto. Luego, el congelador de la casa Bramble dejó de funcionar. Con las palabras de la canción de Kenny Rogers, "You Picked a Fine Time to Leave me ..." resonando en mi cabeza, buscamos en línea un nuevo reemplazo.

Unos días más tarde llegó nuestro nuevo congelador, completo con una pantalla digital de temperatura en el panel frontal, como era el deseo de la Sra. Bramble. El ajuste recomendado era -18 ° C y después de una hora, el aparato estaba a la temperatura correcta y listo para aceptar alimentos. Era escéptico sobre la precisión de la lectura de temperatura, pero no me importaba siempre que congelara la comida. Un problema, sin embargo, una mente ingeniera es una mente inquieta, y después de días de la lectura digital aparentemente sabia sin pestañear mirándome, desafiándome con sus pronunciamientos confiados, rompí. Tuve que probar las afirmaciones de precisión de esta nueva incorporación a nuestra cocina.

Sensores de temperatura

Existe una amplia variedad de sensores de temperatura utilizados en aplicaciones industriales, cada uno con ventajas e inconvenientes. Dado que muchos textos detallan el funcionamiento de varios sensores de temperatura, no repito los detalles aquí, pero ofrezco un resumen a continuación.

Termopares

Los termopares proporcionan una forma moderadamente precisa y de bajo costo de medir temperaturas muy altas. Dependen de un voltaje que se genera entre dos uniones, cada una hecha de metales diferentes, mantenida a diferentes temperaturas, como descubrió Thomas Seebeck en 1821. En el caso de un termopar tipo K (hecho de las aleaciones Chromel y Alumel) produce un voltaje de aproximadamente 41μV / ° C y se puede utilizar para medir temperaturas superiores a 1000 ° C. Sin embargo, el efecto Seebeck se basa en una diferencia de temperatura entre dos uniones, por lo que mientras que la unión "caliente" mide la temperatura de interés, la unión "fría" debe mantenerse a una temperatura conocida. Irónicamente, se requiere otro sensor de temperatura en la unión fría para medir la diferencia de temperatura y partes como el AD8494 proporcionan la solución perfecta para hacer esto. Dado que los termopares son físicamente pequeños, tienen una masa térmica baja, por lo que dan una respuesta rápida a los cambios de temperatura.

RTD

Para medir temperaturas moderadas (<500 ° C), los detectores resistivos de temperatura (RTD) son ampliamente utilizados por la industria. Estos dispositivos consisten en un elemento metálico que exhibe un cambio positivo en la resistencia con la temperatura, más comúnmente platino. De hecho, el sensor PT-100 es el RTD más utilizado en la industria y recibe su nombre porque está hecho de platino (PT) y tiene una resistencia de 100 Ω a 0 ° C. Si bien estos dispositivos no miden la alta temperatura de un termopar, son altamente lineales y su lectura es repetible. Un PT100 necesita una corriente de conducción precisa, creando una caída de voltaje precisa a través del sensor que es proporcional a la temperatura. La resistencia de los cables de conexión del PT100 crea un error en la medición de la resistencia del sensor, por lo que la detección de Kelvin es típica, lo que da como resultado sensores de 3 o 4 cables.

Termistores

Si se requiere una solución de bajo costo y el rango de temperatura es bajo, a menudo es suficiente un termistor. Estos dispositivos son altamente no lineales, con una característica basada en la ecuación de Steinhart Hart, que produce una reducción de la resistencia al aumentar la temperatura. El beneficio de un termistor es que el cambio de resistencia es grande con pequeños cambios de temperatura, por lo que se puede lograr un alto nivel de precisión a pesar de su no linealidad. Los termistores también cuentan con una rápida respuesta térmica. Las no linealidades de cada termistor están bien definidas, por lo que se pueden calibrar utilizando componentes como el LTC2986.

Diodos, diodos en todas partes, pero no un (Vbe) Drop to Sink ...

Finalmente, para probar la veracidad del nuevo miembro de la casa, opté por un sensor de temperatura de silicio Funcionan directamente, no necesitan compensación de temperatura de unión fría ni linealización, están disponibles con salidas analógicas y digitales y vienen precalibrados . Sin embargo, hasta hace poco, solo ofrecían una precisión moderada. Si bien son lo suficientemente buenos para indicar el estado de salud de los equipos electrónicos, nunca han sido lo suficientemente precisos para medir, digamos, la temperatura corporal, lo que generalmente requiere una precisión de ± 0,1 ° C (de acuerdo con la norma ASTM E1112). Eso ha cambiado con el reciente lanzamiento de los sensores de temperatura de silicio ADT7422 y ADT7320 que pueden medir a resoluciones de ± 0.1 ° C y ± 0.2 ° C respectivamente.

Un sensor de temperatura de silicio aprovecha la dependencia de la temperatura del Vbe de un transistor , según lo dado por la ecuación de Ebers Moll, aproximado por:

donde Ic es la corriente del colector, Es es la corriente de saturación inversa del transistor, q es la carga de un electrón (1,602 x 10 -19 Culombios), k es la constante de Boltzmann (1,38 x 10 -23 ) y T es la temperatura absoluta.

La expresión anterior para la corriente del colector también es válida para la corriente en un diodo; entonces, ¿por qué cada circuito de aplicación usa un transistor y no un diodo? En realidad, la corriente en un diodo también incluye una corriente de recombinación resultante de la recombinación de electrones con huecos a medida que pasan a través de la región de agotamiento de la unión pn y esto presenta una no linealidad de la corriente del diodo con Vbe y temperatura. Esta corriente también aparece en un transistor bipolar, pero fluye hacia la base del transistor, por lo que no aparece en la corriente del colector, por lo que la no linealidad es mucho menor.

Reorganizar lo anterior da

Es es pequeño en comparación con Ic , por lo que podemos ignorar el "1" término en la ecuación anterior. Ahora podemos ver que Vbe cambia linealmente de acuerdo con un cambio logarítmico en Ic . También podemos ver que si Ic y es son constantes entonces Vbe cambia linealmente con la temperatura, ya que k y q también son constantes. Es una tarea fácil forzar una corriente de colector constante en un transistor y medir cómo el Vbe cambia con la temperatura.

Es está relacionado con la geometría del transistor y tiene una fuerte dependencia de la temperatura. Como muchos dispositivos de silicio, su valor se duplica con cada aumento de temperatura de 10 ° C. Si bien el efecto de este cambio en la corriente se reduce en 'ln' función todavía tenemos el problema de que el valor absoluto de Vbe cambia de transistor a transistor y, por lo tanto, se necesita calibración. Así que los prácticos sensores de temperatura de silicio utilizan dos transistores idénticos y fuerzan una corriente de colector de Ic en uno y 10 Ic en el otro. Los transistores idénticos y las corrientes ratiométricamente precisas son fáciles de fabricar en un circuito integrado, razón por la cual la mayoría de los sensores de silicio utilizan esta arquitectura. El cambio logarítmico en la corriente provoca un cambio lineal en Vbe y la diferencia en el Vbe A continuación, se mide s.

De la ecuación anterior, para dos transistores mantenidos a la misma temperatura , la diferencia entre sus Vbe "S está dado por

desde

Podemos ver eso

Forzando diferentes corrientes a través de cada transistor y midiendo la diferencia en Vbe , hemos eliminado las Es no lineales término, el efecto de diferentes Vbe absolutos y todos los demás efectos no lineales asociados con la geometría del transistor. Desde k , q y ln 10 son todos constantes, el cambio en Vbe es proporcional a la temperatura absoluta (PTAT). Para una diferencia de 10 veces en las corrientes, la diferencia en los dos Vbe Cambia linealmente con la temperatura a aproximadamente 198μV / ° C. En la Figura 1 se muestra un circuito simplificado para lograr esto.


Figura 1. Un circuito básico para medir la temperatura.

Las corrientes de la Figura 1 deben elegirse cuidadosamente. Si la corriente es demasiado alta, el autocalentamiento significativo y las caídas de voltaje a través de las resistencias internas dentro del transistor corrompen el resultado. Si la corriente es demasiado baja, las corrientes de fuga dentro del transistor añaden errores importantes.

También debe tenerse en cuenta que las ecuaciones anteriores se relacionan con el recopilador corriente del transistor, mientras que la Figura 1 muestra un emisor constante corriente que se inyecta en el transistor. Los transistores se pueden diseñar de manera que la relación de corriente entre colector y emisor esté bien establecida (y cercana a la unidad), de modo que la corriente del colector sea proporcional a la corriente del emisor.

Este es solo el comienzo de la historia. Para obtener una precisión de ± 0,1 ° C con un sensor de temperatura de silicio, es necesario realizar una caracterización y un recorte exhaustivos.

¿Es un pájaro? ¿Es un avión?

No, es un super termómetro. Sí, existen. El sensor de temperatura de silicona sin calibrar debe colocarse en un baño lleno de aceite de silicona y calentarse a una temperatura precisa, medida con un super termómetro. Estos dispositivos pueden medir con una precisión superior a cinco lugares decimales. Los fusibles dentro del sensor se funden para ajustar la ganancia del sensor de temperatura y así linealizar su salida usando la ecuación y =mx + C . El aceite de silicona proporciona una temperatura muy uniforme, por lo que se pueden calibrar muchos dispositivos en un solo ciclo.

El ADT7422 tiene una precisión de ± 0,1 ° C, en un rango de temperatura de 25 ° C a 50 ° C. Este rango de temperatura se centra alrededor de la temperatura corporal humana típica de 38 ° C, lo que hace que el ADT7422 sea ideal para un control preciso de los signos vitales. Para aplicaciones industriales, el ADT7320 está recortado, por lo que tiene una precisión de ± 0,2 ° C, pero en un rango de temperatura más amplio de -10 ° C a + 85 ° C.


Figura 2. El ADT7422 montado en una placa de circuito impreso de 0,8 mm de grosor

Sin embargo, la calibración del sensor de temperatura de silicio no es el único problema. Al igual que con las referencias de voltaje extremadamente precisas, las tensiones en la matriz pueden dañar la precisión del sensor y la expansión térmica de la PCB, el marco de plomo, la moldura de plástico y las almohadillas expuestas deben tenerse en cuenta. El proceso de soldadura también agrega sus propios problemas. El proceso de reflujo de soldadura aumenta la temperatura de una pieza a 260 ° C, lo que hace que el empaque de plástico se ablande y el marco de plomo del troquel se distorsione, de modo que cuando la pieza se enfría y el plástico se endurece, se bloquea una tensión mecánica en el troquel. Los ingenieros de Analog Devices dedicaron muchos meses de delicada experimentación para descubrir que un grosor de PCB de 0,8 mm era el punto óptimo perfecto y que se podía lograr una precisión de ± 0,1 ° C, incluso después de soldar.

Dentro del software

La mayor parte del software del sistema se ocupa de formatear los datos del ADT7320 y mostrarlos en la pantalla LCD. Obtener los datos del ADT7320 es trivial. Cuando se inicializa el procesador, tanto la línea CS como la SCLK se establecen en alto y la línea SCLK permanece inactiva en alto entre conversiones. Luego, la línea CS se baja para iniciar una transacción de datos. Con SPI, los datos se leen en el ADT7320 en el borde ascendente de la línea SCLK y salen en el borde descendente. El código siguiente detalla la rutina de inicialización.

Para restablecer la interfaz serial, la línea CS se toma baja, la línea DOUT se toma alta y el SCLK se oscila 40 veces. Luego, la línea CS se eleva. Esto registra 40 '1 en el ADT7320, restableciendo la interfaz en serie. Se necesita un retraso de al menos 500us después de que se reinicia el bus SPI.

El siguiente bloque de código envía el byte de comando al ADT7320 indicándole si la transacción es de lectura o escritura y a qué registro dirigirse. La línea

data =0b00001000;

indica al ADT7320 que escriba para registrar 0x01. Luego, el ADT7320 se programa para generar datos a una resolución de 16 bits usando la línea

data =0b10000000;

La línea DOUT está preacondicionada a "0", el MSB del byte de datos se interroga y la línea DOUT se establece en alto si el MSB es "1". La línea SCLK se eleva para registrar los datos en el ADT7320.

 void reset_adt7320 (void) / * inicializar ADT7320 * / {unsigned char n, data; / * restablecer la interfaz serial * / clearbit (PORTA, CS); setbit (PORTA, DOUT); para (n =40; n> 0; n--) {clearbit (PORTA, SCLK); setbit (PORTA, SCLK); } Setbit (PORTA, CS); delay_10ms (); / * debe esperar> 500us después del reinicio * / / * configurado en modo de 16 bits * / clearbit (PORTA, CS); datos =0b00001000; / * borrar bit 6 (escritura), reg # 001 * / / * enviar byte de comando * / para (n =8; n> 0; n--) {clearbit (PORTA, SCLK); clearbit (PORTA, DOUT); / * condición previa DOUT * / if checkbit (data, (n-1)) {setbit (PORTA, DOUT); } Setbit (PORTA, SCLK); / * datos de reloj en SCLK ascendente * /} datos =0b10000000; / * conversión continua, 16 bits * / / * enviar byte de datos * / para (n =8; n> 0; n--) {clearbit (PORTA, SCLK); clearbit (PORTA, DOUT); / * condición previa DOUT * / if checkbit (data, (n-1)) {setbit (PORTA, DOUT); } Setbit (PORTA, SCLK); } Setbit (PORTA, CS);} 

La llamada a la función para obtener los datos de temperatura es similar a la que se muestra a continuación. La línea

data =0b01010000;

le dice al ADT7320 que lea el registro 2 para los datos de 16 bits.

Luego, el código espera al menos 240 ms para que el ADT7320 realice una conversión de temperatura. Luego, se registran 16 bits de datos de temperatura, luego la línea CS se establece en alto.

 clearbit (PORTA, CS); / * datos =byte de comando * / datos =0b01010000; / * modo de lectura, registro 2 * / / * leer ADT7320 * / para (n =8; n> 0; n--) {clearbit (PORTA, SCLK); clearbit (PORTA, DOUT); / * condición previa DOUT * / if checkbit (data, (n-1)) {setbit (PORTA, DOUT); } Setbit (PORTA, SCLK); } Delay_150ms (); / * conversión de temperatura * / delay_150ms (); / * leer datos de temperatura * / para (n =16; n> 0; n--) {clearbit (PORTA, SCLK); if checkbit (PORTA, DIN) {setbit (temp, (n-1)); } Setbit (PORTA, SCLK); } Setbit (PORTA, CS); 

El conjunto de códigos completo está disponible aquí.

Entonces, ¿qué tan frías están mis salchichas, exactamente?

Se dejó el ADT7320 dentro del congelador durante unos 30 minutos para ver cuál era la temperatura a la que se estableció nuestra nueva compra.

La Figura 3 muestra que la temperatura del congelador es de -18,83 ° C.


Figura 3. La temperatura del congelador a -18,83 ° C

Considero que esto es impresionantemente preciso dado que los alimentos no necesitan almacenarse a este nivel de precisión de temperatura. Luego medí la temperatura en mi oficina un día de verano en el Reino Unido. 22,87 ° C como se muestra en la Figura 4.


Figura 4. La temperatura de mi oficina a 22,87 ° C

Conclusión

Los sensores de temperatura de silicio han recorrido un largo camino, volviéndose extremadamente precisos, lo que permite que el monitoreo de los signos vitales se lleve a cabo con un alto nivel de precisión. Si bien la tecnología dentro de ellos se basa en principios bien fundamentados, el recorte necesario para llevarlos a niveles de precisión de grado inferior requiere un esfuerzo significativo. Incluso si se logra este nivel de precisión, las tensiones mecánicas y la soldadura pueden borrar fácilmente las ganancias logradas durante horas de calibración.

El ADT7320 y el ADT7422 representan el pináculo de años de caracterización para lograr un nivel de precisión de grado inferior incluso después de soldarse en la PCB.

Referencias

Huijsing, Johan y Michiel Pertijis. Sensores de temperatura de precisión en tecnología CMOS. Springer, 2006.
Horowitz, Paul y Winfield Hill. El arte de la electrónica . Cambridge University Press, abril de 2015.
Diseño de circuitos analógicos, volumen 2, capítulo 32. Tecnología lineal, diciembre de 2012.
Hoja de datos AD590. Analog Devices, Inc., enero de 2013.
Hoja de datos de ADT5912 (se publicará). Analog Devices, Inc.


Incrustado

  1. Silicio
  2. Tipos de sensores con sus diagramas de circuito
  3. Infineon:sensores de ángulo basados ​​en AMR como versiones de matriz única y doble
  4. ams iluminará la Sensors Expo 2019 con demostraciones innovadoras
  5. Sensores de salud de Maxim para dispositivos portátiles de tamaño ultrapequeño
  6. IBASE:módulos COM Express con temperatura de funcionamiento de amplio rango
  7. Mapeo del flujo de temperatura del hogar con sensores baratos
  8. Mide temperaturas con un sensor DS18B20 de 1 cable y Raspberry Pi
  9. Leer temperatura con DS18B20 | Raspberry Pi 2
  10. Medición de temperatura con RASPBERRY PI
  11. Supervisión de la temperatura con Raspberry Pi