pt100测温电路图(ad590典型的测温电路)

PT100精密测温电路一、需求分析根据题目要求为:测温范围为0-100℃、测温精度要求为±1℃。由于铂电阻具有精度高、性能可靠、稳定性好的特点,且铂电阻的电阻相对变化率与温度的关系曲线线性度最好,故选择铂电阻作为敏感元件。而在国标中,铂电阻有几种不同的标准,如PT100、PT1000。分别对应着0摄氏度下铂电阻的阻值为100R和1000R,由于需要考虑铂电阻的自发热问题,所以尽量选择阻值小的铂电阻,故选择PT100为最终型号。二、电路设计2.1热电阻接法热电阻测温电路有多种接法,其中三线制会导致

大家好,又见面了,我是你们的朋友全栈君。

PT100精密测温电路

一、需求分析

根据题目要求为:测温范围为0-100℃、测温精度要求为±1℃。由于铂电阻具有精度高、性能可靠、稳定性好的特点,且铂电阻的电阻相对变化率与温度的关系曲线线性度最好,故选择铂电阻作为敏感元件。而在国标中,铂电阻有几种不同的标准,如PT100、PT1000。分别对应着0摄氏度下铂电阻的阻值为100R和1000R,由于需要考虑铂电阻的自发热问题,所以尽量选择阻值小的铂电阻,故选择PT100为最终型号。

二、电路设计

2.1 热电阻接法

热电阻测温电路有多种接法,其中三线制会导致可调电阻的接触电阻与电桥臂的电阻相连,可能导致电桥的零点不稳。所以最后采用四线制接法,四线制解法的示意图如图一所示

PT100精密测温电路

一、需求分析

根据题目要求为:测温范围为0-100℃、测温精度要求为±1℃。由于铂电阻具有精度高、性能可靠、稳定性好的特点,且铂电阻的电阻相对变化率与温度的关系曲线线性度最好,故选择铂电阻作为敏感元件。而在国标中,铂电阻有几种不同的标准,如PT100、PT1000。分别对应着0摄氏度下铂电阻的阻值为100R和1000R,由于需要考虑铂电阻的自发热问题,所以尽量选择阻值小的铂电阻,故选择PT100为最终型号。

二、电路设计

2.1 热电阻接法

热电阻测温电路有多种接法,其中三线制会导致可调电阻的接触电阻与电桥臂的电阻相连,可能导致电桥的零点不稳。所以最后采用四线制接法,四线制解法的示意图如图一所示
在这里插入图片描述
图一:四线制接法

2.2 恒流源的选择

由于热电阻的自热效应,要保证流过电阻的电流尽量小,一般希望电流小于10mA,经查证铂电阻PT100自体发热1 mW约会造成0.02~0.75℃的温度变化量, 所以降低铂电阻PT100的电流亦可降低其温度变化量, 然而, 若电流太小, 则易受噪声干扰, 所以一般取值在0.5~2 mA[1],所以将恒流源电流选择为1mA恒流源。有以下两种选择

2.2.1 LM134恒流源

选择芯片为LM134恒流源芯片。1mA恒流源电路如图二所示
在这里插入图片描述

图二 1mA恒流电路

电阻R2、R3的选择根据数据手册确定,从电路上看,在温度为25℃的情况下,电流源电流为1.0068mA,即该电流源的精度为0.6%。而该电流源的输出电流的精度与R2、R3有直接的关系,所以电阻R2、R3的精度应当尽量高,为0.1%的精密电阻。当然,为了适当降低成本,也可采用可调电阻,在人工标定好电流以后,用热熔胶将电阻的调整端封住即可。但是该电路存在温漂过大的情况。该电路的工作环境温度为0-100℃,所以不予采用。

2.2.2 TL431恒压源

选择芯片为恒压源芯片TL431,然后利用电流负反馈转化为恒流源,电路如图二所示
在这里插入图片描述
图三 TL431恒流源

其中运放CA3140用于提高电流源的带载能力,输出电流的计算式为
I o = 1 + β β I r 10 = U − V r e f R 10 = V r e f R 3 ( R 2 + R 3 ) − V r e f R 10 = V r e f R 2 R 3 R 10 I_o=\frac{1+\beta}{\beta}I_{r10}=\frac{U-V_{ref}}{R_{10}}=\frac{\frac{V_{ref}}{R_3}(R_2+R_3)-V_{ref}}{R_{10}}=V_{ref}\frac{R_2}{R_3R_{10}} Io=β1+βIr10=R10UVref=R10R3Vref(R2+R3)Vref=VrefR3R10R2
其中电阻应取0.1%的精密电阻。最后输出电流为0.996mA,即精度为0.4%,该电路相对于LM134的电路温度稳定性更好,精度更高。所以选择该电路作为电流源。

