Skip to main content
Glama
dfieser

io.github.dfieser/thermocouple-its90

by dfieser

thermocouple-its90

Conversión de termopares ITS-90 para Python: de voltaje a temperatura y de temperatura a voltaje para los ocho tipos designados por letras (B, E, J, K, N, R, S, T), con compensación de unión fría y coeficientes Seebeck. El conjunto de pruebas verifica cada uno de los 12 026 puntos tabulados de las tablas de referencia del NIST en cada ejecución.

Tests PyPI Python License: MIT DOI

Solo biblioteca estándar, sin dependencias, totalmente tipado. Una versión para navegador de este motor funciona como calculadora de termopares en línea gratuita, publicada desde este repositorio en cada lanzamiento.

Instalación

pip install thermocouple-its90

Related MCP server: mcp-units

Convertir milivoltios de termopar a temperatura

from thermocouple_its90 import TypeK

TypeK.emf(300.0)          # 12.209  (mV at 300 C, 0 C reference: the table value)
TypeK.temperature(12.209) # 300.0   (C, ice-bath reference)
TypeK.seebeck(300.0)      # 0.0416  (mV per C)
TypeK.range               # (-270.0, 1372.0)

Compensación de unión fría

Un termopar mide la diferencia entre sus uniones, y las tablas de referencia suponen que la unión fría está a 0 °C. Si los terminales de su medidor están a temperatura ambiente, una consulta directa de la tabla sería incorrecta:

from thermocouple_its90 import TypeK

# Meter reads 4.096 mV, terminals at 25 C:
TypeK.temperature(4.096)                  # 100.0 C  <- naive lookup, wrong
TypeK.temperature(4.096, reference=25.0)  # 124.3 C  <- the actual answer

Los ocho tipos funcionan de la misma manera:

from thermocouple_its90 import get, letters

letters()                       # ['B', 'E', 'J', 'K', 'N', 'R', 'S', 'T']
get("s").emf(1400.0)            # 14.373 mV
get("t").temperature(-4.648)    # -149.98 C (cryogenic ranges included)

Precisión, verificada en lugar de afirmada

  • Las funciones directas de referencia reproducen los 12 026 puntos completos de un grado de las tablas de referencia del NIST dentro de su redondeo de impresión de 0.001 mV. La comparación completa se ejecuta en CI en cada push (tests/test_full_tables.py).

  • La inversión se inicializa con los polinomios inversos publicados del ITS-90 y se refina mediante iteración de Newton sobre la función directa exacta. Los recorridos de ida y vuelta coinciden en microgrados, en lugar de las bandas de error de 0.02 a 0.06 °C de los polinomios inversos.

  • Los tipos K, E y T se invierten en todos sus rangos criogénicos (hasta -270 °C), por debajo de donde se detienen los polinomios inversos publicados.

  • El tipo B se maneja con su física: su FEM no es monótona cerca de la temperatura ambiente, por lo que la inversión por debajo de 0.291 mV (unos 250 °C) se rechaza con una explicación en lugar de devolver uno de dos posibles resultados.

Servidor MCP para agentes de IA

Los modelos de lenguaje recuerdan mal los polinomios de termopares. El paquete incluye un Protocolo de Contexto de Modelo para que los agentes llamen a la implementación verificada en su lugar:

pip install "thermocouple-its90[mcp]"
claude mcp add thermocouple -- thermocouple-its90-mcp

Herramientas: thermocouple_to_temperature, thermocouple_to_emf, thermocouple_types.

Procedencia de los datos y licencia

Los coeficientes se analizaron mecánicamente, nunca se escribieron a mano, a partir de la Base de Datos de Termopares ITS-90 del NIST (SRD 60, https://its90.nist.gov/). La base de datos reproduce el Monografía 175 del NIST (Burns, Scroger, Strouse, Croarkin y Guthrie, 1993), una publicación del gobierno de los Estados Unidos no sujeta a derechos de autor. El conjunto de datos canónico vive en data/its90.json; _data.py se genera a partir de él y CI falla si se desvían. El código tiene licencia MIT.

Relacionados

Cita

Si esta biblioteca es útil en su trabajo publicado, por favor cítela mediante el DOI conceptual https://doi.org/10.5281/zenodo.22036393, que siempre resuelve a la versión más reciente (consulte CITATION.cff). Cite también la referencia subyacente: Burns, G. W., Scroger, M. G., Strouse, G. F., Croarkin, M. C. y Guthrie, W. F. (1993). Temperature-electromotive force reference functions and tables for the letter-designated thermocouple types based on the ITS-90 (NIST Monograph 175). NIST.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for converting cooking measurements (volume, weight, temperature) between common units like ml, cup, g, oz, and Celsius/Fahrenheit.
    3
    1
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    An MCP server for controlling lab instruments (oscilloscopes, signal generators, etc.) via standardized interfaces like USBTMC, RS-232, and LAN.
    100
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    This MCP server enables AI clients to calculate the boiling temperature of water at a given absolute pressure using the IAPWS-IF97 standard, separating natural-language reasoning from authoritative scientific computation.
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dfieser/thermocouple-its90'

If you have feedback or need assistance with the MCP directory API, please join our Discord server