科技网站设计公司排名,没有任何收录的网站做SEM有用吗,陕西最新消息今天,视觉传达设计就业方向和前景什么是NTCNTC是热敏电阻#xff0c;其电阻值对温度变化敏感#xff0c;在不同的温度下#xff0c;可以呈现不同的电阻值。热敏电阻有两类#xff0c;一类是负温度系数电阻(NTC)#xff0c;温度增加时#xff0c;电阻值降低#xff0c;另一类是正温度系数电阻(PTC)#…什么是NTCNTC是热敏电阻其电阻值对温度变化敏感在不同的温度下可以呈现不同的电阻值。热敏电阻有两类一类是负温度系数电阻(NTC)温度增加时电阻值降低另一类是正温度系数电阻(PTC)温度增加时电阻值增加。热敏电阻的电阻值计算NTC的电阻值R与温度的关系可以近似表示为公式1电阻与温度函数关系式其中T是绝对温度数值为摄氏温度273.15单位为K(开尔文)。R0一般取温度25℃即298.15K时的电阻值对应的T0取25℃即298.15K。B为材料常数不同的村料或者生产工艺都能导致B的数值发生变化甚至在热敏电阻的工作范围内B的数值都可能发生变化而不是严格的常数因为NTC的电阻与温度呈非线性的关系而且存着温度的增加温度随着温度变化的变化率越小。所以随着温度的增加NTC测温的精度变化所以比较适合于温度变化范围小的使用场景比如环境温度(约为-20℃-50℃)或者是水温的检测(0℃-100℃)。搜索到的一款NTC按照温度为25℃的电阻取值可有5KΩ10 KΩ等不同的规格而材料系数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为NTC0.1uF的电容C1除了可以滤除从电源引入或者从电路板感应来的高频干扰信号另外当ADC有多路AD输入在转换时MCU的AD模块需要通过模拟开关切换不同的通道再进行采样转换电容C1可以在ADC切换通道之后迅速向采样电容充电从而可以提到转换速度避免因采样时间太短而导致测量不准确。R1上拉的电源应该和MCU的ADC的参考电源共用一个电源(在一般的设计中MCU的供电电源和ADC的参考电源共用一个电源)。这是因为输入ADC的AD值为(假设为12位的ADC)AD值计算公式如果上拉的电源ADC的参考电源共用一个电源可以得到和上位电源无关的一个公式AD值计算公式所以可以消除电源精度对测试的影响同时减少了计算的复杂性NTC测温软件的设计我看到在一个网友的程序设计中他直接将公式1取对数通过复杂的对数运算和倒数运算得到温度值这是不合适的主要是普通的单片机不一定提供这样的数学函数库。普通的单片机没有浮点数运算浮点数都是转成整弄运算的不可避免会有舍入误差。单片机做对数倒数的运算只能是近似算法而且会耗费大量的运算时间可能会到几百ms级影响了对其它功能处理的实时性。公式1只是一个近似公式B值也并不是一个常数用这样具体的解析公式计算没有办法根据实际测量值对计算值进行标定从而提高测量精度。我在实际的项目中采用的是分段线性化的方法步骤如下采用excel表格自动生成C语言中包含AD与温度的二维数组将测温范围分若干个区间比如在0-100度的范围内分100个区间每个区间范围为1℃计算或者实测每一个区间下限和区间上限的温度值 比如区间30℃-31℃根据公式1计算或者实际测试出30℃以及31℃的AD值。将这些区间表示为2维数组(这个2维数组也可以通过实际测试形成)取出将AD转换并多次平均之后数值编历分段的区间与这些区间的AD上、下限进行比较判断落在哪一个区间根据一次函数的公式进行区间内的插值修正测试温度值区间温度下限(区间温度上限-区间温度下限)/(区间AD上限-区间AD下限)*(AD测量值-区间AD下限)最后奉上本人使用的分段线性化的程序