本来摘自21ic论坛
作者:快乐小小鱼
(作者注:自己是先用world写好的,里面的公式和图片复制不上,附件是源world,还有原理图和代码,分享给大家下载。这样更容易理解pt100的校准温度的过程,让大家可以更快的上手PT100!)
PT100就是一个热敏电阻,它的主要成分是铂,化学符号pt,也就传说中的白金,它的温度特性好,稳定性好,耐酸碱性好,所以被用来制作成了温度传感器,并在工业中有大量的应用,当然它的价格不便宜。PT100有一个标准的阻值温度对应表,在0度的时候,它的电阻值在100R,在常温25℃,它的电阻值是109.73R,我们可以通过测量它的电阻变化,就可以换算成温度,最简单的做法就是万用表测它的电阻值,然后查它的电阻温度表就可以转换成对应的温度,很简单吧。
在智能化的今天,我们就不去用万用表测电阻,然后查表,再转换成温度。我们可以把这些繁琐的过程统统交给单片机来处理。测温原理还是一样的,都是测电阻,根据电阻值再换算成温度值。不过用单片机来处理可能步骤会多一些,比上面的要复杂些。
Pt100在-50℃时,电阻值是80.31R,在0℃的时候,电阻值是100R,在100℃时,电阻值是138.51R,在200℃时,电阻值是175.86R,300℃时,电阻值是212.05R,在500℃时,电阻值是280.98R,如果我们的温度控制范围在-50℃ --- 500℃,可以看到电阻值的范围是80R --- 300R,其电阻变化是220R,温度变化是550多度,电阻每一欧姆变化大概对应2.5摄氏度的温度变化。对单片机来说,只能通过ADC来采集电压,所以要把电阻的变化转化成电压的变化,这样单片机才可以去识别,并转化成温度。电阻的测量方法有很多种,每一种都有不同的特点,常用的有(1)分压法,(2)恒流法,(3)电桥。
(1)分压法:分压电路如下图,就是电阻分压,然后测量PT100上的电压变化量,这个变化量很小,所以一般要放大。这个电路的优点是原理简单可靠,测量精度有分压电阻决定。
(2)恒流法:恒流法就是让流过pt100上的电流恒定,一般是1ma(因为1ma以上的电流会引起pt100发热),这样再去测pt100上的电压,和分压法相比,它的测量精度由给定的恒流精度决定。
(3)电桥法:电桥法如下图所示,其实上面的分压法本质也是电桥,不过是单桥,下面的是双桥,我们就用双桥来做pt100的测温吧。我用的是STM32F030F4的3.3V的单片机,ADC的电压范围就是0-3.3v,AD是12位的,所以AD值的范围就是0 --- 4095,我的电桥是3.3V的电压,和 单片机的ADC电源用的同一个电压,如果想要更高精度的温度,可以用恒压源TL431或者更稳定的恒压源IC。
(1)电桥的设计参数选择:
PT100电流要小于1ma,电桥电压是3.3V,所以电阻R1选用3K精度1%的电阻。这里尽量选择让流过pt100的电流在1ma附近,其实就是想让电压变化更大些,好方便采集。电桥的原理是比较两个分压电阻中间的电压值。,如果R1=R2,这时候,只有RPT=R3时,电桥才平衡,R3的电阻值就是RPT的电阻值。这个时候电桥是平衡的,后面的ADC的输入是0V,我们单片机采样得到的也是0,如果电桥不平衡,该怎样得pt100的电阻值呢?
(2)运放的参数设计:
选择合适的放大倍数,首先要确定测温的范围,pt100的测温范围可以从-50-600度,我们要根据自己的实际需求确定温度范围,这样才能选择合适的放大备份,我这里选择的10倍的放大。运放的电阻选取要不干扰输出采集端的电压,前面的电桥电阻大概是110R左右,我这里选取是47k和470K的电阻,这样连接在采样的电桥上,几乎不会引起电桥上的分压电阻的电压值。这样要注意运放的+和-端口,别弄错了,我们这里采样的单相3.3V供电,切记。
这样整个电路就确定下来了,下来我们来推算怎样实现电阻到温度的过程吧!
(具体的计算公式可参见附件完整文档,下载请点击文末阅读原文)
可能第一次接触pt100的童鞋对上面的思路还不是很理解,没有关系,自己在纸上好好写写画画推导下,心里对这个过程有个大概的理解,后面我会整个开源一个小pt100的测温项目,用的是stm32f030f4的单片机。