一:介绍
热敏电阻是一种固态温度传感装置,其作用有点像电阻器,但对温度敏感。热敏电阻可用于产生随环境温度变化的模拟输出电压,因此可称为传感器。这是因为由于热量的外部和物理变化,它会导致其电气特性发生变化。热敏电阻基本上是一个两端固态热敏传感器,使用敏感的基于半导体的金属氧化物构造,金属化或烧结连接引线形成陶瓷盘或珠。这允许热敏电阻与环境温度的微小变化成比例地改变其电阻值。换句话说,随着它的温度变化,它的电阻也会发生变化,因此它的名字,“Thermistor”是THERM-allysensitive res-ISTOR这两个词的组合。 二:应用 虽然在标准电阻器中通常不希望因温度变化而引起电阻变化,但这种效应可以在许多温度检测电路中得到很好的利用。虽然热敏电阻的主要用途是作为电阻式温度传感器,但它们也可以与另一个组件或设备串联连接以控制流过它们的电流。换言之,它们可以用作热敏限流器件。三:分类
热敏电阻有多种类型、材料和尺寸可供选择,其特点是响应时间和工作温度。此外,密封热敏电阻消除了由于湿气渗透导致的电阻读数误差,同时仍提供高工作温度和紧凑的尺寸。三种最常见的类型是:珠状热敏电阻、盘状热敏电阻和玻璃封装热敏电阻。随着温度的变化增加,电阻值有的是增大,有的是减小。所以对应了两种类型的热敏电阻可用:电阻的负温度系数(NTC)和电阻的正温度系数(PTC)。四:NTC及相关系数
NTC 热敏电阻:负温度系数,会随着周围工作温度的升高而降低其电阻值。通常,NTC 热敏电阻是最常用的温度传感器类型,因为它们几乎可以用于任何类型的温度起作用的设备。NTC 温度热敏电阻具有负电阻与温度 (R/T) 关系。NTC热敏电阻相对较大的负响应意味着即使温度的微小变化也会导致其电阻发生显着变化。这使它们成为精确温度测量和控制的理想选择。我们之前说过,热敏电阻是一种电子元件,其电阻高度依赖于温度,因此如果我们通过热敏电阻发送恒定电流,然后测量其上的电压降,我们就可以确定它在特定温度下的电阻。 01系数:基极电阻
NTC 热敏电阻通常是它们在室温下的基极电阻,即 25℃(77°F),因为这提供了一个方便的参考点。例如,25℃时为 2.2KΩ,25℃时为10kΩ或 25℃时为 47kΩ,等等。02B值及温度曲线
热敏电阻的另一个重要特性是它的“B”值。B 值是由制造它的陶瓷材料决定的材料常数。它描述了两个温度点之间特定温度范围内的电阻 (R/T) 曲线的梯度。每种热敏电阻材料将具有不同的材料常数,因此具有不同的电阻与温度曲线。因此,B 值将定义热敏电阻在第一个温度或基点(通常为 25℃)的电阻值,称为 T1,以及在第二个温度点(例如 100℃)的热敏电阻电阻值,称为 T2。因此,B 值将定义 T1 和 T2 范围之间的热敏电阻材料常数。即 B(T1/T2)或 B25/100,典型的 NTC 热敏电阻 B 值在大约 3000 到大约 5000 之间。注意,T1 和 T2 的温度点均以开尔文的温度单位计算,其中 0℃= 273.15K。因此,250℃的值等于 25°+ 273.15 = 298.15K,100℃等于 100°+ 273.15 = 373.15K,以此类推。
因此,通过了解特定热敏电阻的 B 值(从制造商数据表获得),可以生成温度与电阻表,以使用以下归一化方程构建合适的图表:
-
T1:第一个温度点
-
T2 :第二个温度点
-
R1:是温度 T1 下的热敏电阻电阻,单位为欧姆
-
R2:温度 T2 下的热敏电阻电阻,单位为欧姆
举例:
一个 10kΩ NTC热敏电阻在 25℃和100℃的温度范围之间的“B”值为 3455。计算它在 25℃和 100℃时的电阻值:给出的数据:B = 3455,R1 = 10kΩ,25℃。为了将温度标度从摄氏度(℃)转换为开尔文度数,请添加数学常数 273.15。R1 的值已经作为 10kΩ 基极电阻给出,因此 R2 在 100oC 时的值计算如下:给出以下两点特征图:
注意,在上面这个简单的例子中,只找到了两个点,但通常热敏电阻的电阻随着温度的变化呈指数变化,因此它们的特性曲线是非线性的,因此计算的温度点越多,曲线就越准确。
并且可以将这些点绘制成如下图所示,以便为 B 值为 3455 的 10kΩ NTC 热敏电阻提供更准确的特性曲线。
由上图可以看出,它具有负温度系数 (NTC),即其电阻随温度升高而降低。
五:使用热敏电阻测量温度
下面我们讲解一下如何使用热敏电阻来测量温度。 01电路
我们肯定会想到,热敏电阻的本质就是一个电阻,我们通过测量电阻的变化即可测量出来温度。因此根据欧姆定律,我们测量出来电阻两端的电压变化,就可以测量出来温度变化。由于热敏电阻是一种无源类型的传感器,也就是说,它的工作需要一个激励信号,因此其电阻因温度变化而发生的任何变化都可以转换为电压变化。最简单的方法是使用热敏电阻作为分压电路的一部分,如上图所示。恒定电源电压施加在电阻器和热敏电阻串联电路上,测量热敏电阻两端的电压变化。例如,如果我们使用一个 10kΩ 的热敏电阻和一个 10kΩ 的串联电阻,那么在25℃的基础温度下,输出电压将是电源电压的一半,即 10KΩ/(10KΩ+10KΩ) = 0.5V。当热敏电阻的电阻因温度变化而变化时,热敏电阻两端的电源电压比例也会发生变化。因此,分压器电路是简单电阻电压转换器的示例,其中热敏电阻的电阻由温度控制,产生的输出电压与温度成正比。所以热敏电阻越热,输出电压越低。如果我们颠倒串联电阻 Rs和热敏电阻 Rth的位置,则输出电压将沿相反方向变化,即热敏电阻温度越高,输出电压越高。关于热敏电阻的其他用法(浪涌保护、桥型电路测温等),欢迎关注本公众号,将在以后的文章中继续进行介绍。 02
程序实现
针对如何将电压值转变为对应的温度值,一般有两种方法:查表法和公式计算法,比较常用的是查表法。上图中,电阻R1和NTC R2组成串联分压电路,串联的两个电阻,电阻比等于电压比,且单片机ADC的参考电压为VCC,设单片机的ADC为10位,就可以求出NTC R2在相应温度下的阻值对应ADC值的表达式为:ADC = R2 / ( R1+R2 ) *1024R1为已知,一般为10K,NTC R2在不同温度下对应的阻值,厂家的数据手册上会有。以南京时恒的MF58-103F3435为例,如图:
图片未截取完全,详情可参考NTC的手册
由上图可以看出,每个温度下都有对应的电阻值,通过上面的公式,就可以计算出对应的电阻值下的ADC采集值。将所有AD值转换为HEX格式后,定位为const数组的形式:
有了上面的表,然后用单片机采集到的AD值,一个个从头开始去查找对比就能知道温度了。(由于AD值是按照由大到小的顺序排列的,可以采用更高效的二分法查找,这里不再赘述)因为NTC的AD值正好是表中的值概率很小,很可能查不到,但是我们可以知道落在了哪个区间,所以要处理的数据基本上在两个温度的区间,如果要显示小数,两个温度区间可以看成是线性的,通过局部线性化就可以计算出温度的值。什么是局部线性化,有网友解释的很清楚,这里直接搬过来,假如ADC采样的数字量为 0x80C,十进制是2060,对应在数据表的2048(25℃)和2095(24℃)中间,计算方式按照线性处理如下:
相关代码如下:
-
ntcad=GetADCResult(1);//
temp=NTCADBinarySearch(ntcad);//搜索NTCAD温度表(得到数组标号)
searchwendu=temp-30;//计算温度整数+小数
wendu=searchwendu+(float)(NTC_ADArray[temp]-ntcad)/(float)(NTC_ADArray[temp]-NTC_ADArray[temp+1]);
wendu=wendu*10;
审核编辑 :李倩
-
传感器
+关注
关注
2548文章
50664浏览量
751939 -
热敏电阻
+关注
关注
14文章
1133浏览量
101449
原文标题:热敏电阻测温:原理讲解(附送电路图和程序)
文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论