NTC热敏电阻B值公式。
先更正昨天的帖子,我用的热敏电阻的精度是1%,不是3%。
B= T1T2 Ln(RT1/RT2)/(T2-T1) ——————————(1)
B:NTC热敏电阻的B值,由厂家提供;
RT1、RT2:热敏电阻在温度分别为T1、T2时的电阻值,厂家提供的是温度为298.15K (25摄氏度)时的阻值。
T1、T2:绝对温标。
我还是针对昨天的原理图简单的说说:
由(1)式可得:
B(1/T1-1/T2)
RT1/RT2=e ——————————————(2)
取T1=298.15K,此时热敏电阻的阻值为RT1=10K,故取R1=10K,设温度为T2时的分压值为V2,则:V2=RT2Vcc/(RT2+R1),得 RT2=V2R1/(Vcc-V2),所以
RT1/RT2=Vcc/V2-1 代入(2)式得
B(1/T1-1/T2)
e =Vcc/V2-1
得 B(1/T1-1/T2)=Ln(Vcc/V2-1)
T2=T1/(1-T1(Ln(Vcc/V2-1))/B)
设8位ADC输出值为N,则 Vcc/V2-1=256/N-1
所以 T2=T1(1-T1(Ln(256/N-1))/B)
换算为摄氏温度后则
T=T2-273.15
你可以用C或VB编个程序从N=0开始到N=255计算出温度表,然后以N为索引查表直接得到温度。也可以通过实际测试出温度值构成温度表格,采用插值等算法得到温度值。我这里是以T1=25度计算的,你可以通过调整T1的值来测试更高或更低温度。
发表时间:2003年7月22日10:09:26