Como medir a temperatura usando um termistor NTC?

17

Eu tenho um termistor TTC103 NTC. Possui resistência de potência zero de 10 kΩ a 25 ° C e o valor B25 / 50 de 4050. Como o uso para medir a temperatura?

AndrejaKo
fonte
Ei, eu tenho exatamente a mesma termistor :)
Abdullah kahraman

Respostas:

12

Os termistores NTC (coeficiente de temperatura negativo) alteram sua resistência efetiva à temperatura. A equação mais comum usada para modelar essa alteração é a equação de Steinhart-Hart . Ele usa três coeficientes para caracterizar o material NTC com grande precisão.

A equação de Steinhart-Hart é um modelo da resistência de um semicondutor a diferentes temperaturas. A equação é:

1T=UMA+Bem(R)+C(em(R))3

Onde:

  • T é a temperatura (em Kelvins)
  • R é a resistência em (em ohms)T
  • B C ( ln ( R ) ) 2UMA , e são os coeficientes de Steinhart-Hart que variam dependendo do tipo e modelo do termistor e da faixa de temperatura de interesse. (A forma mais geral da equação aplicada contém um termo , mas isso é freqüentemente negligenciado, porque geralmente é muito menor que os outros coeficientes e, portanto, não é mostrado acima.)BC(em(R))2

- equação de Steinhart-Hart - Wikipedia, a enciclopédia livre

Muitos fabricantes fornecem notas de aplicação (por exemplo, aqui ) detalhando como calibrar um determinado NTC se você deseja uma precisão melhor do que a tolerância de fabricação citada.

O coeficiente B fornecido pode ser usado em uma equação de Steinhart-Hart simplificada, conforme descrito no artigo do Thermistor da Wikipedia em "Equação do parâmetro B" .

Nick T
fonte
1
Todas as três respostas parecem boas, mas essa me ajudou mais.
AndrejaKo
1
Como você lidou com o ? eun
Abdullah kahraman
2
Por que eu tenho que ir à Wikipedia para a equação? Você não pode dar aqui?
Federico Russo
Você fala sobre a tolerância de fabricação. Mas como posso conceber a tolerância se só tenho B, tolerância de B, tolerância de R25? Como o NTCLE203
thexeno
@thexeno conecte o máximo e o mínimo em uma planilha e calcule-o no intervalo de temperatura desejado.
Nick T
13

Use-o como uma perna (digamos a perna "superior") em um circuito divisor de tensão, com a outra perna sendo uma resistência conhecida. Meça a tensão no ponto médio do divisor (por exemplo, com um conversor de analógico para digital). Inferir a resistência do termistor da tensão medida como:

RthermEustor=(VccVmeumasvocêred-1)×RknoWn

Use a equação:

T=Beun(RthermEustorR0 0×e-BT0 0)

no seu caso, , B = 4050 e T 0 = ( 273 + 25 ) = 298 . Conecte esses números, mais a resistência medida do termistor na equação e sai uma temperatura em Kelvin.R0 0=10000B=4050T0 0=(273+25)=298

Leia este artigo da Wikipedia para mais detalhes.

vicatcu
fonte
1
Sim, tenho que perguntar :) Como você faz esses cálculos usando um microcontrolador de 8 bits?
abdullah kahraman
2
@abdullahkahraman você usaria uma combinação de uma tabela de consulta e interpolação entre os valores da tabela de consulta. Digamos que você tenha um ADC de 10 bits; isso é 1024 valores possíveis do ADC. Você pode armazenar 1024 valores convertidos na memória ou 512 (todos os outros) ou 256 (todos os quartos) etc., dependendo da memória. A interpolação é um assunto grande, assim como a superamostragem ou "faixas", que você pode usar para aumentar a precisão.
akohlsmith
@AndrewKohlsmith como a superamostragem aumenta a resolução?
abdullah kahraman
@abdullahkahraman sua consulta à tabela de amostragem poderia ser não uniforme sobre o domínio da entrada ... armazenar mais amostras da curva onde é "mais curvas" e aplicar interpolação pode dar-lhe um erro melhor característica
vicatcu
1
@thexeno faça uma nova pergunta.
Nick T
6

Os NTCs não são lineares e você verá fórmulas bastante desagradáveis ​​que expressam a relação resistência à temperatura.
Ao adicionar um par de resistores comuns, você pode linearizar seu comportamento, de modo que essa relação seja aproximada por uma equação linear simples da forma . O exemplo a seguir é desta appnote da Epcos . y=ax+b

insira a descrição da imagem aqui

insira a descrição da imagem aqui

A curva é praticamente reta de 0 ° C a 60 ° C, o que é suficiente para muitas aplicações.

Em esta resposta eu mostro como, em alguns casos você pode ter uma (15 ppm) curva linear quase perfeita ao longo de um domínio limitado com apenas um resistor série.

edit
Se você não tiver o dinheiro para um resistor, terá que usar a equação de Steinhart-Hart a que Nick e Vicatcu se referem, ou usar uma tabela de pesquisa e interpolação. Ambos têm a desvantagem de que precisam de mais memória: o Steinhart-Hart contém um logaritmo, para o qual você precisará de uma biblioteca de ponto flutuante (presumo que seu microcontrolador não tenha uma ALU de ponto flutuante). A tabela de pesquisa também precisa de um pouco de memória e pode não fornecer uma precisão melhor do que a função linearizada se você precisar interpolar isso.

stevenvh
fonte
Não linearize a menos que esteja usando circuitos analógicos!
Jason S
E edite sua postagem com precisão: o relacionamento não se torna uma simples equação linear. A relação aproxima uma equação linear sobre uma faixa específica de temperaturas.
Jason S
4
Jason: você pode elaborar? Por que não linearizar em circuitos digitais?
18118 Stephen Colings
Nota da aplicação diz que esta configuração sofrerá um pouco de sensibilidade.
Abdullah kahraman
2
@abdullah - eu quis dizer isso ironicamente :-). Mas, aparentemente, mais usuários parecem preferir a situação mais complexa, da qual não me importo, mas a única razão pela qual posso pensar em descartar a solução mais simples é que o resistor seria muito caro. :-)
stevenvh
4

Um NTC tem uma resposta não linear à temperatura.

R

Por exemplo, digamos que você tenha uma fonte de 5V, use um resistor de 1k em série com o NTC e, se medir 0,5V, divida 1k por 0,5V e obtenha 10k ohms como resistência.

T0 0Ro

Então, dados esses detalhes, coloque-os nessa equação para obter Ta temperatura.

T=11To+(1BemRRo)

Thomas O
fonte
Confirme se reescrevi corretamente a equação.
Abdullah kahraman
3

Existem várias maneiras (tanto em termos de circuitos analógicos quanto em termos de computação de software) para usar termistores para medir a temperatura.

A resposta curta é mais ou menos a seguinte:

  • Use o termistor e um resistor de referência para fazer um divisor de tensão.
  • Pegue o meio do divisor de tensão e alimente-o em um conversor de analógico para digital.
  • Meça a tensão ADC no software.
  • Usando seu conhecimento da resistência de referência e da curva R vs. T do termistor, converta as contagens de ADC para temperatura.

Há várias sutilezas aqui, portanto, para uma leitura mais detalhada, você pode conferir este artigo meu sobre o condicionamento de sinais de termistor - espero que isso ajude!

Jason S
fonte
O artigo parece bom!
AndrejaKo