ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

工业自动化控制系统信号类型全解析:从4-20mA到差分信号

工业自动化控制系统信号类型全解析:从4-20mA到差分信号 1. 从一次现场调试说起为什么搞懂信号比搞懂PLC更重要前阵子去一个做电池涂布设备的客户现场帮忙调试设备在车间里反复出现“无规律停机”的毛病。程序查了三遍逻辑一点问题没有后来用示波器一挂发现是压力变送器的4-20mA信号在变频器启动瞬间被干扰得抖成了正弦波PLC模拟量模块读到负值直接触发了急停。那一刻我突然意识到搞工业自动化控制系统最大的门槛不是写程序而是把信号这摊子事彻底吃透。从传感器到PLC、从驱动器到上位机整个系统传递的本质就是信号。如果把一台自动化设备比作一个人PLC是大脑伺服和气缸是手脚那信号就是遍布全身的神经网络。神经断了、串线了、信号失真了整台设备就会动作畸形甚至罢工。这篇内容就把工业自动化控制系统里最常见的信号类型一次性讲透包括它们的工作原理、选型依据、接线技巧和排查思路。不管是刚入行的电气工程师、PLC程序员还是做设备维护的现场工程师这篇文章能帮你在面对五花八门的信号类型时做到心里有数、手上不慌。说句实在话信号这东西看着基础但真正能把它讲明白、用明白的人并不多。很多工程师能熟练写ST语言却分不清NPN与PNP传感器的差别看不出差分信号波形上的小回勾意味着什么。这篇文章就是要把这些硬骨头一块一块啃下来。2. 模拟量信号4-20mA为什么能统治工业现场2.1 模拟量信号的本质与常见类型模拟量信号是工业控制系统中最“古老”也最“顽强”的一类信号。它用一个连续变化的物理量电流、电压、电阻来代表温度、压力、流量、液位等过程变量的实时数值。在工程现场最常见的模拟量信号无非这么几类4-20mA电流信号温度变送器、压力变送器、液位计、流量计的主力输出方式。0-10V电压信号部分变频器、比例阀、AO模块常用的控制信号。热电偶毫伏信号mV级K型、S型、J型热电偶直接输出的微弱热电势。热电阻电阻信号PT100、PT1000等随温度变化呈现近似线性变化的电阻值。称重传感器的毫伏信号电桥输出满量程通常是2mV/V左右。可能有人会问为什么模拟量信号不直接采用0-20mA、0-10V这样从零开始的基准这里有个很实际的工程考量那就是故障诊断。4-20mA的4mA这个“活零点”意味着只要信号线没断、变送器没坏哪怕测到的物理量是零回路上也至少有4mA的电流在流动。如果PLC读到的电流小于3.6mA甚至直接是0mA基本可以断定线路断线或变送器掉电了。这个特性在现场排查故障时极其好用。2.2 为什么电流信号比电压信号抗干扰能力强在工业现场电压信号非常容易被干扰。原因很简单电压信号的传输本质是在导线的两点之间建立电位差而干扰源尤其是变频器、伺服驱动器这种大功率设备会在导线上感应出噪声电压。更麻烦的是导线本身有电阻传输距离一长线路压降就会导致PLC端读到的电压低于传感器端的实际输出。电流信号则完全不同。电流是串联回路里的电荷流动只要回路闭合电流在回路的任何一个位置测出来都是一样大的导线电阻只会影响回路里的电压降而不会改变电流值本身。这就好比你往一根水管里注水只要不堵不漏水管中间再加长50米流过的水量也还是一样多。这里有一个实际参数可以作为参考带屏蔽的0.5平方毫米信号线传输4-20mA信号在大多数工业环境里传到500米甚至1公里问题都不大。而0-10V电压信号在同样的环境里跑到50米以上就需要开始担心压降和干扰问题了。2.3 4-20mA信号的分辨率与量程换算PLC的模拟量输入模块通常使用12位到16位的模数转换器ADC。以西门子S7-200 SMART的EM AM06模块为例它的电流输入是0-20mA对应数字量0-27648。如果接的是4-20mA变送器那么在PLC程序里通常要做一次坐标平移把实际读到的数字量换算成工程量。换算公式非常简单但现场很多新手容易搞混。标准公式长这样实际工程量 (数字量 - 量程下限对应数字量) ÷ (量程上限对应数字量 - 量程下限对应数字量) × (工程量上限 - 工程量下限) 工程量下限举个例子一个量程为0-1.6MPa的压力变送器输出4-20mA16位模拟量模块读到的原始值是8192对应4mA、32767对应20mA。如果程序读到的原始值是20000那么对应的压力就是(20000 - 8192) ÷ (32767 - 8192) × 1.6MPa ≈ 0.75MPa这里面最容易被忽略的就是“零点平移”。如果把4-20mA直接当作0-20mA去线性换算压力变送器量程为0-1.6MPa时4mA那一刻就会被错误地计算成约0.32MPa而实际上它表示的应该是0MPa。很多现场“仪表显示正常但PLC读数偏高”的故障根源就在这个不起眼的换算环节。2.4 变送器供电方式两线制与四线制两线制变送器只有两根导线既是电源线又是信号线。电源从PLC或配电器的24V供电端出经过变送器再从信号端流回模拟量模块的负端。整个回路的电流就是信号电流4-20mA的电流既是变送器的工作电流也是传输信号。四线制变送器则把电源和信号分开电源用一组线信号用另一组线。现场最常见的做法是四线制仪表用220V供电输出4-20mA信号信号正负两根线单独接到PLC模块。经验之谈优先选择两线制变送器。它省线、省端子、抗干扰性更好而且天然隔离了仪表电源与信号回路。但要注意两线制变送器存在“回路压降”的问题。以24V供电为例导线电阻、配电安全栅的压降、PLC模块采样电阻上的压降都要算在回路里。如果线路很长、中间又串联了多个隔离栅变送器端获得的实际工作电压可能低于其最低工作电压通常是12V这时候变送器就会输出异常甚至直接不工作。遇到这种情况最简单的办法是把PLC模块端稍微提高一点供电电压或者换成带单独供电的隔离配电器。3. 开关量信号DI/DO、干接点与常开常闭的选用逻辑3.1 开关量的信号形态与分类开关量信号在自动化控制系统里是数量最庞大的一类。它只有两个状态通或断、0或1、ON或OFF。一个按钮、一个接近开关、一个继电器触点、一个气缸磁性开关输出的都是开关量。从信号形式上分主要有三种干接点纯物理触点的通断本身不带电。比如继电器触点、普通按钮、温控器开关输出。这类信号只有“导通”和“断开”两种状态PLC通过检测回路里有没有电流来判断状态。NPN型晶体管输出导通时输出端对信号地0V导通相当于把信号线拉到低电平。日系传感器基恩士、欧姆龙大量使用这种形式。PNP型晶体管输出导通时输出端对信号正极24V导通相当于把信号线拉到高电平。欧系传感器西门子配套传感器、图尔克等以这种为主。这里一定要说清楚一个现场常见的“坑”NPN与PNP传感器的输出形态完全不同接错之后PLC输入点往往无法正确检测信号。国内设备目前以PNP居多但日系老设备、部分国产设备仍然大量使用NPN。如果现场两种传感器混用而PLC模块又不支持源型漏型切换很多晶体管输出模块是可切换的就会非常痛苦。我个人的习惯是在图纸上明确标注每个输入点的传感器类型并且在做IO分配表时把不同输出类型的传感器分开编组。3.2 常开与常闭这个选择比想象中更重要开关量信号里 “常开”与“常闭”的选择是新手最容易忽视但非常影响安全性的一个问题。常开NO触点在未动作时触点保持断开动作后闭合。常闭NC触点在未动作时触点保持闭合动作后断开。在急停回路、安全门回路、超温保护回路这类安全相关的信号中一定要用常闭信号。逻辑很简单当急停按钮没有被按下时回路保持闭合PLC读到“正常”状态一旦有人拍下急停按钮回路断开PLC立刻收到“急停触发”信号。但如果用了常开触点急停按钮到线断了、接线端子松了、触头老化失灵了PLC永远不知道这些异常它只会傻傻地认为“按钮没有被按下一切正常”这才是最危险的。而在一些普通的自动运行信号、启动按钮信号上则通常用常开触点。因为启动按钮本来就是靠按下那一瞬间触发一个脉冲信号平时保持断开是正常的不需要实时监控回路完整性。关于这个还有一个排查技巧如果PLC读到的某个安全输入点反复跳动但又找不到设备动作逻辑上的原因十有八九是接了常开触点。尤其是有些设计人员把急停信号接到安全继电器输入端子时误接常开会导致安全回路一上电就被判定为故障状态。3.3 PLC输入信号的源型与漏型接线PLC的数字量输入模块一般分为源型Sink和漏型Source两种接线方式不同品牌的叫法可能不一样本质是电流方向的问题。漏型输入Source Input西门子也叫“源型输入”三菱则常叫“漏型输入”信号电流从模块的公共端流出经过传感器开关流入输入点。简单说就是24V从公共端进信号线接传感器输出。适合PNP传感器。源型输入Sink Input西门子叫“漏型输入”信号电流从输入点流入模块再从公共端流回0V。简单说就是传感器一端接24V输出信号线接PLC输入点电流从传感器流入PLC。适合NPN传感器。很多人被“源型”“漏型”搞晕其实就是左右手坐标系的问题换个品牌换个叫法就懵了。我的建议是不用死记名字而是看你的传感器是什么输出类型。PNP传感器输出高电平那就接在把公共端接24V的PLC输入回路里NPN传感器输出低电平那就把公共端接0V。这个逻辑想通了什么品牌的模块都能很快接对。4. 脉冲与差分信号编码器、PWM和高速接口背后的信号本质4.1 编码器输出信号A/B/Z相与TTL/HTL伺服电机和步进电机的位置反馈离不开编码器。增量式编码器输出的是一串脉冲信号常见的接口有三种。TTL差分输出A/A-、B/B-、Z/Z-用差分线对传输抗干扰能力强适合长距离、高速度、高精度场合。脉冲电压通常是5V。集电极开路输出A相、B相、Z相三根线信号形式是开集电极晶体管外接上拉电阻后变成电压脉冲。这种信号结构简单速度不快适合短距离与PLC高速计数器连接。HTL推挽输出脉冲电压通常是10-30V相比TTL电平有更高的抗干扰能力在传统PLC输入电路里很常用。不过HTL一般不支持超高速。这里需要解答一个很多调试工程师都会遇到的问题为什么编码器用差分信号而不直接采用单端脉冲因为编码器输出频率可能高达几百kHz甚至几MHz在长距离传输时普通单端信号会受到共模干扰导致PLC高速计数误计漏计。而差分信号用两根线传送互为反相的信号接收端用两个信号的差值来判断逻辑状态任何同时叠加在两根线上的共模噪声都会被抵消掉。这也就是热词里提到的“差分信号原理”的核心价值。4.2 PWM信号数字方式实现模拟控制的关键技巧PWM脉宽调制信号在自动化控制里出镜率极高变频器控制、伺服速度给定、比例阀驱动、LED调光、加热器功率控制全靠PWM。它的本质是用一个固定频率的方波通过改变高电平占空比来等效输出不同的平均电压或平均功率。举个非常直观的例子给一个24V、30W的加热棒供电如果PWM频率是10Hz周期100ms占空比设为50%那就意味着每100ms里加热棒通电50ms、断电50ms。对加热系统来说这种快速通断等效于以50%的功率持续加热效果约等于直接加了一个12V的恒压电源但实现成本要低得多。PWM的三个关键参数是频率周期、占空比、分辨率。工业上常用PWM频率范围从几百Hz到几十kHz。控制加热通常用1-10Hz就能行因为加热负载响应慢而控制LED亮度或听感相关的应用则需要更高的频率几百Hz到20kHz否则人会感知到闪烁或听到啸叫。选择PWM频率的原则是负载响应速度越慢PWM频率就可以越低负载对噪声越敏感频率就要尽量避开工频干扰区和高频辐射敏感区。PWM的接收端有两种处理方式一种是直接把PWM信号当作开关量输出驱动固态继电器或晶体管比如PID温控器的SSR输出另一种是经过RC低通滤波器平滑成模拟电压比如部分PLC的AO模块用PWM生成0-10V信号。后一种方式成本低、精度也够用但输出带负载能力非常弱一般只能接高阻抗输入设备不能直接驱动仪表内阻否则滤波电压会被拉偏。4.3 差分信号的波形异常与判断做信号完整性分析的时候最常看到的波形问题就是热词里提到的“差分信号上升中有回勾下降是有平台”。这种波形畸变如果出现在高速数据线上比如千兆网口、USB、SDI视频信号往往意味着阻抗不连续或者串扰过大。回勾过深、平台过长会导致接收端眼图闭合误码率飙升。但在工业控制系统的编码器、RS485通信里我们也常看到类似的波形异常。通常的原因有几个线缆阻抗不匹配用了非120欧姆特性阻抗的普通电线替代专用屏蔽双绞线、接线端子处存在过长的裸线造成阻抗突变、或差分线对的一根线受损导致共模转换。用示波器观察差分信号两个通道分别接正负端用数学运算通道相减看到的才是真正的差分波形。如果这条差分的边沿存在明显的回勾或者在电平转换处出现毛刺第一件事应该是检查线缆本身。工业现场的设备间通信距离一旦超过说明书推荐值且线缆选型不达标任何差分协议都救不了你。5. 通信信号与信号完整性从RS485到工业以太网5.1 工业通信信号的物理层形态现代工业自动化系统的信号远不止传感器和PLC之间那点事设备与设备之间、控制器与上位机之间的通信信号同样关键。工业通信信号的物理层形态主要有这么几类RS485差分电压信号两线半双工长距离、多节点Modbus是典型代表。CAN差分电压信号两线半双工多主通信现场总线、设备互联常见。工业以太网标准信号用差分线对传输比如PROFINET、EtherCAT、EtherNet/IP物理层本质上都是标准以太网信号。光纤信号通过光脉冲传输抗干扰能力极强适合超远距离和对电磁干扰苛刻的场合。RS485应该是目前中小型自动化项目里最常接触的通信方式。它通过两条线A/B之间的电压差来传递逻辑信息A比B高代表一个逻辑状态B比A高代表另一个。RS485是典型的差分信号具备共模抑制能力传输距离在9600bps下最长可达1200米左右一条总线上通常最多挂32个标准负载节点。5.2 Modbus寄存器与数值信号的对应关系Modbus是建立在RS485物理层之上最普及的应用层协议。它之所以能被不同品牌设备广泛兼容一个重要原因在于它的数据模型非常清晰把设备的数据抽象成线圈Coil、离散输入Discrete Input、保持寄存器Holding Register、输入寄存器Input Register四类。在调试现场我们经常要做的一件事是“对寄存器地址”。比如一个带Modbus接口的温湿度变送器说明书上说“温度值保存在保持寄存器地址0x0001数据类型为有符号16位单位为0.1℃”。那么在PLC或上位机里就需要通过Modbus功能码0x03去读取保持寄存器把读到的原始数值除以10才能得到真实温度。这里提一个常见的坑——字节序问题。同一个寄存器地址有的设备按“高字节在前”Big-Endian传输有的按“低字节在前”Little-Endian。如果PLC侧没有正确配置字节顺序读到的数值就会变成完全错误的乱数。比如十六进制0x1234按低字节在前被解析成0x3412十进制的4660就变成了13330差了将近三倍。排查这类问题时万用表的通讯监视或Modbus调试软件非常有用可以直接看原始报文。5.3 信号完整性从PCB到工业线缆都在讨论的话题热词里出现了“PCBA电路信号完整性分析的必要性”这个词虽然在电子设计领域更常见但工业自动化系统同样绕不开信号完整性。信号完整性的本质是信号在传输路径上受到阻抗、反射、串扰、地弹等效应的影响后到达接收端时是否还能被正确识别。在PCB板上微带线和带状线需要控制特征阻抗在工业系统里RS485线缆需要120欧姆终端匹配电阻、屏蔽层需要单端接地、差分对需要双绞。在高速信号接口方面值得特别注意的有两点。第一是终端匹配。长线传输RS485时在总线两端各接一个120欧姆的终端电阻可以有效吸收信号反射。如果项目中总线节点不多、传输距离很短不接也能工作但一旦总线上看到振铃波先补上终端电阻再说。第二是线缆选型。很多人图方便直接用普通电线把两个设备的A、B端子接起来。短期能用但一旦距离拉长或者环境里的变频器干扰变大通信就会开始偶发失败。专用屏蔽双绞线其实不贵该用就用。6. 信号采集与故障排查接地、屏蔽和那些玄学问题6.1 信号热力图与动态信号采集分析热词里有个很有意思的词“信号热力图”。在日常的自动化调试中热力图更多出现在场强测试、无线通信覆盖、EMC排查等场景。方法是用一台频谱仪或专用的场强仪在设备周边按网格采样把各点的信号强度映射成颜色直观看到干扰的分布情况。与其靠感觉排查干扰源用网格化测量的方式客观捕捉数据要高效得多。举个例子一套设备里存在多个变频器和一个无线数传模块通信总是间歇失败。用热力图一测发现在设备右侧角落有一个磁场强度高峰再顺藤摸瓜找到那个区域正好是变频器输出电缆跟通信线捆扎在一起。理清之后无线模块位置挪了半米通信立刻稳定。而动态信号采集分析系统比如热词里的“dhdas”是工程振动测试、结构动力学里的常用工具它负责采集大量的动态信号数据加速度计输出的mV级信号、应变片的微弱电压变化、声学探头的高频信号。这类系统强调的是同步采样、高采样率、低噪声前置放大。在自动化设备中如果涉及设备振动监测、健康度诊断这套思路也能直接借鉴。6.2 模拟量信号采集的三大玄学问题模拟量信号最玄学的三个问题分别是读数漂移、读数跳变、读数整体偏低。这三个问题在现场出现的频率极高排查起来也非常费时。读数漂移最常见的原因是信号线受到热电势或环境温度变化的干扰。同一根线缆两端存在温度差就会产生毫伏级的直流偏移这在热电阻和热电偶毫伏信号采集中尤其明显。解决办法是采用同材质、同截面的引线保持接线端子处两线温度一致避免把线头放在散热风扇旁边。读数跳变绝大多数是干扰造成的高频噪声叠加在4-20mA回路里PLC采样到的是瞬间被抬高的电流值。出现这类问题先看屏蔽线是否接了、单点接地做没做再看信号线是否与动力线平行布线最后考虑加装信号隔离器。如果三招用完还在跳变那就要考虑变频器输出侧加装输出电抗器或者磁环。读数整体偏低往往是供电不足。两线制变送器的回路压降过大导致变送器工作电压不够输出电流达不到最大值。测量回路实际电流、确认变送器两端电压是否高于最低工作电压基本能定位问题。6.3 常见故障排查速查表故障现象可能原因排查步骤与解决方案模拟量读数跳变干扰、接地不良、滤波参数不合适确认屏蔽层单端接地、信号线远离动力线、在PLC模块中调整滤波次数模拟量读数整体偏低回路压降过大、变送器供电不足用万用表测变送器两端电压确认高于最低工作电压必要时更换配电器开关量信号检测不到NPN/PNP接错、公共端没接对确认传感器类型、检查公共端电压查看IO模块指示灯高速计数器丢脉冲干扰、脉冲电平不匹配改用差分输出编码器检查线缆阻抗匹配降低走线平行长度通信偶发失败终端电阻缺失、接地环路、波特率不匹配总线两端加120欧姆终端电阻确认站点地址与波特率检查AB线是否接反编码器读数翻转或错乱A/B相接线反了交换A/A-、B/B-接线或修改计数方向参数热电阻读数明显偏高三线制引线电阻不平衡检查三根线的线径与长度是否一致确保各线电阻相近4-20mA回路电流为零断线、变送器损坏、回路没有闭合用万用表电流档串入回路确认回路通断与变送器供电6.4 关于屏蔽层接地和现场布线的几条经验信号屏蔽层的接地处理是现场最容易做错的地方。屏蔽层的作用是把外部电磁干扰引导到地面前提是它必须有一个“地”可去。如果屏蔽层不接地它就跟一根悬空的天线一样反而会把干扰耦合进信号回路。关于单端接地还是双端接地理论和现场经常打架。理论上的建议是模拟量信号4-20mA、热电偶等屏蔽层单端接地一般在PLC柜端接地RS485通信线缆屏蔽层单端接地变频器输出电缆的屏蔽层通常双端接地因为它的屏蔽目的更多是抑制高频辐射泄漏。但在实际项目中往往需要结合现场的接地系统情况灵活调整。最笨也最有效的办法是准备一根备用屏蔽线先用单端接地再用双端接地用万用表或示波器监测信号噪声哪种接法噪声小就保留哪种。布线上还有一个很容易被忽视的细节所有模拟量信号线不管屏蔽与否都尽量不要与变频器输出线、伺服电机动力线走在同一个线槽里。如果实在避不开至少保证信号线与动力线之间隔开20cm以上并且在交叉处采用直角交叉。很多干扰问题不是信号线本身质量不行而是布线阶段省了这20cm的间距后期被迫花几天时间排查干扰。6.5 滤波器在信号回路中的正确角色热词里出现了“滤波器”这也是信号处理里绕不开的一环。工业控制系统中滤波器的使用场景主要有三个。第一个场景是PLC模拟量模块内部的数字滤波。几乎所有主流PLC的模拟量模块都支持设置“滤波次数”比如西门子S7-1200的模拟量模块可以设置4、8、16、32次甚至更高的平滑等级。滤波次数越高读数越稳定但响应越迟钝。在液位、温度这类惯性大的被控对象上可以放心地把滤波次数调高但在压力、流量这类需要快速响应的系统上滤波调太高会导致调节滞后系统容易震荡。第二个场景是模拟量输入前级的硬件滤波。有的模块或信号调理板上会放置RC低通滤波器用来滤除高频干扰。RC滤波的截止频率计算公式是f1/(2πRC)如果要滤除1kHz以上的高频噪声选R1kΩ、C0.1μF截止频率大约在1.59kHz。这种硬件滤波能有效衰减高频干扰但对工频干扰50Hz几乎无效因为工频太低了。第三个场景是PWM输出后的平滑滤波。在不允许PWM直接驱动负载的场合比如要给一个比例阀提供干净的模拟电压信号可以在PWM输出后接一个二阶低通有源滤波器把方波平滑成直流。这个滤波器要特别注意响应时间与纹波的平衡RC时间常数太小则纹波大太大则响应慢。常规做法是先确定可接受的响应时间比如0.5秒再去反推滤波器截止频率最后确认在截止频率处的衰减量能不能满足纹波要求。7. 关于信号系统的几点个人体会把工业自动化控制系统的信号梳理一遍之后很自然地浮现出一个共性结论信号问题的本质从来不只是电气问题它同时涉及通信、机械、软件和现场环境。一个看似简单的“PLC读数跳动”背后可能是传感器坏了、线缆接触不良、变频器干扰、模块滤波参数不合适、或者程序里换算算法写错。排查信号相关的故障最忌讳的是上来就换设备、改参数一定要先建立一套自己的排查逻辑从源头传感器开始测从信号链路往里逐级查从终端模块反推验证。我在实际项目里踩过无数坑之后形成的习惯是每个项目做到IO分配阶段就同步画一张“信号清单”把每路信号的类型、传感器输出形式、接线位置、屏蔽接地方式、模块通道号全部列成表格。这张表在设备调试阶段价值极大尤其是遇到多人配合调试或者售后交接时它几乎能把“这个信号在哪儿”“这个信号应该是什么形态”“有问题先从哪查”一次性说清楚。做信号系统没有太多玄学如果一定要说有什么心得那就是尊重每一个信号的设计初衷在选型、布线、接地和滤波这些环节上舍得下功夫。前期多花半小时规划线缆路径后期可能省下三天泡在车间里的日子。信号系统得稳设备才能真正跑得顺这是我在一线反复验证过的道理。
返回列表