2.3放大电路的选择

由PT100分度表可知,0℃时PT100阻值为100R,100℃时PT100阻值为138.5R,所以在1mA的恒流源下,铂电阻两端的电压应在100mv到138.5mv之间波动,想要使得输出电压在0-5V之间,放大电路至少为5/138.5×1000=36.101倍。

出于高输入阻抗、低输出阻抗、高共模抑制比的优点考虑,我们在此选用的放大电路为仪表放大电路,由OP07所构成的仪表放大电路图如图四所示

在这里插入图片描述

图四 仪表放大电路

该电路的放大倍数由以下公式决定

U o u t = − ( V i n 1 − V i n 2 ) ( 2 R 1 R 10 + 1 ) R 13 R 11 U_{out}=-(V_{in1}-V_{in2})\left(\frac{2R_1}{R_{10}}+1\right)\frac{R_{13}}{R_{11}} Uout=(Vin1Vin2)(R102R1+1)R11R13

该电路同样对电阻的要求很高,电阻R1和R9 、R11和R12 、R13和R14必须严格匹配。但是在实际的运用中仅仅改变电阻R10,即可改变运放的放大倍数,虽然在仿真的时候效果与集成仪表放大器没有什么差别,但是在实际中会带来很大的影响。所以现在普遍使用集成的仪表放大器,其内部通过半导体工艺将电阻严格匹配,而通过控制电阻R10来控制电路增益。出于成本以及避免大量使用高精度电阻以及更高精度的考虑,在此选用集成仪表放大器AD623。其所构成的电路如图五所示
在这里插入图片描述
图五 AD623电路

其中电容全为用于平滑波形的去耦电容,所以精度无需太高,取5%的电容即可。而经查证AD623的数据手册,该电路的放大倍数由下列公式所决定

V o = ( V i n 1 − V i n 2 ) ( 1 + 100 K Ω R G ) V_o=(V_{in1}-V_{in2})(1+\frac{100K\Omega}{R_G}) Vo=(Vin1Vin2)(1+RG100KΩ)

其中RG采用可调电阻,以方便微调放大倍数。

由于在0-100℃时,该电路输出电压为3.61-5.00V,为了进一步将输出电压范围扩大到0-5V,可以利用减法电路取出铂电阻在0-100℃电压变化的范围。减法电路直接利用仪表放大器的差分输入即可实现,具体电路如图六所示在这里插入图片描述

图六 整体电路

其中R8应该为100R0.1%的精密电阻,即其阻值等于0℃时的PT100的阻值,同时通过其的电流源为与PT100所使用电流源一致的电流源,且其所处的环境温度也应当一致,以提供一个PT100在0℃下的参考电压,但是由于PT100在0℃时的阻值未必精确为100R,所以实际出厂前应当使得PT100处于0℃的条件下,R8为可调电阻,调节其阻值使得运放输出值为0V,再将可调电阻阻值固定。

3.1 性能指标

整体的测量电路已经在图五中给出,下面给出各个元件的具体性能指标

3.1.1 恒流源参数

恒流源应当具有以下几个特性

  • 温度稳定性:由于我们测温环境为0-100℃,所以电流源的输出不应当对温度敏感。而TL431具有极低的温度系数,温漂低。
  • 负载调整率好:如果电流纹波过大,将导致出现读数误差,根据理论分析,由于输入电压在100-138.5mV之间变化,而测温范围0-100℃,测温精度±1摄氏度,所以环境温度每升高1℃,输出电压变化应为38.5/100=0.385mV,为了保证电流的波动不影响精度,考虑最极端的情况,100摄氏度时,,此时PT100的阻值应为138.5R。则电流纹波应当小于0.385/138.5=0.000278mA,即负载变化的过程中电流的变化应当小于0.000278mA,在实际的仿真中,电流源基本不变。

3.1.2 电阻参数

R2、R3、R4、R5、R6为0.1%精密电阻,阻值标注在图中。R8采用可调电阻,用于出厂调零。图中全为给定电阻,是为了仿真方便。

3.1.3 电容参数

电容全为去耦电容,采用5%精度的即可,容值已经在图中标注出。

3.2 误差分析

