1. 编码器基础:增量式与绝对式编码器原理、分辨率与精度概念、常用接口类型(ABZ、SSI、BiSS)
做电机控制这些年,我接触过各种各样的编码器。说实话,选错编码器或者没搞懂它的脾气,后面调零位、换相的时候会吃大亏。这一章咱们先把地基打牢。
1.1 增量式编码器:最简单的“计数器”
增量式编码器,说白了就是一个脉冲计数器。它每转一个角度,就输出一个脉冲。你通过数脉冲个数,就知道轴转了多少。
但它有个致命弱点——它不知道自己在哪里。断电再上电,它只能从零开始数。所以每次开机都得先回零位。我在做伺服驱动器项目时,就遇到过客户抱怨“为什么每次开机都要抖一下”,其实就是增量编码器在找零。
核心特点:
- 输出AB两相正交脉冲,相位差90°,用来判断方向
- Z相每圈输出一个脉冲,用于零位参考
- 断电丢失位置信息
- 成本低,结构简单
1.2 绝对式编码器:自带“记忆”
绝对式编码器就不一样了。它每个位置都有一个唯一的编码值。上电就知道当前角度,不需要回零。嗯,这里要注意——它分单圈和多圈两种。
- 单圈绝对式:一圈内位置唯一,但转多了就重复了
- 多圈绝对式:内部有齿轮或电池,能记住转了多少圈
我个人习惯在机器人关节、高端伺服上必用多圈绝对式。为什么?因为断电后位置不会丢,省去了每次上电回零的麻烦。我曾经在一个协作机器人项目里,因为用了增量式,每次开机都要花3秒回零,客户直接投诉“开机太慢”。换成绝对式后,问题就解决了。
1.3 分辨率与精度:别搞混了
这两个概念,我见过太多人搞混了。你想想看,分辨率高不等于精度高。
| 概念 | 定义 | 举个例子 |
|---|---|---|
| 分辨率 | 编码器能分辨的最小角度变化 | 17位编码器,分辨率 = 360° / 2^17 ≈ 0.0027° |
| 精度 | 实际位置与测量位置的偏差 | ±0.01°,受机械安装、码盘刻划误差影响 |
避坑指南:我曾经在一个精密转台项目里,选了20位的编码器,以为精度很高。结果装上去发现实际误差有0.05°。查了半天,发现是码盘安装偏心导致的。分辨率再高,机械误差摆在那里,精度也上不去。
1.4 常用接口类型
接口这块,我按自己的经验给大家梳理一下。选接口主要看三个因素:速度、距离、抗干扰。
ABZ接口(增量式标配)
最基础的接口。A、B两相正交,Z相零位。用差分信号(RS-422)传输,抗干扰还行。但距离长了信号会衰减。我一般建议3米以内用这个。
SSI接口(绝对式经典)
同步串行接口。时钟+数据两根线,主设备发时钟,编码器回数据。速度一般能到1-10MHz。我做过一个项目,用SSI接了10米长的线,信号依然稳定。
BiSS接口(高速绝对式新贵)
BiSS是SSI的升级版。双向通信,速度能到10-50MHz。而且支持CRC校验,数据可靠性高。现在很多高端伺服驱动器都支持BiSS-C协议。我个人比较推荐新项目用BiSS,尤其是需要高速、高可靠性的场合。
我的建议:如果预算允许,优先选BiSS接口的绝对式编码器。虽然贵一点,但省心。调试时间省下来的成本,远超过编码器本身的差价。
1.5 知识体系总览
下面这张图,是我自己整理的编码器知识框架。你看一眼,心里就有谱了。
1.6 小结
这一章咱们把编码器的底子打好了。增量式像计数器,断电失忆;绝对式自带记忆,上电就知道位置。分辨率看位数,精度看机械。接口方面,ABZ便宜但距离短,SSI稳定,BiSS又快又可靠。