NTC热敏电阻测温原理,电路设计以及程序设计

嵌入式ARM 2020-11-25

近日一位朋友在后台发消息说,刚毕业入职一家小家电公司,正参与设计电磁炉控制电路,其中需要用到测温元器件,想了解所用的温度传感器有没有正负极、测温原理等内容。以前正好做过这一块内容,和大家学习一下。
电磁炉测温用的温度传感器其实是一个负温度系数的热敏电阻NTC,不仅如此,NTC在家电产品的测温中应用广泛,例如热水壶、咖啡机、消毒柜等用的都是NTC测温。既然NTC是一颗电阻,那么就不存在正负极的问题。

NTC热敏电阻测温的工作原理


所谓热敏电阻,就是指对温度比较敏感的电阻,随着温度的变化NTC的电阻值也会随之变化,环境温度和电阻值之间存在一定的关系曲线,通过测量阻值的变化情况就可以确定当前的温度值。这就是NTC测温的工作原理,其阻值和温度之间的关系曲线如下图所示。

NTC测温电路


在低成本的测温应用中,NTC一般和一个精密的定值电阻串联通过采集电阻两端的电压变化来确定环境温度。常用的测温电路如下图所示。

如上图的左侧电路。NTC和定值电阻R串联,当环境温度发生变化后,NTC的电阻值发生变化,导致NTC两端的电压发生变化,单片机通过采集NTC两端的电压就可以反推出当前的温度值。这是一种低成本常用的测温电路。
推荐杜洋老师《爱上单片机》手把手动手学习单片机:

NTC测温程序设计
NTC的电阻值和温度是呈现一定的比例关系的,该比例关系和B值相关,各个厂家的Datasheet都会写明该公式,公式如下:
NTC阻值和温度公式:Rt = Rn *EXP(B*(1/T-1/Tn))
对上面的公式解释如下:
1.       Rt是热敏电阻的当前阻值;
2.       R是热敏电阻在Tn常温下的标称阻值;
3.       B值是热敏电阻的温度系数;
4.       EXP是e的n次方;
5.       这里T和Tn指的是K度即开尔文温度,K度=273.15(绝对温度)+摄氏度;
6.       T为当前温度;Tn为常温25℃;
比如 B值为3950的10K阻值的NTC,10K就是25℃时的阻值,B值为3950。通过以上公示就可以确立阻值和温度的关系。
部分程序代码如下:
#define B 3950.0 //温度系数#define TN 298.15 //额定温度(绝对温度加常温:273.15+25)#define RN 10 // 额定阻值(绝对温度时的电阻值10k)#define BaseVol 5.04 //ADC基准电压float Get_Tempture(u16 adc){ float RV,RT,Tmp; RV=BaseVol/1024.0*(float)adc;//ADC为10位ADC,求出NTC电压:RV=ADCValu/1024*BaseVoltag RT=RV*10/(BaseVol-RV);//求出当前温度阻值 (BaseVoltage-RV)/R16=RV/RT;  Tmp=1/(1/TN+(log(RT/RN)/B))-273.15//RT = RN exp*B(1/T-1/TN) return Tmp;}

PT100测温原理

这里专指电阻测温,除了NTC之外,还有PT100正温度系数的热敏电阻、热电偶等。PT100相比较于NTC,更为精准主要用在工业产品的测温中,一般通过惠斯通电桥来检测电压的变化进而反推出温度值。如下图就是惠斯通电桥电路。


-END-


来源 | 玩转嵌入式

作者 | 刘小舒


整理文章为传播相关技术,版权归原作者所有 |

如有侵权,请联系删除 |


【1】STM32如何配置外部中断?
【2】STM32单片机:独立看门狗、窗口看门狗的配置
【3】使用KeilMDK以及标准外设库创建STM32工程的详细过程
【4】编码器是什么?STM32编码器接口及应用编程
【5】STM32学了很久,为什么还是不会做项目?


嵌入式ARM 关注这个时代最火的嵌入式ARM,你想知道的都在这里。
评论
热门推荐
相关推荐
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