ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

PT100温度阻值对照表详解:从铂电阻原理到ADS1220采集实操

PT100温度阻值对照表详解:从铂电阻原理到ADS1220采集实操 做自动化设备和仪表维护这些年我养成了一个习惯工位抽屉里永远压着一张PT100热电阻的温度阻值对照表。PT100测温的核心逻辑就是电阻跟随温度变化说起来一句话但真到了现场对数据、校探头、写程序换算温度时没有一张准确的表临时翻手册、调上位机既折腾又容易出错。这篇文章把PT100的原理、完整温度阻值对照表、查表换算方法以及配合ADS1220这类24位ADC做数字采集的落地经验一次性讲清楚。不管你是搞PLC温控、单片机采集还是仪表检修都能直接拿去参考。1. PT100到底怎么测温——先弄懂这张表背后的道理1.1 铂电阻的原理一句话就能说清PT100的全称是铂热电阻PT是Platinum铂的缩写100代表它在0℃时的标称电阻值是100欧姆。它测温靠的是金属铂的电阻温度特性温度升高铂丝的电阻就变大。把这个传感器放进被测介质里等它热平衡后用万用表或者采集模块量出当前电阻再对照温度阻值表就能知道当前温度。听起来简单但PT100能成为工业测温的主流选择靠的是三个硬指标。一是稳定性好铂是贵金属抗氧化能力强长期使用漂移很小二是重复性好同一支探头在同一个温度点上反复测量结果一致性很高三是线性度尚可在整个测温范围内虽然不完全线性但比热电偶好很多后端换算和处理都方便。在-200℃到850℃这个区间内它几乎就是精度和成本平衡得最好的选择。1.2 分度号和精度等级先分清PT100是“分度号”的叫法之一。所谓分度号就是热电阻按0℃标称阻值和温度系数区分出来的型号。PT100的0℃阻值是100Ω除了PT100还有PT50、PT500、PT1000等命名规则一样数字就是0℃时的阻值。PT1000的灵敏度比PT100高10倍对弱信号采集更友好但测温范围通常会窄一些而且引线电阻的影响相对变小这几年在精密测量里用得多。不过工业现场绝大多数还是PT100配件好买、仪表通用性好。精度等级方面IEC 60751标准把铂电阻分成Class A、Class B等几个等级。Class A的允许偏差是±(0.15 0.002×|T|)℃Class B是±(0.30 0.005×|T|)℃。举个例子在0℃时Class A偏差±0.15℃Class B偏差±0.30℃到了100℃Class A是±0.35℃Class B是±0.80℃。这个偏差是传感器本身的固有误差后端仪表做得再准也躲不掉。所以要求高的场合选Class A一般工业监控选Class B就够用省钱又皮实。提示采购探头时铭牌上标注的Pt100、Class B这些参数和你的后端采集设备没有关系它只代表探头在标准温度下的出厂精度。探头精度不对后面接再贵的ADC也救不回来。2. 温度与阻值的数学关系——为什么不能永远按0.385Ω/℃算2.1 IEC 60751的标准公式PT100的温度-阻值关系不是绝对线性但标准上给了明确的数学表达式就是业内常说的Callendar-Van Dusen方程。温度大于等于0℃时阻值表达式是R(T) R0 × (1 A×T B×T²)温度小于0℃时要加一个修正项R(T) R0 × (1 A×T B×T² C×(T-100)×T³)其中R0100ΩIEC 60751给出的系数是A 3.9083×10⁻³B -5.775×10⁻⁷C -4.183×10⁻¹²为什么0℃以下要多一项C×(T-100)×T³因为铂电阻在低温段的非线性比高温段更明显不加修正的话误差会迅速增大。可以拿几个关键点验证这个公式T0时R100.00ΩT100时R138.51ΩT-200时R18.52Ω。这几个数就是标准表里的基准值用公式算出来分毫不差。2.2 平均灵敏度0.385Ω/℃是怎么来的很多人习惯把PT100当线性元件口算用“1℃对应0.385Ω”。这个数其实是0到100℃区间的平均灵敏度138.51减去100再除以100刚好约等于0.385Ω/℃。反过来记就是1Ω约等于2.6℃。但要注意这只是工程近似。在-200℃附近每℃的阻值变化大约是0.55Ω在500℃以上每℃变化会升到0.4Ω左右在850℃附近接近0.44Ω。不同温度点上的实际灵敏度不一样这就是为什么我们强调要查表或者用公式计算而不是全程用一个固定系数。尤其在低温段如果固定用0.385Ω/℃去换算误差会相当可观。3. PT100温度阻值对照表——-200℃到850℃完整数据3.1 10℃间隔完整表下面这张表是严格按照IEC 60751标准公式计算出来的单位是欧姆Ω。常规工业使用按10℃间隔取值基本够用需要更细可以继续看后面的常用区间表。温度(℃)阻值(Ω)温度(℃)阻值(Ω)温度(℃)阻值(Ω)-20018.52160161.05520287.61-19022.83170164.77530290.92-18027.10180168.48540294.21-17031.34190172.17550297.49-16035.54200175.86560300.75-15039.72210179.53570304.01-14043.88220183.19580307.25-13048.00230186.84590310.49-12052.11240190.47600313.71-11056.19250194.10610316.92-10060.26260197.71620320.12-9064.30270201.32630323.31-8068.33280204.92640326.49-7072.33290208.49650329.64-6076.33300212.05660332.79-5080.31310215.61670335.93-4084.27320219.15680339.06-3088.22330222.69690342.18-2092.16340226.21700345.28-1096.09350229.72710348.380100.00360233.21720351.4610103.90370236.70730354.5320107.79380240.18740357.5930111.67390243.64750360.6440115.54400247.09760363.6750119.40410250.53770366.7060123.24420253.96780369.7170127.08430257.38790372.7280130.90440260.78800375.7090134.71450264.18810378.68100138.51460267.56820381.65110142.29470270.93830384.60120146.07480274.29840387.55130149.83490277.64850390.48140153.58500280.98150157.33510284.303.2 工业常用区间-50℃到150℃细表这个区间覆盖了绝大多数的室温、水温、管道介质和气候环境测量我平时用得最多所以单独列一张5℃间隔的细表。温度(℃)阻值(Ω)温度(℃)阻值(Ω)温度(℃)阻值(Ω)-5080.3120107.7990134.71-4582.2925109.7395136.61-4084.2730111.67100138.51-3586.2535113.61105140.40-3088.2240115.54110142.29-2590.1945117.47115144.18-2092.1650119.40120146.07-1594.1255121.32125147.95-1096.0960123.24130149.83-598.0465125.16135151.710100.0070127.08140153.585101.9575128.99145155.4610103.9080130.90150157.3315105.8585132.803.3 几个必须背下来的特征点现场干活不是什么时候都方便掏表下面这几个特征点建议直接记在脑子里0℃对应100.00Ω50℃对应119.40Ω100℃对应138.51Ω150℃对应157.33Ω-50℃对应80.31Ω-100℃对应60.26Ω这些点是校表、验证程序、判断探头好坏时的“锚点”。最经典的检查方法把探头扔进冰水混合物里稳定后量出来应该是100Ω左右误差在探头精度等级范围内把探头放进沸腾的纯净水里在标准大气压下量出来应该是138.51Ω左右。如果这两个点都准探头基本没问题。4. 拿到阻值怎么换算温度——查表、插值和代码实现4.1 线性插值法手算也不怕假设量到一个阻值R126.50Ω先看10℃间隔表它落在60℃和70℃之间60℃对应123.24Ω70℃对应127.08Ω。按线性插值计算T 60 (126.50 - 123.24) / (127.08 - 123.24) × 10T 60 3.26 / 3.84 × 10T ≈ 68.5℃10℃间隔下做线性插值带来的误差对绝大多数工程应用来说可以忽略。你要实在不放心这个近似可以把这个温度和真实公式算出来的温度对比一下差值通常不到0.01℃。这是查表法最大的好处不用解高次方程现场拿笔算都能搞定。4.2 用代码反算温度程序里最省事的做法是把标准表固化成数组然后查表加插值。另一种做法是直接用公式反算用二分法逼近期望阻值对应的温度。下面这段Python代码我经常在调试脚本里用不依赖任何第三方库def r_to_t(r_target): def r(t): if t 0: return 100.0 * (1 3.9083e-3*t - 5.775e-7*t*t) else: return 100.0 * (1 3.9083e-3*t - 5.775e-7*t*t - 4.183e-12*(t - 100)*t**3) lo, hi -200.0, 850.0 for _ in range(100): mid (lo hi) / 2.0 if r(mid) r_target: lo mid else: hi mid return (lo hi) / 2.0 print(r_to_t(126.50)) # 约 68.5单片机资源紧张时不建议跑浮点二分法。我的习惯是用标准表生成一个10℃或5℃间隔的const数组放在Flash里运行时查表加线性插值用定点运算就够了速度快、占内存小。温度区间窄的话还可以把表精度进一步做细比如只放-50到150℃的数组。4.3 口算心算的快速办法没有表又必须快速估算时用0.385Ω/℃这个平均系数阻值每差1Ω温度大约差2.6℃。举个例子量到112Ω比100Ω多了12Ω估算温度就是0 12×2.6 ≈ 31.2℃和标准表111.67Ω对应的30℃相比误差不到1.5℃。这个精度在现场判断正常与否足够了。但记住这只适合0℃附近的粗略估算。到了低温区间比如-150℃附近1Ω对应的实际温度只有1.8℃左右还用2.6℃去折算就会明显跑偏。真到关键场合请回到表或者公式。5. 从传感器到数字量——配合ADS1220做RTD采集的实操要点5.1 ADS1220这类ADC为什么适合接PT100PT100的满量程信号其实很微弱。用1mA激励电流时0℃对应的电压是100mV850℃对应的电压是390mV。普通单片机自带的10位、12位ADC直接采样这种小信号分辨率远远不够所以需要带可编程增益放大器和24位分辨率的ADC。TI的ADS1220就是专门为RTD、热电偶这类传感器设计的。它片内集成了激励电流源、PGA、基准电压缓冲器和温度传感器一颗芯片就能完成从模拟测量到数字输出的全部工作。它的24位分辨率加上内置滤波器可以做到很高的测量精度。同类方案还有ADS1247、国产的TM7707等但要说上手资料齐全、参考设计多ADS1220确实是绕不开的选择。5.2 三线制接线和比值测量用ADS1220接PT100我最推荐的是比值测量方案。思路是这样的用ADC自带的同一个激励电流源同时流过PT100和一个精密基准电阻RREF。ADC采到的其实是两个电压的比值PT100和基准电阻共用同一个电流源电流的绝对值精度和温漂就被抵消掉了。换算公式很简单R_rtd (V_rtd / V_ref) × R_ref只要RREF温度系数够低这个方案天然抗激励电流漂移不用外部精密电压源。接线方式上三线制是用两个激励电流分别走两条线目的就是把引线电阻的压降补偿掉四线制则是电流线和电压线完全分开最准但探头和接线成本也最高。长距离走线时务必用三线制或四线制两线制的引线误差会让你怀疑人生。5.3 激励电流怎么选注意自热激励电流不是越大越好。电流大了信号强但会给探头引入额外的自热。PT100在静止空气中的自热系数大约在0.1到0.4℃/mW在水等流动介质里会小很多。用1mA激励100Ω的探头功耗只有0.1mW静止空气里自热误差在0.01到0.04℃左右可以接受。如果加码到2mA功耗翻四倍变成0.4mW自热误差就可能到0.1℃以上了。我的默认配置是IDAC用500µA或者1mA。信号幅度够PGA处理自热影响小。电流定下来后再选RREF要保证PT100在全部测量范围内产生的电压不超过ADC满量程输入也就是V_rtd_max要小于V_ref / G。举例IDAC500µARREF1500ΩPGA增益G4那么满量程输入是1.5V/4375mV对应可测阻值上限是375mV/0.5mA750Ω覆盖到850℃绰绰有余。ADS1220转换结果和阻值的关系可以按下面这样换算G 4.0 # PGA增益 RREF 1500.0 # 基准电阻单位Ω FS 2**23 # 24位ADC满量程码 code 2236962 # 举例0℃时的实测码值 r code * RREF / (G * FS) print(r) # 输出约100Ω6. 现场常见问题与排查技巧6.1 引线电阻造成的偏差两线制接线时引线电阻直接串进测量回路。一根0.5平方的铜线几十米长来回可能有2到4Ω的电阻按1Ω约2.6℃折算误差轻松超过10℃。这就是为什么远距离、高精度的场合必须用三线制或者四线制。排查思路也很直接把探头端子短接量一下回路总阻值看看引线电阻占了多少有条件就把探头拆下来单独量探头本体两端对比整体测量值差值就是引线和端子贡献的。软件补偿引线电阻不是不行但只适合固定布线、温度变化不大的场景因为铜引线的电阻本身也随环境温度变补偿数值会漂。6.2 自热效应对测量的干扰自热是RTD测量里容易被忽略的坑。探头装在管道里或者贴在被测物表面散热条件差激励电流产生的热量排不出去探头温度就会高于真实介质温度。表现是读数长期偏高而且介质流动性越差偏差越大。除了降低激励电流安装时也要保证探头插入深度足够一般要求探头敏感段完全没入介质插入深度不足时误差很大。探头和套管之间最好填充导热硅脂或者用弹簧压紧保证热传导良好。测气体温度时尤其注意气体的传热系数低同样的自热在气体里造成的温升比水里大得多。6.3 干扰、断线和端子问题现场电磁环境复杂时探头信号线和变频器动力线走同一个线槽仪表读数会乱跳。处理办法是信号线用屏蔽双绞线屏蔽层单端接地并且尽量远离动力线。ADC端的数字滤波也要打开ADS1220内置的50Hz/60Hz陷波滤波器能抑制不少工频干扰。断线和开路是另一类高发问题。探头断了读数通常直接跳到满量程或者显示无穷大接线端子里进了油污、氧化物则表现为读数偏高而且不稳定。我排查的第一步永远是断开采集端直接用万用表量探头两端电阻和表里的值对比先判断探头本体好坏再查线路和端子。6.4 常见问题速查表现象可能原因处理办法读数明显偏高两线制引线电阻未补偿改三线/四线制或在软件中扣减引线阻值读数偏低且跳动探头短路、端子氧化、绝缘下降万用表测探头阻值清理或更换端子读数跳满量程探头断路、接线松脱、插头氧化分段排查重新压接端子显示温度长期不变探头插入深度不够导热不良加深插入填充导热硅脂读数随线缆晃动变化接触不良屏蔽层接地不当重新压接屏蔽层单端接地高低温切换后回不到原值探头老化或安装应力过大更换探头释放安装应力7. 最后分享一点我自己的习惯做法干这行久了我总结出一个原则PT100测量系统里最容易坏的不是传感器而是连接和安装。探头本身是成熟产品出问题的概率不高真正让读数离谱的往往是引线电阻、端子接触不良、自热和屏蔽问题。所以每次调试新系统我都会先确认接线制度再确认激励电流最后才去怀疑探头本身。另外我习惯在手机里存一份PT100对照表也建议你把手头常用温度区间的细表打印出来贴在仪表柜里。现场校表时用冰水和沸水验证两个特征点几分钟就能判断一支探头能不能用。这个习惯帮我省过不少来回跑现场的冤枉路应该也能帮到你。
返回列表