3. 信号质量分析
编码器输出的信号,说白了就是一连串的方波。但理想方波只存在于教科书里。实际拿示波器一看,波形总有各种“瑕疵”。这些瑕疵就是信号质量问题的根源。我做了十几年硬件,见过太多因为信号质量差导致的定位不准、计数跳变,甚至系统直接罢工的案例。
这一章,咱们就把编码器信号的五个核心指标掰开揉碎了讲。你掌握了这些,就等于拿到了故障诊断的“听诊器”。
3.1 占空比(Duty Cycle)—— 对称性就是精度
占空比,指的是高电平时间占整个周期的百分比。理想情况下,A相和B相的占空比都应该是50%。
核心公式:
占空比 = (高电平时间 / 周期) × 100%
理想值:50% ± 5%(多数工业编码器标准)
为什么占空比这么重要?我举个例子。你想想看,如果占空比变成了60%,那高电平时间就比低电平长了。这时候,如果你用脉冲计数法测速度,每个周期里“高电平”对应的角度就比实际大,累积误差会越来越大。
占空比偏差的常见原因:
- 光栅盘污染:灰尘或油污遮挡了部分光路,导致导通时间不对称。我在一个印刷设备上遇到过,墨雾把光栅盘糊了一层,占空比直接漂到65%。
- LED老化:发光强度下降,导致光敏管导通阈值偏移。
- 比较器阈值漂移:温度变化导致施密特触发器的翻转点改变。
我的诊断习惯:用示波器测量A相或B相的单端波形,打开“占空比”测量项。如果偏差超过10%,基本可以判定编码器内部光路或电路有问题,建议直接更换。
3.2 相位差(Phase Shift)—— 正交性的灵魂
增量式编码器靠A、B两相之间的90°相位差来判断方向。这个90°就是正交性。相位差一旦偏离,方向判断就会出错,位置计数也会乱套。
| 相位差状态 | 对系统的影响 | 典型故障表现 |
|---|---|---|
| 90° ± 10° | 正常,方向判断可靠 | 无异常 |
| 偏离90° 10°~30° | 方向判断边缘,偶发误判 | 电机低速抖动,位置偶尔回跳 |
| 偏离90° > 30° | 方向判断失效,计数混乱 | 位置飞车,系统报“编码器故障” |
相位差是怎么变坏的?
- 码盘安装偏心:码盘旋转中心与轴心不重合,导致A、B两路光栅的相位关系随角度变化。我曾经修过一台伺服电机,低速时相位差正常,一上高速就报警。拆开一看,码盘固定螺丝松了半圈。
- 信号传输延迟不匹配:长距离传输时,A、B两路的线缆长度或阻抗不一致,导致延迟不同。差分信号尤其要注意。
- 光栅刻线缺陷:局部刻线缺失或污染,导致某一路信号畸变。
注意:测量相位差时,一定要用示波器的“XY模式”看李萨如图形。一个标准的正圆或45°椭圆,说明正交性良好。如果图形扭曲、压扁,那相位差肯定有问题。
3.3 抖动(Jitter)—— 时序的不确定性
抖动,指的是信号边沿在时间轴上的随机偏移。说白了,就是本应该在精确时刻出现的跳变,提前或推迟了一点点。这个“一点点”在高速计数时,就是致命的。
抖动的分类:
- 随机抖动(RJ):由热噪声、散粒噪声等引起,服从高斯分布。无法彻底消除,只能通过电路设计降低。
- 确定性抖动(DJ):由串扰、电源纹波、阻抗不匹配等引起,有固定模式。这是我们可以定位和解决的。
实战经验:我曾经排查过一个案例,编码器输出信号在示波器上看波形很漂亮,但控制器就是偶尔丢脉冲。后来我用示波器的“余辉”模式观察,发现上升沿有±5ns的抖动。查了半天,是编码器供电电源上有一个100kHz的纹波,耦合到了信号线上。加了一级LC滤波后,问题消失。
抖动测量方法:
- 用示波器捕获至少1000个周期的波形。
- 打开“抖动分析”或“直方图”功能,测量边沿的时间分布。
- 关注峰峰值(Pk-Pk)和均方根值(RMS)。
对于工业编码器,抖动峰峰值一般要求小于周期的1%。比如100kHz的信号(周期10μs),抖动应小于100ns。
3.4 上升/下降时间(Rise/Fall Time)—— 边沿的陡峭度
上升时间指信号从10%幅值上升到90%幅值所需的时间。下降时间同理。边沿越陡,时序越精确,抗干扰能力也越强。
上升时间过慢会带来什么问题?
- 计数误差:接收端的施密特触发器在阈值附近徘徊,产生多次触发(振铃)。
- EMI辐射增加:边沿越缓,信号在过渡区停留时间越长,越容易辐射噪声。
- 传输延迟不确定:边沿斜率受负载电容影响,导致不同通道的延迟不一致。
| 编码器类型 | 典型上升时间 | 建议最大上升时间 |
|---|---|---|
| 集电极开路输出 | 100ns ~ 1μs | 周期 × 10% |
| 推挽输出 | 20ns ~ 100ns | 周期 × 5% |
| 差分输出(RS-422) | 5ns ~ 20ns | 周期 × 2% |
我的建议:如果发现上升时间超标,先检查输出端的负载电容。编码器到控制器的线缆过长、线缆分布电容过大,是常见原因。必要时加一个线驱动器(Line Driver)来整形。
3.5 信号幅值(Amplitude)—— 电压的“健康度”
信号幅值直接反映了编码器输出级的驱动能力和接收端的匹配情况。幅值过低,接收端可能无法正确识别高低电平;幅值过高,可能损坏接收端。
幅值异常的典型场景:
- 幅值偏低:
- 编码器供电电压不足(比如5V供电,实际只有4.5V)。
- 输出级损坏(如集电极开路的上拉电阻开路)。
- 线缆过长,压降太大。
- 幅值偏高:
- 供电电压过高。
- 输出端与接收端电平标准不匹配(比如5V输出接3.3V输入)。
避坑指南:我曾经遇到过一批编码器,在实验室测试一切正常,到现场就频繁报错。后来发现,现场供电线路有压降,编码器实际供电只有4.2V。输出高电平从5V降到了3.8V,而控制器的接收阈值是3.5V。就差那么0.3V,导致信号时好时坏。所以,测量幅值一定要在编码器端子处测,而不是在电源端测。
3.6 知识体系总览
下面这张图,把五个指标和它们之间的关联关系画出来了。你可以把它当作故障排查的路线图。
3.7 综合诊断流程
在实际项目中,我一般按这个顺序排查信号质量问题:
- 第一步:静态测量 — 用万用表测编码器供电电压和输出高/低电平。确认幅值在正常范围内。
- 第二步:波形观察 — 用示波器看A、B相波形。先看整体形状,有没有畸变、毛刺、台阶。
- 第三步:参数测量 — 依次测量占空比、相位差、上升/下降时间、抖动。记录数据,与规格书对比。
- 第四步:动态测试 — 匀速转动编码器,观察各参数是否随角度变化。如果某个参数周期性波动,大概率是码盘安装偏心或光栅局部污染。
- 第五步:对比验证 — 用已知正常的编码器替换,对比信号质量。这是最直接的定位方法。
记住:信号质量分析不是孤立看某个指标。五个指标是相互关联的。比如,上升时间过慢会加剧抖动;幅值偏低会导致占空比测量不准。要综合判断,才能找到根因。