1. 编码器基础:分类、原理与信号解析
做电机控制这些年,我接触过各种各样的编码器。说实话,编码器就像是电机的「眼睛」——它告诉控制器转子现在在什么位置、转了多少圈、速度有多快。没有它,FOC(磁场定向控制)根本玩不转。
这一章我们先打好基础。我会从分类讲起,再深入到光电和磁编码器的工作原理,最后把ABZ和UVW信号彻底说清楚。嗯,这些都是后面做自动校准的必备知识。
1.1 编码器分类:增量式 vs 绝对式
编码器按输出信号类型,主要分两大类:增量式和绝对式。我刚开始做项目时,经常有人问我:「这两种到底怎么选?」其实很简单——看你要不要记住断电后的位置。
| 特性 | 增量式编码器 | 绝对式编码器 |
|---|---|---|
| 断电记忆 | 不记忆位置,上电需回零 | 记忆绝对位置,上电即用 |
| 输出信号 | A、B、Z 脉冲 | 多路并行或串行数据(如SSI、BiSS) |
| 分辨率 | 取决于码盘刻线数 | 取决于位数(如12位=4096步/圈) |
| 成本 | 较低 | 较高 |
| 典型应用 | 伺服电机、步进电机 | 机器人关节、数控机床主轴 |
1.2 光电编码器 vs 磁编码器
这两种编码器的工作原理完全不同。我分别说说。
光电编码器
光电编码器内部有一个码盘,上面刻着透光和不透光的条纹。LED发光,另一侧的光电接收管检测光信号。码盘一转,光信号就变成脉冲。
- 优点:精度高,分辨率可以做得非常高(几万线/圈)
- 缺点:怕灰尘、怕油污、怕振动。码盘一旦脏了,信号就乱
磁编码器
磁编码器靠的是霍尔元件或磁阻传感器。转子上贴一块磁铁,旋转时磁场方向变化,传感器输出正余弦信号,再通过CORDIC算法算出角度。
- 优点:抗污染、抗振动、体积小、成本低
- 缺点:精度受温度影响较大,分辨率通常不如光电式
现在很多伺服电机都标配磁编码器了。我个人觉得,对于换相角度校准这个场景,磁编码器其实更友好——因为它天生输出连续角度值,不需要像增量式那样拼脉冲数。
1.3 ABZ信号解析
ABZ信号是增量式编码器的「三件套」。你想想看,电机转一圈,编码器输出一堆脉冲,你怎么知道它往哪转、转了多少?靠的就是A和B的相位关系。
- A相和B相:相位差90°。A超前B,正转;B超前A,反转
- Z相:每圈一个脉冲,用来标定零位
我习惯用四倍频技术——同时检测A和B的上升沿和下降沿,这样分辨率直接翻4倍。比如一个2500线的编码器,四倍频后就是10000个脉冲/圈。
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做方波换相。
1.5 知识体系总览
下面这张图把编码器的分类、原理和信号关系串起来了。你可以把它当作本章的「地图」。
这张图从编码器根节点出发,左边是增量式,右边是绝对式。往下走,每种编码器都有光电和磁两种实现方式。再往下,就是它们输出的信号类型——增量式输出ABZ脉冲,绝对式输出串行数据或正余弦。最下面一层,是这些信号在换相角度校准中的用途。
我个人觉得,理解这张图比死记硬背参数重要得多。因为后面30章的内容,几乎都是围绕「如何把编码器角度和电机反电动势对齐」这个核心问题展开的。你先把分类和信号搞清楚了,后面学自动校准算法时就不会晕。
- 增量式编码器需要Z信号标定零位,绝对式编码器上电即知位置
- 光电编码器精度高但怕污染,磁编码器抗污染但精度受温度影响
- ABZ信号中,A/B相位差90°用于判向和倍频,Z信号用于每圈零位
- UVW信号提供6个扇区(60°分辨率),适合粗定位
- 换相角度校准的本质:找到编码器零位与电机反电动势过零点的固定偏移