1.概述
NTC热敏电阻随环境温度(T)升高,电阻值®会下降,反之,当温度(T)下降,电阻值®会上升。NTC热敏电阻的计算公式有Steinhart-Hart方程和B值法两种方法,我只熟悉了B值法。

常规NTC热敏电阻参数:温度为(R25℃)时,阻值为10kΩ,B值(25/85)为3435。温度为(R25℃)时,阻值为100kΩ,B值(25/50)为3950。

2.计算公式
Rt = R*EXP(B*(1/T1-1/T2))
T1 =1/(ln(Rt/R)/B+1/T2)
这里T1和T2指的是K度即开尔文温度,K度=273.15(绝对温度)+摄氏度;其中T2=(273.15+25)
Rt 是热敏电阻在T1温度下的阻值;
R是热敏电阻在T2常温下的标称阻值;
B值是热敏电阻的重要参数;
EXP是e的n次方;

3.excel公式
=100000*EXP(3950*(1/(273.15+(T))-1/(273.15+25)))
这里以温度为100KΩ,B值为3950为例
T可以输入摄氏度或选中表格,进而生成阻值数据,可以用于查表并获取温度。

4.C程序
#include <math.h>

const float Rp=10000.0; //10K
const float T2 = (273.15+25.0);;//T2
const float Bx = 3950.0;//B
const float Ka = 273.15;

float Get_Temp(void)
{
float Rt;
float temp;
Rt = Get_TempResistor();
//like this R=5000, T2=273.15+25,B=3470, RT=5000*EXP(3470*(1/T1-1/(273.15+25)),
temp = Rt/Rp;
temp = log(temp);//ln(Rt/Rp)
temp/=Bx;//ln(Rt/Rp)/B
temp+=(1/T2);
temp = 1/(temp);
temp-=Ka;
return temp;
}
————————————————

版权声明:本文转载。

原文链接:https://blog.csdn.net/liluochengren/article/details/131321576

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