4、Z信号捕获:Z信号的电气特性、如何用示波器抓取Z脉冲、常见干扰问题

Z信号,说白了就是编码器的“零位身份证”。

增量式编码器转多少圈,A、B相只能告诉你相对位置。但机器一断电,位置就丢了。Z信号就是用来解决这个问题的——每转一圈,它给你一个唯一的脉冲,告诉你“嘿,这里就是机械零点”。

我刚开始做运动控制时,总觉得Z信号很简单,不就是个脉冲嘛。直到有一次在高速产线上,零点老是跑偏,查了三天才发现是Z信号被干扰吞掉了。从那以后,我对Z信号的捕获就再也不敢马虎了。

4.1 Z信号的电气特性

Z信号,也叫Index信号,通常是一路独立的差分或单端输出。它的电气特性直接决定了你能不能可靠地抓到它。

参数 典型值 说明
输出电平(TTL) 高电平 ≥ 2.4V,低电平 ≤ 0.5V 5V供电时常见
输出电平(HTL) 高电平 ≥ 供电电压-1.5V,低电平 ≤ 1.5V 10-30V供电,抗干扰强
脉冲宽度 1个A相周期(360°电角度) 也有90°或180°的,看编码器型号
上升/下降时间 几十纳秒到几百纳秒 高速编码器更快
输出类型 NPN/PNP/推挽/差分 差分(RS-422)抗干扰最好

这里有个关键点:Z脉冲的宽度通常等于一个A相周期。也就是说,编码器每转一圈,Z信号只在高电平停留一个A相脉冲的时间。转速越高,这个脉冲越窄。

核心概念:Z脉冲的宽度 = 360° 电角度 = 1个A相周期。转速3000rpm时,如果编码器是1000线,Z脉冲宽度只有20微秒。你想想看,这么窄的脉冲,控制器采样频率不够的话,直接就漏掉了。

4.2 如何用示波器抓取Z脉冲

抓Z脉冲,是每个运动控制工程师的必修课。我个人的习惯是:先看静态,再看动态。

4.2.1 准备工作

  • 示波器带宽:至少50MHz,推荐100MHz以上。别拿个20MHz的老古董去抓高速Z脉冲,你会怀疑人生的。
  • 探头:用10×档,带宽够。差分信号用差分探头,单端信号用普通无源探头就行。
  • 触发方式:边沿触发,上升沿或下降沿都行。我习惯用上升沿触发,因为Z脉冲的上升沿通常更陡。

4.2.2 静态捕获(手动转轴)

这是最稳妥的方法。把编码器从电机上拆下来,或者让电机断电,用手慢慢转动编码器轴。

  1. 示波器通道1接Z信号,通道2接A相(用于参考)。
  2. 设置触发电平在Z信号高电平的一半左右(比如5V供电,设2.5V)。
  3. 触发模式选“Normal”,时基设到10ms/div左右。
  4. 慢慢转动编码器轴,直到看到稳定的Z脉冲波形。

为什么要用手转?因为手动转速低,Z脉冲宽度大,容易捕获。而且你可以精确控制位置,观察Z脉冲与A、B相的相位关系。

小技巧:用手转的时候,可以在编码器轴上贴个标记,每转一圈停一下。这样你就能确认Z脉冲是不是真的每圈只出现一次。我曾经遇到过编码器内部光栅盘装偏了,Z脉冲每圈出现两次的奇葩情况。

4.2.3 动态捕获(电机运行)

静态没问题了,还得看动态。电机高速运行时,Z脉冲会变得很窄,而且可能受到电机电磁干扰。

  1. 时基设到更小的档位,比如1ms/div或500μs/div。
  2. 触发模式改“Auto”,触发电平稍微调高一点,避免噪声误触发。
  3. 让电机以中速运行(比如额定转速的50%),观察Z脉冲波形。
  4. 如果抓不到,试试用“脉宽触发”或“欠幅触发”。有些示波器有“Runt Trigger”,专门抓这种窄脉冲。

我遇到过最头疼的情况:静态时Z脉冲完美无缺,一跑起来就消失。后来发现是电机电缆和编码器电缆绑在一起走线,电机电流突变时,电磁耦合把Z脉冲的上升沿削平了。示波器一看,原本5V的脉冲,跑起来只剩2V了,根本触发不了。

