599|1

15

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

温度传感器电路温度计算 [复制链接]

本帖最后由 69岁老同志 于 2024-10-18 13:14 编辑

**电路原理**

学单片机这么久,要说难的话,就是跟电路结合起来一起分析,因为要补电路的基础知识。温度传感器的话一般是用热敏电阻来做的,那么就是温度与电阻相关,用电路间接求出电阻,用电阻来对照温度电阻表格来求出温度。

因为单片机的ADC引脚是采样VREF-到VREF+的范围,这两个一般一个接地,一个接3.3v,那么就是0~3.3V的测量范围。因为ADC的精度是12位的,那么采样值转换的电压值就是

V=采样值*Vref/(2^12)=value*3.3/4096;

通常是用电阻分压电路来测量热敏电阻的电压,根据电压再反推阻值。

 

**电压计算**

比如图中的电路。R58和C73都不参与分压,电容都可以看成是开路,不去考虑。真正分压的电阻就是R59和没画出来的RT;

TEMP1接ADC,TEMP_IN1接RT电阻,在图中未画出;
UADC=VCC*RT/(RT+R59);
UADC=VALUE*VCC/2^12=VALUE*3.3/4096
这样已知ADC采样的value,就可以得出UADC,就可以解出RT值,根据RT表再反推出温度值。
温度值的计算分为两步一步是整数部分确定,另一部分是根据比例确认出小数。

**阻值计算**

找到详细的RT表,最好精度是1℃的,不然误差会比较大,可以找商家要。取电阻的中心值,比如-55℃时,中心值是250.065KΩ。

 

 

然后在Excel里拉张表,把温度和电阻值都放进去,后面再提前算出单片机的采样值,表里面的采样公式是一个RT电阻和一个4.3KΩ电阻的分压数值。这样根据采样值来跟表里的比较,来推出电阻值。

我们可以在程序里把这张采样表放进来,用数组来表示。第一行的就表示在这个采样值下对应的温度,-45~-40,一般厂家给的实验就是-50~100度左右。

 

然后如果要算1度的精度,把单片机的采样value和这张表来比较,用for循环来遍历。算出整数部分之后,小数部分大概用采样值占两个数值间的比例来算出小数。因为表格的温度是从-45度开始的,所以公式里(i-45)*10表示温度的整数部分,后面的部分就是算小数的,可以加上小数,也可以减小数,就看你的整数取的是上限还是下限。最后返回的res就是实际温度*10。总的来说,是比较抽象的思维。

 

总体来说,ADC只能采样电压值,所以无论采样什么东西,最后都要转换成电压值。

下面这个电路思路其实一样,10K的电阻不参与分压。只有2.37k和RT进行分压3.3V。

   

下图的电路就稍微复杂一点,加入了放大器,限于篇幅,这个等下次再写吧。

 

 

 

 

此帖出自stm32/stm8论坛

最新回复

计算查表编程 无论采样什么东西,最后都要转换成电压值。这是这是实质   详情 回复 发表于 2024-10-20 08:48
点赞 关注
 

回复
举报

6809

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

计算查表编程

无论采样什么东西,最后都要转换成电压值。这是这是实质

此帖出自stm32/stm8论坛
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表