1. 编码器基础:增量式与绝对式,ABZ 与 UVW
各位同学好,我是老周。做电机控制这些年,我经手过的编码器少说也有几十种型号。说实话,编码器选型要是搞错了,后面整个项目都得返工。今天咱们就从最基础的东西聊起——增量式和绝对式编码器到底有什么区别?ABZ 和 UVW 信号又是干什么用的?
你可能会想,这些东西 datasheet 上不都写着吗?嗯,datasheet 确实写了,但很多坑 datasheet 可不会告诉你。我踩过的坑,今天一并讲给你听。
1.1 增量式编码器:简单,但有代价
增量式编码器,说白了就是只输出脉冲。它不告诉你现在在哪个位置,只告诉你「动了多少」。每次上电,你都得先回一次零点,不然位置信息就是乱的。
核心原理:码盘上刻着均匀的明暗条纹,光耦扫过去,输出方波脉冲。脉冲数 = 走过的距离。
我在一个伺服项目里用过增量式编码器。第一次上电,电机直接飞车了——因为没做归零,控制器以为当前位置是零位,结果一启动就撞了限位。从那以后,我养成了一个习惯:增量式编码器必须配硬件归零传感器,软件里也得做防呆检查。
分辨率与精度
这两个概念很多人混为一谈。我简单解释一下:
- 分辨率:一圈能输出多少个脉冲。比如 2500 线,4 倍频后就是 10000 个脉冲/圈。
- 精度:实际位置和测量位置之间的误差。受码盘加工、安装偏心、温度漂移影响。
举个例子:你买了个 5000 线的编码器,分辨率很高,但安装时轴心偏了 0.1mm,精度可能还不如一个 2000 线装得正的编码器。我见过有人花大价钱买高分辨率编码器,结果安装孔打偏了,精度一塌糊涂。嗯,这钱花得冤枉。
| 参数 | 增量式 | 绝对式 |
|---|---|---|
| 断电记忆 | 无 | 有 |
| 上电需归零 | 是 | 否 |
| 抗干扰能力 | 较弱(脉冲易丢) | 较强(数字通信) |
| 成本 | 低 | 高 |
| 典型应用 | 步进电机、通用伺服 | 机器人关节、高端数控 |
1.2 绝对式编码器:上电就知道在哪
绝对式编码器就不一样了。它每个位置都有一个唯一的码值,上电就能读出当前位置。不需要归零,不怕掉电。你想想看,在机器人关节里,每次开机都要回零,那得多麻烦?所以绝对式编码器在高端场合几乎是标配。
我做过一个协作机器人项目,用的就是多圈绝对式编码器。断电后你用手掰动关节,再上电,位置还是对的。这种体验,增量式给不了。
个人建议:如果你的系统允许上电回零,用增量式就够了,省钱。如果要求断电后必须记住位置,别犹豫,上绝对式。
单圈 vs 多圈
- 单圈绝对式:一圈内位置唯一,转多了就重复。适合转台、阀门这类不转整圈的场合。
- 多圈绝对式:内部有齿轮或电池,记录总圈数。适合机器人、数控机床。
1.3 ABZ 信号:增量式编码器的三根线
增量式编码器输出三路信号:A、B、Z。我刚开始学的时候,总觉得这三根线很神秘。其实很简单:
- A 和 B:相位差 90° 的方波。谁先谁后,决定了旋转方向。
- Z:每圈一个脉冲,用来校准零点。
我曾经犯过一个低级错误:把 A 和 B 接反了。结果电机正转时控制器以为在反转,速度环直接震荡。查了两天才发现是线序问题。所以,接线前一定先看 datasheet,别凭经验猜。
注意:Z 信号很窄,高速采样时容易漏掉。我习惯在 Z 信号上做一个硬件捕获,用 DSP 的 eCAP 模块来抓,软件轮询太不可靠了。
1.4 UVW 信号:换相的钥匙
UVW 信号是专门给无刷电机(BLDC)换相用的。它用三个霍尔或磁编码器输出 6 个状态,对应 6 个换相扇区。
说白了,UVW 就是告诉控制器:「现在转子在哪个扇区,该通哪两相了。」
| 扇区 | U | V | W | 导通相 |
|---|---|---|---|---|
| 1 | 1 | 0 | 1 | U+ W- |
| 2 | 1 | 0 | 0 | U+ V- |
| 3 | 1 | 1 | 0 | V+ U- |
| 4 | 0 | 1 | 0 | V+ W- |
| 5 | 0 | 1 | 1 | W+ V- |
| 6 | 0 | 0 | 1 | W+ U- |
这里有个关键点:UVW 和 ABZ 的零点往往不重合。你需要做相位校准,把 UVW 的扇区边界和 Z 脉冲对齐。这就是咱们这门课的核心内容——换相相位校准。
1.5 知识体系总览
下面这张图,把编码器的分类、信号类型和应用场景串起来了。我建议你把它存下来,以后选型时对照着看。
1.6 小结
这一章咱们把编码器的基础过了一遍。增量式和绝对式各有各的脾气,ABZ 管位置和方向,UVW 管换相。下一章开始,咱们就要动手做相位校准了。到时候我会拿 C2000 的 eQEP 模块和实际波形,一步步带你走通整个流程。
记住一句话:编码器选对了,项目成功一半;相位校准做对了,另一半也稳了。