编码器基础:增量式与绝对式、ABZ与UVW、分辨率与精度
各位好,我是老周。做电机控制这些年,编码器是我打交道最多的传感器之一。说实话,刚入行那会儿我也被各种信号搞得晕头转向——ABZ、UVW、增量式、绝对式……名字听着都像亲戚,实际用起来差远了。今天咱们就把这些概念掰开揉碎,讲清楚。
增量式编码器 vs 绝对式编码器
这两种编码器的区别,说白了就是:一个只告诉你动了多少,一个直接告诉你现在在哪。
核心差异一句话:增量式编码器输出脉冲数,需要上电找零位;绝对式编码器输出位置码,上电即知绝对角度。
我做过一个AGV项目,用的增量式编码器。每次断电重启,机械臂都得先回原点——那个过程慢得让人抓狂。后来换成绝对式编码器,上电直接干活,省了至少两秒的归零时间。你想想看,产线上一天几千次启停,这差距就大了。
| 特性 | 增量式编码器 | 绝对式编码器 |
|---|---|---|
| 输出信号 | 脉冲(A/B/Z) | 二进制/格雷码 |
| 断电记忆 | 不记忆位置 | 记忆绝对位置 |
| 上电行为 | 需回零/找相 | 直接读取角度 |
| 抗干扰 | 脉冲易受干扰 | 数字码抗干扰强 |
| 成本 | 较低 | 较高 |
| 典型应用 | 伺服电机、步进电机 | 机器人关节、数控机床 |
我个人习惯是:做位置环控制,优先用绝对式;做速度环或简单定位,增量式完全够用。别盲目追求高规格,成本摆在那呢。
ABZ信号与UVW信号
这两个信号家族,很多人容易搞混。我简单梳理一下。
ABZ信号——位置与方向
A相和B相是正交脉冲,相位差90°。通过判断谁先跳变,就能知道电机是正转还是反转。Z相是零位脉冲,每转一圈出一个脉冲,用来校准绝对位置。
我记得有一次调试,电机正反转老是判断反了。查了半天,原来是A/B相线序接反了。嗯,这种低级错误,犯过一次就记住了。
小技巧:用示波器看A/B相波形,如果正转时A相领先B相90°,那反转时就是B相领先A相90°。反过来接,方向就反了。
UVW信号——换相专用
UVW信号是给无刷直流电机(BLDC)换相用的。三个信号组合出6种状态,对应6个换相扇区。说白了,就是告诉控制器:现在该给哪两相通电了。
我刚开始做BLDC驱动时,总觉得UVW信号可有可无——反正可以用反电动势过零检测。后来发现,低速启动时反电动势太弱,根本检测不准。最后还是老老实实上了霍尔传感器,配合UVW信号做换相。
| 信号类型 | 用途 | 典型线数 | 特点 |
|---|---|---|---|
| A/B相 | 位置增量、方向 | 2 | 正交脉冲,相位差90° |
| Z相 | 零位校准 | 1 | 每圈一个脉冲 |
| U/V/W | 换相扇区 | 3 | 6种状态组合 |
分辨率与精度——别搞混了
这两个概念,我见过太多人混为一谈了。包括我自己,早期也犯过这个错。
分辨率是编码器能分辨的最小角度变化。比如一个2500线的增量式编码器,经过4倍频后,分辨率就是 360° / (2500 × 4) = 0.036°。说白了,就是读数能精细到什么程度。
精度是编码器输出的角度与实际角度的偏差。它受机械安装、光栅刻划误差、温度漂移等因素影响。精度再高,如果安装偏了,读数也是错的。
避坑指南:我曾经在一个精密转台项目里,选了分辨率0.01°的编码器,以为精度也差不多。结果实测偏差0.5°——因为联轴器有间隙,编码器轴和电机轴没对中。分辨率再高,也救不了机械误差。
所以我的建议是:先保证精度,再追求分辨率。精度不够,分辨率再高也是自欺欺人。
知识体系总览
下面这张图,把编码器的分类、信号类型、关键参数串起来了。你对照着看,思路会更清晰。
实际选型时我关注什么
说了这么多理论,落到实际选型,我一般按这个顺序来:
- 先定类型:是否需要断电记忆位置?是,选绝对式;否,选增量式。
- 再看分辨率:控制精度要求多少?留出3~5倍余量。
- 确认信号接口:控制器支持ABZ还是UVW?电平是5V还是3.3V?
- 检查机械安装:轴径、出线方式、防护等级——这些往往比电气参数更坑。
个人经验:我一般会多买一个同型号的编码器做备件。不是因为容易坏,而是因为不同批次的编码器,零位偏移可能不一样。换上去还得重新校准,麻烦得很。