![](upload/erji2.jpg)
热敏电阻计算公式
Rt = R *EXP(B*(1/T1-1/T2))
对上面的公式解释如下:
1. Rt 是热敏电阻在T1温度下的阻值;
2. R是热敏电阻在T2常温下的标称阻值;
3. B值是热敏电阻的重要参数;
4. EXP是e的n次方;
5. 这里T1和T2指的是K度即开尔文温度,K度=273.15(绝对温度)+摄氏度;
例如我手头有一个 MF58502F327型号的热敏电阻
MF58—— 型号玻璃封装
502 —— 常温25度的标称阻值为5K
F —— 允许偏差为±1%
327 —— B值为3270K的NTC热敏电阻
那它的R=5000, T2=273.15+25,B=3270, RT=5000*EXP(3270*(1/T1-1/(273.15+25))), 这时候代入T1温度就可以求出相应温度下热敏电阻的阻值,注意温度单位的转换,例如我们要求零上10摄氏度的阻值,那么T1就为(273.15+10)。
------------------
热敏电阻计算公式 Rt = R *EXP(B*(1/T1-1/T2)) 对上式解释如下:
(具体可以参考百度,很多的)
1. Rt 是热敏电阻在T1温度下的阻值;
2. R是热敏电阻在T2常温下的标称阻值;
3. B值是热敏电阻的重要参数;
4. EXP是e的n次方;
5. 这里T1和T2指的是K度即开尔文温度,K度=273.15(绝对温度)+摄氏度;
例如我手头有一个 MF58502F327型号的热敏电阻
MF58—— 型号玻璃封装
502 —— 常温25度的标称阻值为5K
F —— 允许偏差为±1%
327 —— B值为3270K的NTC热敏电阻
而我买的型号是MEB-503E-3950,因此它的
常温下阻值R1=50*10^3=50k欧;
常温T12=273.15+25=298.15;
参数B=3950;
这时候代入T1温度就可以求出相应温度下热敏电阻的阻值,注意温度单位的转换,摄氏度与开尔文。
至于热敏电阻的用法,其实就是串联一个阻值和它差不多(最好)的电阻,从而通过分压比确定热敏电阻的阻值,从而确定测量温度(详情可百度,很多的),下面只给出电路和代码:
我是用的arduino UNO的开发板,电路接法如下:
代码如下:
/* * 热敏电阻的型号是MEB-503E-3950 * 常温25摄氏度(298.15K)下阻值为50k欧 */ #include<math.h> const float voltagePower=3.3; const float Rs=21.5;//采样电阻为21.5千欧 const int B=3950; const double T1=273.15+25;//常温 const double R1=50;//常温对应的阻值,注意单位是千欧 void setup() { Serial.begin(9600); } void loop() { //获得A1处的电压值 double digitalValue=analogRead(1); double voltageValue=(digitalValue/1023)*5; Serial.print("Current voltage value="); Serial.println(voltageValue); //通过分压比获得热敏电阻的阻值 double Rt=((voltagePower-voltageValue)*Rs)/voltageValue; Serial.print("Current registor value="); Serial.println(Rt); //换算得到温度值 Serial.print("Current temperature value="); Serial.println(((T1*B)/(B+T1*log(Rt/R1)))-273.15);// Serial.println(); //每3秒输出,更改此处修改频率 delay(3000); }了解更多请访问:http://www.ndfweb.cn/news-755.html