1. 编码器基础:分类、原理与信号解析

做电机控制这些年,我接触过各种各样的编码器。说实话,编码器就像是电机的「眼睛」——它告诉控制器转子现在在什么位置、转了多少圈、速度有多快。没有它,FOC(磁场定向控制)根本玩不转。

这一章我们先打好基础。我会从分类讲起,再深入到光电和磁编码器的工作原理,最后把ABZ和UVW信号彻底说清楚。嗯,这些都是后面做自动校准的必备知识。

1.1 编码器分类:增量式 vs 绝对式

编码器按输出信号类型,主要分两大类:增量式和绝对式。我刚开始做项目时,经常有人问我:「这两种到底怎么选?」其实很简单——看你要不要记住断电后的位置。

特性 增量式编码器 绝对式编码器
断电记忆 不记忆位置,上电需回零 记忆绝对位置,上电即用
输出信号 A、B、Z 脉冲 多路并行或串行数据(如SSI、BiSS)
分辨率 取决于码盘刻线数 取决于位数(如12位=4096步/圈)
成本 较低 较高
典型应用 伺服电机、步进电机 机器人关节、数控机床主轴
我的经验: 做换相角度校准时,增量式编码器需要额外处理上电寻零逻辑。我曾在某个项目中因为没处理好Z信号抖动,导致上电时角度跳变——电机直接「抽」了一下。后来我养成了习惯:增量式编码器上电后先做一次完整的Z脉冲捕获,再进入正常控制。

1.2 光电编码器 vs 磁编码器

这两种编码器的工作原理完全不同。我分别说说。

光电编码器

光电编码器内部有一个码盘,上面刻着透光和不透光的条纹。LED发光,另一侧的光电接收管检测光信号。码盘一转,光信号就变成脉冲。

  • 优点:精度高,分辨率可以做得非常高(几万线/圈)
  • 缺点:怕灰尘、怕油污、怕振动。码盘一旦脏了,信号就乱
注意: 我曾经在粉尘环境下用过光电编码器,结果三个月后信号丢失严重。拆开一看,码盘上全是灰。如果你做工业现场的项目,优先考虑磁编码器。

磁编码器

磁编码器靠的是霍尔元件或磁阻传感器。转子上贴一块磁铁,旋转时磁场方向变化,传感器输出正余弦信号,再通过CORDIC算法算出角度。

  • 优点:抗污染、抗振动、体积小、成本低
  • 缺点:精度受温度影响较大,分辨率通常不如光电式

现在很多伺服电机都标配磁编码器了。我个人觉得,对于换相角度校准这个场景,磁编码器其实更友好——因为它天生输出连续角度值,不需要像增量式那样拼脉冲数。

1.3 ABZ信号解析

ABZ信号是增量式编码器的「三件套」。你想想看,电机转一圈,编码器输出一堆脉冲,你怎么知道它往哪转、转了多少?靠的就是A和B的相位关系。

  • A相和B相:相位差90°。A超前B,正转;B超前A,反转
  • Z相:每圈一个脉冲,用来标定零位

我习惯用四倍频技术——同时检测A和B的上升沿和下降沿,这样分辨率直接翻4倍。比如一个2500线的编码器,四倍频后就是10000个脉冲/圈。

关键点: 做换相角度校准时,Z信号的位置必须和电机反电动势过零点对齐。如果Z信号装偏了,校准出来的角度就是错的。我见过有人焊编码器时没对准,结果电机嗡嗡响,电流还大——其实就是角度偏了。

1.4 UVW信号解析

UVW信号是专门给无刷直流电机(BLDC)用的。它本质上是三个霍尔传感器,安装在定子上,相隔120°电角度。转子转一圈,三个霍尔输出高低电平,组合成6个状态。

U V W 对应扇区 导通相
1 0 1 1 A+B-
1 0 0 2 A+C-
1 1 0 3 B+C-
0 1 0 4 B+A-
0 1 1 5 C+A-
0 0 1 6 C+B-

UVW信号的分辨率很低——一圈只有6个状态,也就是60°电角度一个跳变。但它的好处是:上电就能知道转子大概在哪个扇区。很多低成本BLDC控制器就靠UVW做方波换相。

我的建议: 如果你做FOC控制,UVW信号只能用来做初始角度粗定位(精度60°),然后要靠ABZ或绝对式编码器做细定位。我在一个项目中把UVW和磁编码器结合使用——上电先用UVW确定扇区,再用磁编码器读精确角度,效果很好。

1.5 知识体系总览

下面这张图把编码器的分类、原理和信号关系串起来了。你可以把它当作本章的「地图」。

编码器知识体系总览 编码器知识体系总览 编码器 增量式编码器 绝对式编码器 光电原理 磁原理 光电原理 磁原理 ABZ 脉冲信号 正余弦 / 角度 SSI / BiSS 数据 正余弦 / 角度 Z信号标定零位 连续角度值 上电即得位置 连续角度值 换相角度校准核心:将编码器角度与电机反电动势过零点对齐 增量式需Z信号辅助,绝对式可直接读取偏移量

这张图从编码器根节点出发,左边是增量式,右边是绝对式。往下走,每种编码器都有光电和磁两种实现方式。再往下,就是它们输出的信号类型——增量式输出ABZ脉冲,绝对式输出串行数据或正余弦。最下面一层,是这些信号在换相角度校准中的用途。

我个人觉得,理解这张图比死记硬背参数重要得多。因为后面30章的内容,几乎都是围绕「如何把编码器角度和电机反电动势对齐」这个核心问题展开的。你先把分类和信号搞清楚了,后面学自动校准算法时就不会晕。

本章核心要点:
  • 增量式编码器需要Z信号标定零位,绝对式编码器上电即知位置
  • 光电编码器精度高但怕污染,磁编码器抗污染但精度受温度影响
  • ABZ信号中,A/B相位差90°用于判向和倍频,Z信号用于每圈零位
  • UVW信号提供6个扇区(60°分辨率),适合粗定位
  • 换相角度校准的本质:找到编码器零位与电机反电动势过零点的固定偏移