主要的误差来源于电流源误差、电阻精度误差、运放放大倍数误差以及PT100内部噪声,经过仿真,输出结果如下所示,所以,该测温系统完全满足要求。如果需要进一步提高精度,可以根据PT100分度表,利用牛顿插值,推测分度表以外的温度。但是在正负1摄氏度的精度要求下,直接将PT100的温度特性视为线性的即可。

温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V 温度/℃ 电压/V
0 0 11 0.56 21 1.06 31 1.56 41 2.06 51 2.56 61 3.06 71 3.56 81 4.05 91 4.55
1 0.05 12 0.61 22 1.11 32 1.61 42 2.11 52 2.61 62 3.11 72 3.61 82 4.1 92 4.6
2 0.11 13 0.66 23 1.16 33 1.66 43 2.16 53 2.66 63 3.16 73 3.66 83 4.15 93 4.65
3 0.16 14 0.71 24 1.21 34 1.71 44 2.21 54 2.71 64 3.21 74 3.71 84 4.2 94 4.7
4 0.21 15 0.76 25 1.26 35 1.76 45 2.26 55 2.76 65 3.26 75 3.76 85 4.25 95 4.75
5 0.26 16 0.81 26 1.31 36 1.81 46 2.31 56 2.81 66 3.31 76 3.81 86 4.3 96 4.8
6 0.31 17 0.86 27 1.36 37 1.86 47 2.36 57 2.86 67 3.36 77 3.86 87 4.35 97 4.85
7 0.36 18 0.91 28 1.41 38 1.91 48 2.41 58 2.91 68 3.41 78 3.91 88 4.4 98 4.9
8 0.41 19 0.96 29 1.46 39 1.96 49 2.46 59 2.96 69 3.46 79 3.96 89 4.45 99 4.95
9 0.46 20 1.01 30 1.51 40 2.01 50 2.51 60 3.01 70 3.51 80 4 90 4.5 100 4.99
10 0.51 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

参考文献
[1]党向婷,肖军.基于恒流源激励的PT100测温电路在锅炉控制系统中的应用与研究[J].电子设计工程,2019,27(05):77-80+85.

仿真软件为proteus 8.8 仿真文件可以在我的下载页面下载
如果觉得这篇文章很好,给你提供了帮助,请给我点一个赞吧
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/127567.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 小区口的凉皮大叔,实力演绎如何低调地月入30000

    小区口的凉皮大叔,实力演绎如何低调地月入30000

  • C# List用法 List 实列介绍

    C# List用法 List 实列介绍 usingSystem;usingSystem.Collections.Generic;namespaceList{classProgram{staticvoidMain(stri

  • DECODE函数使用

    DECODE函数使用DECODE函数,是ORACLE公司的SQL软件ORACLEPL/SQL所提供的特有函数计算方式,DECODE函数是ORACLEPL/SQL的功能强大的函数之一,了解使用DECODE函数很有必要。1DECODE中的if-then-else逻辑在逻辑编程中,经常用到If–Then–Else进行逻辑判断。在DECODE的语法中,实际上就是这样的逻辑处理过程。它的语法如下:  DECOD…

  • 什么是Unicode字符_Unicode格式字符是什么

    什么是Unicode字符_Unicode格式字符是什么写这篇博客的原因,从做软件开始,什么ASCII码,Unicode,UTF-8,UTF-16,UTF-32……这些鬼东西总是经常碰到,只知道这些鬼是编码格式,其他的就啥都不清楚了,既然总是遇

  • 我的世界显示服务器领地指令,我的世界领地指令介绍 我的世界领地指令怎么设置…

    我的世界显示服务器领地指令,我的世界领地指令介绍 我的世界领地指令怎么设置…在我的世界这款经典有趣的建造类游戏中,为了让自己的领地不然其他玩家占用,我们可以设置一下领地。那我的世界领地怎么设置呢?下面是小编给大家分享的我的世界领地指令大全,大家赶紧来了解一下吧!一、我的世界设置领地:先用一块木头斧子左键敲击一方块设置点A,右键敲击一方块设置点B(可以输入“/resselectsize”查看所选区域的大小);之后输入“/rescreate123”(例)这样设置后,就…

  • hibernate5二级缓存配置

    hibernate5二级缓存配置hibernate默认有一个一级缓存,就是默认的Session缓存,当我们做了一次查询,hibernate会把这个结果缓存起来,叫做一级缓存,当我们接着在这个Session会话里面再做一次同样条件的查询,hibernate不会再次查询数据库,而是直接在一级缓存中获取结果并返回。一级缓存是内置的,他也不能被卸载。一级缓存是指在同一个Session会话内的查询做的缓存,如果跨了Session,或者当前…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号