ARTICLE DETAIL

资讯详情

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

4~20mA模拟量采集避坑指南:从接线到滤波的5个实战陷阱

4~20mA模拟量采集避坑指南:从接线到滤波的5个实战陷阱 1. 为什么4~20mA至今仍是工业现场的“硬通货”干了十几年自动化每次带新人去现场调试十有八九第一个下马威就来自模拟量。尤其是4~20mA信号看着简单——两根线一个电流值对应一个工程量能有多难但真到了现场仪表显示和上位机对不上、信号跳变、通道烧毁这些问题能折腾你一整天。这篇文章就是写给刚入行或者被模拟量折磨过的朋友把4~20mA采集和处理中最容易踩的五个坑掰开揉碎讲清楚每个坑都配上我实际遇到过的案例和验证过的解决方案。先说说为什么4~20mA能活到现在还没被总线完全取代。核心就三个字抗干扰。工业现场电磁环境恶劣变频器、接触器、大功率电机启停到处都是干扰源。电压信号传输距离一长就衰减还容易被耦合噪声。电流信号不一样它走的是回路发送端和接收端串联在同一个回路里根据基尔霍夫电流定律回路中任意一点的电流都相等。这意味着只要回路完整导线电阻带来的压降不会影响接收端读到的电流值。4mA作为零点而不是0mA是为了区分“信号为零”和“断线”两种状态——如果读到0mA基本可以断定回路断了或者变送器没供电。20mA满量程留出了足够的信噪比余量。理解了这一点后面的坑就好解释了。很多问题本质上都是对“回路”这个概念理解不到位造成的。2. 坑一两线制、三线制、四线制傻傻分不清2.1 三种接线方式的本质区别新手最容易犯的第一个错误就是拿到变送器不看清是几线制直接往PLC模拟量模块上怼。结果要么不工作要么读数完全不对严重的直接烧通道。两线制变送器只有两根线这两根线既是供电线又是信号线。变送器本身耗电很小通常只有几毫安它从回路中“偷”一点电流给自己供电剩下的电流用来传递信号。所以两线制变送器的静态电流必须小于4mA否则零点就没法定义了。常见的压力变送器、温度变送器很多都是两线制。三线制变送器有三根线电源正、电源负、信号输出。电源和信号是分开的但电源负和信号负通常共地。这种接法多用于需要较大驱动功率或者输出信号与电源不共地的场合。四线制变送器则是电源完全独立两根供电线两根信号线。信号输出可以是电流也可以是电压隔离性最好但接线最麻烦。2.2 接错线会怎样我见过最典型的事故把两线制变送器接到PLC模拟量模块的电压输入通道上。两线制变送器需要外部供电而电压输入通道只测量电压不提供回路电流结果变送器根本不工作读数一直是零。更危险的是把四线制变送器的信号输出直接接到24V电源上瞬间烧毁输出级。还有一种情况是两线制变送器接到了PLC模拟量模块的电流输入通道但模块本身不提供回路供电。这时候需要外接一个24V直流电源把电源正接到变送器正端变送器负端接到模块的电流输入正端模块的电流输入负端接到电源负。这个回路必须完整缺一不可。注意接线前务必确认三件事——变送器是几线制、PLC模块是电流输入还是电压输入、模块是否提供回路供电。这三个信息在变送器铭牌和PLC模块手册上都能找到花两分钟确认能省两小时排查。2.3 快速判断与接线口诀我总结了一个简单的判断方法看变送器接线端子。两个端子的是两线制三个端子的是三线制四个端子的是四线制。两线制没有正负反接保护接反了不工作但一般不会烧三线制和四线制接反电源有可能烧。接线口诀两线制串电源三线制共地线四线制各管各。具体来说两线制变送器的正端接24V正负端接模块电流输入正模块电流输入负接24V负。三线制变送器的电源正接24V正电源负接24V负和模块电流输入负信号输出接模块电流输入正。四线制变送器的电源正负接24V信号输出正接模块电流输入正信号输出负接模块电流输入负。3. 坑二量程换算不是简单的线性映射3.1 原始值到工程量的换算逻辑PLC模拟量模块读到的原始值是一个整数比如西门子S7-200 SMART的模拟量输入通道4~20mA对应5530~27648。很多新手直接拿这个数除以27648再乘以量程这是错的。正确的做法是先减去零点对应的原始值再除以满量程对应的原始值减去零点原始值的差最后乘以工程量程。公式是这样的工程量 (原始值 - 零点原始值) / (满量程原始值 - 零点原始值) × (工程量上限 - 工程量下限) 工程量下限。以西门子S7-200 SMART为例4mA对应553020mA对应27648。如果变送器量程是0~1.6MPa那么当原始值为16589时工程量 (16589 - 5530) / (27648 - 5530) × (1.6 - 0) 0 11059 / 22118 × 1.6 ≈ 0.8MPa。3.2 不同PLC的原始值范围差异不同品牌的PLC模拟量模块原始值范围不一样这是新手最容易忽略的。西门子S7-200 SMART是5530~27648S7-1200/1500是0~27648对应0~20mA或者5530~27648对应4~20mA。三菱FX系列是0~4000对应4~20mA但有些模块是0~16000。欧姆龙CP系列是0~6000。汇川PLC根据模块型号不同有0~32000的也有0~27648的。如果你换了一个品牌的PLC没有重新确认原始值范围直接套用之前的换算公式读数就会完全不对。我见过一个项目工程师从西门子换到三菱没改换算程序结果压力显示一直是负值。3.3 量程溢出的处理还有一个细节当信号超过20mA时原始值会超过满量程值这时候工程量会超过量程上限。有些工程师不做限幅处理结果上位机显示压力爆表。正确的做法是在程序里加限幅当原始值大于满量程原始值时工程量取量程上限当原始值小于零点原始值时工程量取量程下限。同时可以设置一个报警提示信号超限。提示量程换算建议封装成子程序或功能块输入原始值、零点原始值、满量程原始值、工程量下限、工程量上限输出工程量。这样换PLC或者换变送器时只需要改参数不用改程序逻辑。4. 坑三屏蔽层接地接不对干扰比不接还大4.1 屏蔽层的作用原理4~20mA信号虽然抗干扰能力强但那是相对于电压信号而言。在强电磁干扰环境下比如变频器旁边、大功率电机附近干扰仍然会耦合到信号线上。屏蔽层的作用是把干扰信号引导到地不让它进入信号回路。但屏蔽层接地有个基本原则单端接地。也就是说屏蔽层只能在信号接收端或者发送端其中一端接地不能两端都接。如果两端都接地屏蔽层和大地之间会形成回路这个回路会感应到地电位差产生环流。这个环流会在屏蔽层上产生电压降反而耦合到信号线上造成干扰。这就是为什么有时候接了屏蔽层反而干扰更大。4.2 该接哪一端通常的做法是在PLC柜这一端接地也就是信号接收端。因为PLC柜通常有良好的接地系统接地电阻小。变送器那一端屏蔽层悬空用绝缘胶带包好不要碰到变送器外壳或者接线端子。如果变送器安装在现场现场没有良好的接地那就在变送器端接地PLC端悬空。但这种情况比较少见因为现场接地往往不规范。还有一种情况是信号线经过中间接线箱这时候屏蔽层在接线箱处要断开不能直接连通。如果接线箱有接地端子可以把屏蔽层接在接线箱的接地端子上但前提是接线箱的接地和PLC柜的接地是同一个接地系统。4.3 屏蔽层接0V还是接大地这个问题在论坛上争论很多。我的经验是接大地不接0V。0V是电源参考点不是地。如果把屏蔽层接到0V干扰信号会进入0V网络污染整个系统的参考电位可能导致其他信号也受影响。接大地是把干扰直接导入大地不影响信号回路。但有一种例外如果整个系统是浮地的也就是0V和大地之间没有连接那屏蔽层可以接0V。不过工业现场很少这么做因为浮地系统容易积累静电反而更危险。注意屏蔽层接地线要尽量短、尽量粗最好用编织铜带而不是细导线。接地电阻要小于4欧姆这是基本要求。如果接地电阻太大屏蔽效果会大打折扣。5. 坑四采样滤波没做好读数像坐过山车5.1 为什么读数会跳模拟量信号从变送器到PLC模块中间经过长距离传输不可避免地会引入噪声。这些噪声可能来自变频器的开关频率、接触器的电弧、无线电设备的辐射等等。噪声表现为原始值的小幅波动如果不做处理上位机显示的数值就会一直跳。有些新手看到读数跳第一反应是变送器坏了换一个还是跳。其实问题不在变送器在于没有做滤波。5.2 硬件滤波和软件滤波硬件滤波是在信号进入PLC之前加一个RC低通滤波器把高频噪声滤掉。RC滤波器的截止频率根据信号变化速度来定一般取信号最高频率的5到10倍。比如压力信号变化很慢截止频率可以取1Hz甚至更低。但硬件滤波会增加成本而且参数不好调整。软件滤波更灵活常用的方法有这几种算术平均滤波连续采样N次取平均值。N越大越平滑但响应越慢。一般N取4到16。一阶滞后滤波也叫惯性滤波公式是Y(n) α × X(n) (1-α) × Y(n-1)。α越小越平滑但滞后越大。α一般取0.1到0.3。中值滤波连续采样N次去掉最大值和最小值剩下的取平均。适合消除脉冲干扰。限幅滤波如果本次采样值与上次采样值之差超过某个阈值就认为本次采样无效用上次的值代替。适合消除突发干扰。我一般用一阶滞后滤波加限幅滤波的组合。先限幅把明显的坏值剔除再一阶滞后让曲线平滑。参数在现场调看上位机曲线调到既不跳变又跟得上实际变化就行。5.3 采样周期怎么定采样周期也很关键。太短了CPU负担重而且噪声采样得多太长了响应慢可能错过重要变化。一般模拟量采样周期取100ms到500ms。对于温度这种变化很慢的信号1s也没问题。对于压力、流量这种变化较快的信号100ms到200ms比较合适。在西门子S7-200 SMART里可以用定时中断来触发模拟量采样这样采样周期很稳定。在三菱FX系列里可以用定时器来触发。在汇川PLC里可以用循环中断组织块。提示滤波参数没有万能值必须根据现场实际情况调整。建议在程序里把原始值和滤波后的值都上传到上位机方便对比观察。调好了再把原始值去掉。6. 坑五模块选型和通道配置的隐藏陷阱6.1 模拟量模块的精度和分辨率选模拟量模块时新手往往只看通道数量忽略了精度和分辨率。分辨率是指模块能分辨的最小信号变化通常用位数表示。12位分辨率意味着把满量程分成4096份16位是65536份。分辨率越高能检测到的变化越小。但分辨率不等于精度。精度是指测量值与真实值的接近程度受模块内部基准源、放大器、ADC等多种因素影响。一个16位分辨率的模块精度可能只有0.5%。选型时要看精度指标不能只看分辨率。6.2 通道隔离与非隔离非隔离模块的所有通道共地通道之间会相互干扰。如果一个通道接了变频器附近的信号干扰可能串到其他通道。隔离模块每个通道独立隔离互不影响但价格贵。如果现场干扰大或者不同通道的信号地电位差大建议选隔离模块。如果信号源都是同一个地干扰也不大非隔离模块也能用。6.3 模块供电与回路供电有些模拟量模块需要外部24V供电有些通过背板总线供电。选型时要确认。另外模块是否提供回路供电也很重要。如果模块不提供回路供电两线制变送器就需要外接电源。如果模块提供回路供电接线就简单一些。我遇到过一种情况模块提供回路供电但供电能力有限只能带两个两线制变送器。接了四个后两个读数就不对了。查手册才发现模块的回路供电总电流有限制。所以选型时要算一下总电流需求。6.4 通道配置的常见错误在博途或者STEP 7里配置模拟量通道时要设置测量类型电流还是电压、测量范围4~20mA还是0~20mA、滤波等级等。如果测量类型设错了比如实际是电流信号但设成了电压读数会完全不对。如果测量范围设错了比如实际是4~20mA但设成了0~20mA零点会偏移。还有一个容易忽略的通道启用。有些模块默认所有通道都是禁用的需要在配置里手动启用。如果忘了启用读到的值一直是零。注意配置完模块后一定要下载到PLC并重启有些配置需要重启才生效。下载后在线监控一下原始值确认配置正确再继续。7. 常见问题速查表与排查思路7.1 问题速查表现象可能原因排查方法解决方案读数始终为零通道未启用、接线错误、变送器未供电用万用表测回路电流启用通道、检查接线、确认供电读数始终为满量程回路断路、变送器故障测回路电流是否为零检查线路、更换变送器读数跳变严重屏蔽层接地不当、滤波不足观察原始值波动范围单端接地、增加滤波读数偏差大量程换算错误、模块精度不足对比标准信号源修正换算公式、更换模块多通道相互干扰非隔离模块、共地干扰断开其他通道观察更换隔离模块、分开供电信号超限报警变送器量程与实际不符检查变送器铭牌更换合适量程变送器7.2 排查思路从源头到终端排查模拟量问题我习惯从源头开始。先用万用表测变送器输出电流确认变送器本身正常。然后测PLC模块端子上的电流确认线路正常。然后在PLC程序里监控原始值确认模块配置正常。最后检查换算程序和上位机显示确认软件正常。这个顺序能快速定位问题出在哪一段。如果变送器输出正常但模块端子电流不对问题在线路。如果模块端子电流正常但原始值不对问题在模块配置。如果原始值正常但工程量不对问题在换算程序。7.3 几个容易被忽略的细节万用表测电流时要串联在回路中不能并联。如果不确定先用钳形电流表测不用断开回路。变送器铭牌上的量程可能和实际设置的不一样。有些变送器量程可调出厂设置可能不是你要的。用HART手操器或者变送器上的按钮确认一下。PLC模块的接线端子可能松动尤其是用了很久的设备。定期紧固端子能避免很多莫名其妙的问题。信号线不要和动力线走同一个线槽。如果必须交叉尽量垂直交叉不要平行走线。8. 个人实操心得与建议最后分享几个我在实际项目中总结的小技巧。第一个是关于调试的。新项目调试模拟量时我习惯先不接变送器用一个4~20mA信号发生器给模块加信号从4mA到20mA逐点测试确认模块和程序都正常。然后再接变送器这样能把问题范围缩小。第二个是关于备件的。模拟量模块的通道容易损坏尤其是非隔离模块。建议关键工位备一块同型号模块坏了直接换不耽误生产。换下来的模块可以返修或者当备件拆通道用。第三个是关于文档的。每个模拟量通道对应什么信号、量程多少、原始值范围多少、换算公式是什么这些信息一定要记录在案。我见过太多项目调试的人走了后面的人看着程序一脸懵改个量程都要猜半天。第四个是关于接地的。如果现场干扰实在严重单端接地也解决不了可以试试把信号线穿铁管或者走金属线槽金属线槽要接地。这相当于给信号线加了一层屏蔽效果比单纯屏蔽层好。第五个是关于程序的。模拟量处理程序建议做成标准功能块输入输出参数化。这样不同项目可以直接复用减少重复劳动也减少出错概率。功能块里把限幅、滤波、报警都做进去用的时候只需要填参数。模拟量这东西说难不难说简单也不简单。关键是要理解原理知道每个环节为什么这么做。遇到问题不要慌按源头到终端的顺序排查总能找到原因。希望这篇文章能帮新手少走点弯路少烧几个模块。
返回列表