锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

高精度NTC测温电路设计及电阻值计算

时间:2022-09-08 14:00:00 电阻由温度变化而变化1000电阻精度电阻精度t高精度高精度电阻100电阻1c1模块式电阻

什么是NTC

NTC它是一种对温度变化敏感的热敏电阻,在不同的温度下,可以呈现不同的电阻值。

热敏电阻有两种,一种是负温度系数电阻(NTC),当温度升高时,电阻值降低,另一种是正温度系数电阻(PTC),当温度升高时,电阻值增加。

计算热敏电阻的电阻值

NTC电阻值R与温度的关系可以表示为:

7496df2e0b16f4506a0dc9e7765c48ad.png

公式1,电阻与温度函数关系

T是绝对温度,值为摄氏度 273.15,单位为K(开尔文)。

R0一般取温度25℃即298.15K时间电阻值,对应T0取25℃,即298.15K。

B材料常数。不同的村料或生产工艺会导致B值的变化,甚至在热敏电阻的工作范围内,B数值可能会改变,而不是严格的常数;

因为NTC电阻与温度呈非线性关系,温度随温度变化的变化率越小。

所以随着温度的增加,NTC温度测量的精度变化;

因此,更适合温度变化范围小的使用场景,如环境温度(约-20℃-50℃)或者检测水温(0℃-100℃)。

搜索到的一个NTC,按照温度为25℃电阻值个电阻值KΩ,10 KΩ材料系数B值固定数B值固定在3950。

我们选择10K根据公式1,可以得到这个规格NTC电阻与温度的关系如下:

公式2,电阻与温度之间的函数关系

通过excel表格公式,在excel第一列输入温度,第二列输入公式可获得不同温度下的电阻值,如0℃为33.6 KΩ

采用excel计算AD值

NTC温度测量电路的设计

NTC温度测量的核心ADC功能的MCU,电路相对简单,只需通过另一个高精度电阻分压接收固定电压即可NTC电阻,然后将分压值连接到MCU的ADC输入口。

如下图:

NTC测温电路

R1为1%精度的电阻,R2为NTC,

0.1uF的电容C1除了从电源引入或电路板感应过滤高频干扰信号外,当ADC有多路AD转换时输入,MCU的AD模块需要通过模拟开关切换不同的通道,然后进行采样转换和电容C1可以在ADC切换通道后,快速向采样电容充电,以提高转换速度,避免采样时间过短导致测量不准确。

R上拉电源应和MCU的ADC参考电源共中,MCU供电和ADC参考电源共用一个电源)。

这是因为:

输入ADC的AD(假设为12位)ADC):

AD值计算公式

若上拉电源ADC参考电源共用一个电源,可以得到一个与上无关的公式:

AD值计算公式

因此,可以消除电源精度对测试的影响,降低计算的复杂性;

NTC温度测量软件的设计

在网友的程序设计中,他直接将公式1取对数,通过复杂的对数操作和倒数操作获得温度值,这是不合适的,

主要是:

普通单片机不一定提供这样的数学函数库。

普通单片机没有浮点数运算,浮点数转为整弄运算,难免会有舍入误差。

单片机做对数,倒数操作,只能是近似算法,会花费大量的操作时间,可能会达到几百ms级,影响了对其它功能处理的实时性。

公式1只是一个近似公式,B值不是常数。没有办法根据实际测量值来校准计算值,从而提高测量精度。

在实际项目中,我采用了分段线性化的方法,步骤如下:

采用excelC语言中的表格自动生成AD二维数组的温度

测温范围分为0-100度范围内的100个范围,每个范围分为100个范围℃

计算或测量每个区间下限和区间上限的温度值; 比如区间30℃-31℃,30根据公式1计算或实际测试℃以及31℃的AD值。

将这些区间表示为2维数组(这个2维数组也可以通过实际测试形成);

取出将AD转换和多次平均值后,编历分段的范围,以及这些范围AD比较上下限,判断落在哪个区间,

区间内的插值修正按一次函数公式进行:

测试温度值=区间温度下限 (间隔温度上限-间隔温度下限)/AD上限-区间AD下限)*(AD测量值-区间AD下限)

最后,提供我使用的分段线性化程序:

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章