半夜两点被电话叫醒这种事,干工控的应该都遇到过。电话那头一句话:“整条线停了,PLC没有输入信号。”等你赶到现场,拿着万用表对着端子排量了半天,最后发现就是一个继电器触点接触不良,或者接近开关被铁屑糊住了感应面。折腾俩小时,真正处理只花了三分钟——这种事不算大,但产线停一分钟就是一分钟的钱,值班电话一响,责任就压过来了。
干这行越久越发现一个规律:现场绝大部分故障,归根结底都是“信号”出了问题。要么该有的信号没有,要么不该有的信号乱来,要么信号值不对、跳变、漂移。PLC主机本身反而很少坏。所以我常说,吃透控制信号,是工控人的基本功,也是区分老手和菜鸟的一条分水岭——老手到了现场,看状态、测端子、分分钟定位;新手拿着万用表不知道先量哪、量到什么算正常。这篇文章就把工控现场最常见的8种自动化控制信号挨个讲透,从原理到接线,从测量方法到故障特征,尽量说清楚、说明白,看完了你再去现场,心里会踏实很多。
1. 工控信号的“全家福”:这8种信号到底在传什么
先建立整体框架。一个自动化控制系统不管多复杂,本质上就干三件事:感知、决策、执行。传感器把物理量变成电信号送进控制器,控制器按程序算完,再输出信号去驱动执行机构。这是信息流向,而从“电信号长什么样”的角度分,工控现场最常见的信号类型就那么八种。
| 序号 | 信号类型 | 常见设备举例 | 典型特征 |
|---|---|---|---|
| 1 | DI 数字量输入 | 按钮、限位开关、继电器触点、接近开关 | 只有“通/断”两个状态,看电压有无 |
| 2 | DO 数字量输出 | 接触器、电磁阀、指示灯、蜂鸣器 | 输出“通/断”信号去驱动负载 |
| 3 | AI 模拟量输入 | 压力变送器、液位计、流量计 | 连续变化的电流或电压,4-20mA最常见 |
| 4 | AO 模拟量输出 | 变频器给定、调节阀定位器 | 控制器输出连续信号去控制执行器 |
| 5 | 温度信号 | 热电阻Pt100、热电偶K型 | 电阻或毫伏值随温度变化 |
| 6 | 脉冲/频率信号 | 旋转编码器、脉冲流量计、高速计数 | 一串脉冲,靠个数和频率传递信息 |
| 7 | 总线通信信号 | RS485/Modbus、工业以太网 | 靠数据帧传信息,看状态灯和报文 |
| 8 | 伺服/步进控制信号 | 伺服驱动器、步进驱动器 | 使能+脉冲+方向,位置控制的命脉 |
这个分类不是教科书硬分的,是按照现场维修的习惯划分的——你看到什么现象,就对应去查哪一类信号。比如设备不动,先看是DO没输出,还是DI没收到反馈;压力值乱跳,查AI线路和变送器;伺服位置不对,查脉冲信号和方向信号。把信号分门别类装进脑子里,故障排查的思路自然就清晰了。接下来一个一个说透。
2. 数字量输入信号(DI):有电没电,一说就懂
2.1 DI信号的底层逻辑:一个光耦走天下
DI信号的本质就是一个开关量状态:触点闭合还是断开。PLC的每一个DI点内部都是一个光耦隔离电路,外部触点通过接线端子接入,24V电源经过外部触点后流入PLC内部,点亮光耦,PLC就能读到“1”。
这里要澄清一个很多新手绕不过去的坎:PLC的DI输入是靠外部给电的,不是PLC自己输出24V到端子上让触点去闭合。常见接法是PLC提供一个24V电源,这24V经过外部触点再返回DI端子。所以测量DI点时,万用表一头夹24V+,另一头量DI端子,如果量到24V,就说明外部触点已经闭合、信号已经到达PLC端子——注意,是“到达端子”了,不代表PLC一定读到1,后面还有内部电路需要考虑。
2.2 PNP和NPN:工控人绕不开的生死劫
传感器的输出类型,是所有DI信号里最容易出问题的点。PNP和NPN到底啥区别?用大白话说:
- NPN输出:导通时,信号线对电源负极(0V)连通,相当于信号线被拉到低电平。负载要接在电源正极和信号线之间。
- PNP输出:导通时,信号线对电源正极连通,相当于信号线输出高电平。负载要接在信号线和电源负极之间。
你看,同样是传感器,一个“拉低”,一个“推高”,接到PLC上结果完全不同。PLC的DI模块也分源型(sourcing)和漏型(sinking),源型模块公共端接正极,适合接NPN传感器;漏型模块公共端接负极,适合接PNP传感器。接错了怎么办?信号死活不翻转,或者相邻点串位。
现场怎么快速判断手里这个传感器是PNP还是NPN?用万用表电压档,黑表笔接24V的0V,红表笔接传感器信号线。触发传感器动作,如果信号线电压在0V和24V之间切换,说明是PNP(高电平有效);如果信号线始终对0V是0V、但触发后万用表对24V却能量到24V,说明是NPN(低电平有效)。搞不清模块型号时,这个办法最稳。
2.3 DI故障排查实录:先量电压再看灯
DI类故障无外乎三类:没信号、信号乱、信号到了但PLC不认。
我遇到最多的“信号到了但不认”特别坑人。某次设备上有个限位开关,换了个新的,动作也正常,但PLC就是读不到。拿万用表量PLC端子,电压只有13V左右,而且数值不稳。PLC内部光耦的导通阈值一般要15V以上,13V正好卡在不认的状态。原因是什么?机械触点本身氧化,接触电阻变大,24V被触点和线路内阻分压,到PLC端就只剩十几伏了。这种问题不量电压只看万用表通断档是发现不了的——停电量通断是好的,带电量电压就露馅。
还有一类是感应电压问题,最烦。触点断开了,PLC却偶尔动作或报警,量端子有十几伏的“虚电压”。原因是控制线缆和动力电缆长距离平行走线时,线间分布电容会耦合出感应电压,高阻抗的PLC输入电路根本吃不掉这个电压。处理办法:在PLC输入端子并一个泄放电阻或者外接一个中间继电器,用负载把感应电压拉低。
DI排查建议按这个顺序来:先看PLC输入指示灯亮不亮,亮说明信号到了;不亮就量端子有没有电压;端子有电压但灯不亮,八成模块内部光耦坏了;端子没电压,往回查线、查触点、查传感器供电。
3. 数字量输出信号(DO):输出点不动作,到底是谁的锅
3.1 继电器输出和晶体管输出的性格差异
DO信号就是PLC对外输出“有电/没电”的开关信号。但实现方式有两种,性格完全不一样。
继电器输出:靠内部小继电器触点通断,容量大、交直流都能带,缺点是响应慢、触点寿命有限。坏了往往是触点粘连。晶体管输出:靠电子开关通断,只能带直流负载,响应快、寿命长,缺点是怕感性负载的反向电动势,而且有极性,不能接反。现场用晶体管输出直接驱动小继电器的场合特别多,但最怕接的是接触器线圈这种大电感负载,断电瞬间线圈会产生高压反电动势,几十伏甚至上百伏,直接打的晶体管击穿。所以晶体管输出接感性负载必须在线圈两端反向并联续流二极管,或者加RC阻容吸收。
3.2 测量DO通道的技巧:把负载断开再判断
DO故障最典型的场景是:设备不动作,PLC上输出指示灯亮了,但负载就是不动。这时候要先把负载侧的线摘掉,然后量PLC输出端子是否有电压输出。这个动作很关键——如果端子有电压,说明PLC输出正常,问题在外部线路或负载;如果端子没电压,说明PLC内部触点或电子开关没导通。
另一种情况是PLC指示灯没亮,但设备自己动了。这种情况十有八九是继电器输出触点粘死了——触点在断开位置粘连在一起,程序输出断开,实际负载一直得电。处理很直接:换输出点,把程序地址改到空余的DO点,并且把坏点的外部接线挪过去,这台设备就能马上恢复生产,坏点等停机再修。
关于晶体管输出的漏电流问题也要注意。晶体管截止以后,电路里会有微弱的漏电流,几毫安级别,驱动大负载没事,但如果你输出接的是小型中间继电器、指示灯这些灵敏度极高的负载,漏电流可能让它们“半死不活”——继电器不正常吸合、LED微微发光。解决就是在输出端并联一个几百欧到几千欧的电阻,把漏电流吃掉。
4. 模拟量信号(AI/AO):4-20mA为什么能称霸工业界
4.1 说透4-20mA:为什么选4,不选0
模拟量信号在过程控制领域几乎是4-20mA的天下,其次才是0-10V。为什么电流信号用得最多?两个原因。第一,电流信号在长距离传输中不衰减。电压信号在线缆上会有线路压降——你送出去10V,到PLC端可能只有9.6V,线越长、线径越细,衰减越严重。电流不一样,串联回路里电流处处相等,线阻只影响电压而不影响电流,所以长距离传输信号完整性更好。第二,4mA的“活零点”设计非常巧妙。如果0mA代表量程0%,那么断线和信号为零就区分不出来。用4mA作为零点,量程从4-20mA,一旦线路断了、变送器坏了、供电丢了,电流会掉到4mA以下(甚至0mA),PLC一检测到电流小于3.6mA左右就知道“信号异常”,可以立刻报警。这就是故障可诊断性,0-10V电压信号做不到——因为0V既可能是真实的0%,也可能是断线了,你分不清。
4.2 两线制、三线制、四线制的接线差异
模拟量变送器的接线,最让新人头大。我尽量用白话说:
- 两线制:信号和供电共用两根线。变送器只有两个接线端子,接上24V电源和PLC的AI通道,电源从一根线进去,信号从同一回路出来。省电缆、成本低,工业现场用得最多。
- 三线制:三根线,一根接24V+,一根接AI+,一根接0V/公共端。变送器本地需要电源,比两线制多一根地线,抗干扰略好。
- 四线制:电源线两根、信号线两根,完全分离。供电能力强,可以带大功耗仪表,缺点就是缆线成本高。
接线时最容易出的事故是什么?把24V电源正极直接接到了AI通道上。那一瞬间,模块的采样电阻直接承受24V电压,电流超大,通道芯片当场烧毁。模拟量模块烧通道就是这么来的。所以接线必须逐根核对,先接变送器,再校线,确认无误最后上电。
4.3 模拟量信号故障排查:万能的两招
模拟量出问题时,第一件事永远是拿万用表量回路电流。
电流测量法:把万用表拨到mA档,串联进信号回路里——直接红黑表笔串在24V+和变送器+之间,或者串在AI通道回路里,看电流值。变送器量程4-20mA对应0-100%,比如你量到12mA,就知道当前是量程的50%。这个方法比在PLC程序里看数值更可靠,因为它直接反映物理回路的真实性,屏蔽了PLC内部的问题。电压测量法:如果模块是电压输入型的,就在端子上并表量电压;如果是电流输入型但又想用电压档,可以在回路里串一个250Ω精密电阻,4-20mA在上面产生1-5V电压,用一个阻值稳定的250R电阻,万用表电压档直接读1-5V,很多老电工都爱这么干,方便观察数值变化。
至于排查顺序,模拟量信号故障通常逃不出这几种:
读数固定20mA且纹丝不动,大概率是回路短路到24V或通道击穿;读数固定4mA以下甚至0mA,大概率线路断了、变送器失电或传感器探头损坏;读数值偏大且波动,检查干扰——屏蔽层有没有单端接地、信号线是不是和动力线绑在了一起、变频器附近有没有走线;读数在量程范围变动但和实际工艺对不上,校验变送器零点和量程,万用表比对实际电流值换算是否一致。
5. 温度信号与脉冲信号:两个容易“假模假式”的信号类型
5.1 热电阻和热电偶:看着是电阻/毫伏,其实是一张温度表
温度信号最常遇到的是热电阻(Pt100)和热电偶(K型、S型等)。
Pt100的原理,就是铂电阻阻值随温度升高而变大:0℃时正好100Ω,100℃时约138.5Ω。你把万用表拨到电阻档,直接量热电阻两根线,就能粗略判断当前温度下的阻值。但真正到现场应用,接线方式会埋坑。两线制接法最简单,但导线本身有电阻会把温度抬高——哪怕只有2Ω的线阻,也有大约5℃的偏差。三线制就是为了消除这个误差:两根线接在Pt100两端,第三根线做补偿,PLC内部通过电桥算法把导线电阻抵消掉。所以现场规范的三线制接法一定比两线制准。有些新型温度模块支持四线制,精度更高,适合重要测点。
热电偶就不一样了,它输出的是毫伏级热电动势,而且冷端必须用补偿导线延伸到PLC模块。常见的坑是热电偶补偿导线接反了——极性一接反,温度显示比实际低一大截,有时还会上下跳。另一个坑是保护套管磨穿进水,热电极短路,温度显示瞬间飙升到量程上限,从几十度直接跳到几百度,看着就吓人。
温度信号故障排查最快的方法是:先拆掉模块端的两根线,用万用表直接量传感器两端的电阻(针对Pt100)或毫伏值(针对热电偶),同时用测温枪测现场实际温度做个粗略比对。如果线缆有问题,比如中间进水、接头氧化,万用表上会看到阻值乱跳或毫伏信号不稳,顺着线缆一路摸过去就能找到断路点或进水点。
5.2 脉冲信号:编码器的A/B/Z不是闹着玩的
旋转编码器的输出是一串方波脉冲。增量式编码器通常有A相、B相、Z相:A/B两相互差90度,靠这个相位关系判断旋转方向;Z相每转一圈出一个脉冲,作为零点基准。有的编码器是推挽输出,有的则是差分输出——差分输出有A+/A-、B+/B-、Z+/Z-六根线,抗干扰能力强,适合长距离和高速场合。
脉冲信号的故障特征很有意思:不是完全没信号,而是“数不对”。设备经常走一会儿停一下,或者位置每次停机后都会偏一点。这种问题最大概率是脉冲丢失——干扰导致个别脉冲被高速计数器漏计,或者编码器供电电压不足导致输出高电平不够高,计数器识别不了。排查时用万用表的频率档(Hz档)去测编码器A相输出,手转电机轴,频率应该随转速变化;如果频率乱跳或测不到,再反过来查供电,瞬时电流不够的电源适配器也会让编码器输出波形变形。接脉冲线时,A相进高速计数器A+端子、B相进B+端子,接错的话方向会反或者计数混乱。多圈绝对值编码器还要注意时钟/数据线的同步时序,这个相对少接触,知道有这么回事就行。
6. 总线通信信号与伺服控制信号:看不见摸不着,最考验功底
6.1 RS485/Modbus通信:先量物理层,再谈协议层
总线通信信号不像DI/DO那样拿万用表一量就有0/1,它是靠电平和时序传数据包的。最常见的是RS485接口的Modbus RTU通信。RS485是差分信号,A、B两根线之间的电压差决定逻辑状态,正常通信时A-B之间大约有2V左右的波动电压。所以现场排查通信故障,第一步应该用万用表交流电压档量A、B之间的电压——如果完全为0,那线路多半已经断了或者收发器没供电;如果只有零点几伏,说明有线路但没有通信数据在跑。
除了测A/B电压,还有一个相当实用的手段:量终端电阻。规范的RS485总线两端各挂一个120Ω终端电阻,正常时从A、B之间量到的阻值应该接近60Ω(两个120Ω并联)。如果量出来是120Ω,说明只有一端挂了电阻,通信链路阻抗不匹配,长距离下报文会出错。走线上,RS485必须手拉手菊花链连接,绝对不能星形连接——星形接法会产生信号反射,就像山谷里的回声一样,造成数据错乱。屏蔽层最好单端接地,防止地环路产生共模干扰。
通信故障最坑的一点是“状态灯狂闪但数据不通”。从站掉了,主站一直重发请求,通信口的收发指示灯看着很热闹,其实报文根本没被正确解析。这种情况要分层排查:先确认网络物理层OK(电压、终端电阻、线序),再看每个站点的站号、波特率、数据格式(8N1之类的)、校验方式是否一致。经验告诉我,物理层问题占通信故障的一大半,剩下才是参数配置问题。换个好点的带屏蔽的通信线、重新做水晶头,很多顽固的通信故障其实就这样解决掉了。
6.2 伺服与步进控制信号:使能、脉冲、方向三兄弟
伺服控制系统是工控里信号类型最丰富也最容易出问题的。它的控制信号主要有三路:
第一路是使能信号(SON/EN)。这是总闸,伺服驱动只有在收到使能信号后才允许电机通电。现场最常见的低级故障就是——上位机程序没给使能,或者使能信号接到了已经损坏的DO点,导致电机怎么发脉冲都不转。查这种问题先看驱动器的状态显示,有使能时面板会显示“运行就绪”之类的状态;没使能会报警或显示“禁止”。别上来就查脉冲线。
第二路是脉冲信号。伺服/步进驱动的脉冲给定有两种常见形式:一种是集电极开路(OC门,多半是24V脉冲),一种是差分信号(5V的A+/A-、B+/B-,和编码器差分类似)。PLC发出来的脉冲经过驱动器内部的电子电路整形后控制电机转。脉冲线松了、极性接反、被干扰,都会导致丢脉冲。定位偏差最典型的症状就是“回零正常,一跑远就偏”——每次偏一点点,慢慢累积。查这种问题,第一步看驱动器接收到的脉冲数是否和PLC发出的脉冲数一致,驱动器面板一般能显示累计输入脉冲数,对不上就是脉冲在传输路上丢了;再查屏蔽层和布线,脉冲线不要和动力线走同一个线槽。
第三路是方向信号。方向信号一般是一个高低电平,决定电机正转还是反转。方向信号出问题时,电机要么不换向,要么换向不彻底,表现为往复运动机构经常走不到位,或者走飞。方向信号和脉冲信号一样容易受干扰,而且它的判断逻辑是电平高低,一旦干扰信号叠加在上面,驱动器就会误判方向——运行方向偶尔闪变一下,对精度要求高的设备来说是非常致命的。用万用表不稳定时就在方向和脉冲线上加隔离继电器,或者干脆换差分输出方式。
7. 现场故障“一眼看穿”:我的一套实战排查速查逻辑
7.1 一张速查表解决大部分现场问题
以上8种信号拆开讲了很多,实际到现场不可能每次都从头想一遍原理。我的习惯是脑子里挂一张速查表,看到现象直接跳到最可能的成因上。这张表也分享给你:
| 现场现象 | 大概率原因 | 首选检查动作 |
|---|---|---|
| 输入点灯不亮 | 触点氧化/传感器供电丢/线断 | 量DI端子电压,确认信号到没到 |
| 输入点乱闪 | 感应电压/触点不回位/线路破皮 | 万用表量端子电压是否稳定 |
| 输出点灯亮负载不动 | 外部线路断/负载坏/端子松 | 拆负载线,量DO端子输出电压 |
| 输出点灯灭负载却动 | 继电器触点粘连/程序逻辑被旁路 | 查对应输出点,必要时换点 |
| 模拟量读数固定20mA | 回路对24V短路/通道烧坏 | 串电流表量实际mA值 |
| 模拟量读数固定小于4mA | 断线/变送器失电/探头损坏 | 从传感器端逐段量电流 |
| 模拟量数值乱跳 | 干扰/屏蔽没接地/与动力线并线 | 量实际电流是否稳定,排查走线 |
| 温度显示暴涨 | 热电阻/热电偶短路进水 | 拆线量传感器电阻或毫伏值 |
| 脉冲计数丢步 | 编码器供电不足/干扰/线缆过长 | 万用表Hz档测频率,查屏蔽 |
| 通信灯闪数据不通 | 物理层异常/参数不一致 | 量A/B电压和终端电阻阻值 |
| 伺服电机不动 | 没使能/使能线断 | 先看驱动器状态显示是否就绪 |
| 伺服定位逐渐偏差 | 脉冲丢失/机械打滑 | 对比PLC发出与驱动器接收脉冲数 |
7.2 排查顺序比排查方法更重要
我见过不少同行,拿着万用表对着一个故障点量了半小时,最后发现问题根本不在那里。排查顺序对了,效率能差出几倍。我的习惯是五步走:
第一步,看状态。PLC模块上的指示灯、通信口的灯、驱动器的面板显示,这些都是故障的第一现场,不要跳过去直接拆线。第二步,量电源。很多奇葩故障的根源就是某个电源坏了,电压偏低、纹波大,带不动后面的传感器和模块。第三步,量信号到没到端子。以DI为例,量端子电压就知道信号是否到达PLC侧。第四步,判断“给了但传不通”还是“根本没给出来”。把执行机构和输出端断开,直接量输出端子。第五步,查线路。前面都确认没问题了,才回头去查中间的过程:有没有氧化、进水、压接不紧、走线太乱。
这套顺序可以理解为“先看有没有、再看对不对、最后查线缆”,不管遇到什么问题,照这个顺序走,至少不会漏掉最常规的可能。
7.3 老工人的私房心得:信号隔离、信号注入和现场笔记
最后分享几个很难在说明书上学到的实战技巧。
关于信号隔离。多台设备之间如果存在地电位差——特别是变频器附近的大功率设备——信号线两端的地电位可能差出好几伏甚至几十伏。这种共模电压会造成干扰甚至烧模块。信号线上套一个磁环、用带屏蔽的专用信号线、在PLC端加信号隔离器,都能有效对抗。隔离器不贵,但在现场能救一命。
关于信号注入法。怀疑某个输入点是否正常时,用一根短接线直接短接24V到该DI端子,如果PLC指示灯亮了,说明模块和程序没问题,问题在外部。这套办法叫信号注入,排查速度极快。但要注意,注入之前看清楚端子的位置,别短到别的点,更别拿它去试模拟量(有些老电工短AI端子直接烧通道,真的见过)。
关于现场笔记。我修完设备必做一件事:拍照、记录故障现象和处理过程,分类存档。很多人觉得这一趟修完就好了,但下一次遇到类似问题,翻一下以前的笔记,三分钟就能定位。干工控是一门经验学科,经验不记录下来就是流失。我现在带徒弟,第一件事不是教他认识PLC,而是教他写故障记录。磨刀不误砍柴工,这个习惯救过我很多次。
信号这东西,说穿了就是载体——你只有把每一种信号的本质吃透了,现场才不会被五花八门的表象绕进去。修设备修的其实是思路,看信号看的其实是原理。这几类信号融会贯通之后,你会发现,所谓“一眼看穿”并不是天赋,只是积累到一定程度后的水到渠成。