4.3 常见干扰问题

Z信号干扰,是零位校准中最容易踩的坑。我整理了几个最常见的,你看看自己遇到过没有。

干扰类型 现象 原因 解决方法
脉冲丢失 控制器偶尔收不到Z脉冲 脉冲太窄,控制器采样周期跟不上 使用硬件捕获(如ETL模块),或降低转速
毛刺误触发 一圈出现多个Z脉冲 电机EMI干扰,或编码器电源纹波大 加磁环、屏蔽电缆、编码器电源加滤波
脉冲抖动 Z脉冲位置每次都不一样 编码器安装偏心,或联轴器间隙 检查机械安装,用弹性联轴器
电平漂移 Z信号高电平变低 长线传输压降,或编码器供电不足 用差分输出,或加中继器

警告:千万不要在Z信号线上串电阻或电容做滤波!我见过有人为了“抗干扰”,在Z信号线上串了1kΩ电阻和100nF电容。结果Z脉冲的上升沿从几十纳秒变成了几十微秒,控制器根本识别不了。Z信号滤波应该在控制器输入端做,用施密特触发器或数字滤波,而不是在信号线上做RC低通。

4.3.1 脉冲丢失的深层原因

为什么会丢脉冲?说白了就是“你抓的时候它不在”。

Z脉冲宽度 = 360° / (编码器线数 × 转速 × 6)。举个例子:

  • 编码器线数:2500线
  • 转速:3000rpm = 50rps
  • Z脉冲宽度 = 1 / (2500 × 50) = 8微秒

8微秒!你想想看,如果控制器的Z信号采样周期是100微秒,那大概率会漏掉。这就是为什么高端伺服驱动器都有专门的Z信号硬件捕获电路,不依赖软件轮询。

4.3.2 毛刺误触发怎么治

毛刺误触发,说白了就是“假Z脉冲”。电机启动、停止、急停时,电流突变产生的电磁干扰最容易制造这种假脉冲。

我个人的处理流程:

  1. 先看波形:用示波器长时间捕获(比如1秒),看毛刺出现的位置和频率。
  2. 加磁环:在编码器电缆靠近控制器的一端套一个铁氧体磁环,绕两圈。这个办法治好了我80%的干扰问题。
  3. 换差分:如果单端输出实在扛不住,换成差分输出的编码器(RS-422),共模干扰直接抵消。
  4. 软件滤波:在控制器里做“脉宽确认”——只有Z脉冲宽度在合理范围内(比如大于5微秒),才认为是有效Z信号。

实战经验:有一次在注塑机项目上,Z信号毛刺怎么都滤不掉。最后发现是变频器的载波频率(8kHz)通过地环路耦合到了编码器屏蔽层。解决办法很简单:编码器屏蔽层单端接地(只在控制器端接地),地环路就断了。毛刺立刻消失。

4.4 Z信号捕获知识体系

下面这张图,是我自己总结的Z信号捕获知识框架。你可以把它当成一个检查清单,每次做零位校准时对照一遍。

Z信号捕获知识体系 Z信号捕获 电气特性 示波器捕获 干扰处理 电平标准 脉冲宽度 输出类型 上升/下降时间 静态捕获 动态捕获 触发设置 时基选择 脉冲丢失 毛刺误触发 脉冲抖动 电平漂移 核心原则:先静态确认波形,再动态验证可靠性 干扰处理要“先硬件后软件”,不要一上来就改代码 ① 确认脉冲宽度 ② 检查相位关系 ③ 验证抗干扰能力

嗯,这张图基本把Z信号捕获的核心要点都串起来了。你每次做零位校准之前,可以对着这张图过一遍:电气特性确认了没有?示波器设置对了没有?干扰防护做了没有?

Z信号捕获这件事,说难不难,说简单也不简单。关键是要有耐心,一步一步来。我见过太多工程师,一上来就写代码做零位校准,结果Z信号都没抓到,折腾好几天。其实花半小时用示波器看一眼波形,什么问题都清楚了。