打印
[综合信息]

NTC热敏电阻温度计算

[复制链接]
22|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
1988020566|  楼主 | 2024-10-31 19:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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;
}


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

402

主题

10626

帖子

6

粉丝