热敏电阻器主要分为 PTC 和 NTC。正温度系数热敏电阻器(PTC)在温度越高时电阻值越大;负温度系数热敏电阻器(NTC)在温度越高时电阻值越低,它们同属于半导体器件。
测温的热敏电阻一般为NTC,其主要参数有以下几个:
- 标称阻值
标称阻值是NTC热敏电阻器设计的电阻值,常在热敏电阻器表面标出。标称阻值是指在基准温度为25℃时零功率阻值。
- 额定功率
额定功率是指热敏电阻器在环境温度25℃、相对温度为45%~80%及大气压力为0.87~1.07Pa的大气条件下,长期连续负荷所允许的耗散功率。
- B值
B值范围(K)是负温度系数热敏电阻器的热敏指数。
- 硬件电路
热敏电阻的测温电路比较简单,直接通过一个标准的电阻分压采集分压后的电压,通过比例法即可计算出具体阻值,再通过阻值计算出温度值。如下图:
需要注意的是,热敏电阻的阻值与温度关系是非线性的,分压电阻R46要根据需要的温度测量范围选择合适的阻值,以达到最佳的温度分辨率。
另外,热敏电阻一般阻值会比较大,最好有个运放做缓冲再输入到AD。但需要考虑运放的输入偏置电压不宜过大,否则影响测量精度。
- 温度计算
温度计算可以有两种方式,查表法和公式法。
查表法,即将温度和阻值的对应数据存放在程序中,根据计算出的阻值范围,查找出对应的温度范围,并根据线性关系计算出具体温度。
公式法,根据测得的电阻值通过以下公式计算出温度值
则
其中,R25为在 T25=25℃(298.15K)时热敏电阻的零功率电阻值。
Rx为测得的NTC的阻值。
B为NTC的B值。
Tx为测得的温度值,单位为开尔文(K)。
以上面的电路图为例,VREF=2500mV,则程序如下:
vtemp = ADC_Value*2500/4096;//T1 转换为mVRt = (float)(5.1 * vtemp)/(2500Temperature=1/(1/T2+log(Rt/NTC_Value)/NTC_Beta)-273.15;//温度值 单位摄氏度。
其中:
T2=273.15+25;
NTC_Value为热敏电阻标称值;
NTC_Beta为热敏电阻B值。