编码器
编码器是一种把机械运动的位置、角度、速度或方向转换成电信号的传感器。
在非标自动化设备中,编码器通常安装在:
电机轴
输送线滚筒
丝杆
转盘
升降机构
测长轮
手轮
伺服电机内部
可以先把它理解为:
接近传感器通常只告诉PLC“到没到”,编码器则可以持续告诉控制系统“动了多少、往哪个方向动、速度多快”。
一、编码器在设备中的作用
编码器主要用于检测以下信息:
1. 位置
例如转盘转了多少角度:
转盘旋转 ↓ 编码器产生脉冲或位置数据 ↓ PLC计算当前角度如果编码器一圈输出1000个脉冲,那么每收到一定数量的脉冲,就可以估算转盘转过的角度。
2. 位移或长度
编码器安装在测长轮上,测长轮压在材料表面。
材料向前移动 ↓ 测长轮转动 ↓ 编码器输出脉冲 ↓ PLC换算材料长度常用于:
薄膜定长
电缆测长
板材送料
输送带距离检测
切割长度控制
3. 速度
PLC统计一定时间内收到多少个脉冲,就可以计算转速或线速度。
单位时间脉冲越多 ↓ 运动速度越快常用于:
电机转速检测
输送线速度检测
滚轮速度同步
飞剪和追剪控制
4. 运动方向
增量式编码器通常有A、B两相信号。
通过判断A相和B相谁先变化,可以判断:
正转
反转
5. 原点或零位
部分增量式编码器带Z相信号。
编码器每旋转一圈,Z相通常输出一次脉冲,可用于:
每圈基准位置
回零
校准
转盘工位定位
电机机械零点确认
二、编码器与普通位置传感器的区别
| 对比项 | 接近传感器、光电传感器 | 编码器 |
|---|---|---|
| 输出信息 | 有或无 | 连续位置、脉冲、方向、速度 |
| 常见输出 | 一个开关量 | A/B/Z脉冲或数字位置数据 |
| 能否判断运动多少 | 通常不能 | 可以 |
| 能否判断速度 | 一般不能直接判断 | 可以 |
| 能否判断方向 | 单个传感器通常不能 | A/B相可以 |
| PLC资源 | 普通数字量输入 | 高速计数器或通信接口 |
| 调试难度 | 较低 | 较高 |
三、编码器的主要分类
编码器最常见的分类是:
增量式编码器
绝对式编码器
此外还可以按结构分为:
旋转编码器
直线编码器
在非标自动化中,最常见的是旋转编码器。
四、增量式编码器
增量式编码器在轴转动时输出连续脉冲。
它告诉控制系统的是:
相对于上一次位置,又移动了多少它不会天然记住绝对位置。
设备断电后,如果PLC计数值丢失,重新上电时通常不知道当前位置,需要:
重新回原点
重新找零
从机械基准位置重新计数
1. 增量式编码器常见信号
常见输出包括:
A相
B相
Z相
A反相
B反相
Z反相
最基本的是:
A B Z2. A相信号
A相是一串脉冲。
编码器轴每转动一定角度,就产生一次高低电平变化。
PLC通过统计A相脉冲数量,可以知道运动量。
3. B相信号
B相和A相的频率通常相同,但相位错开90°。
例如正转时:
A相先变化 B相后变化反转时:
B相先变化 A相后变化PLC通过比较A、B相的先后顺序判断方向。
4. Z相信号
Z相又称:
零位脉冲
原点脉冲
Index信号
一般每转一圈出现一次。
例如:
编码器一圈1000脉冲 每转一圈,Z相输出一次Z相不能代替A、B相连续计数,它主要提供每圈基准。
五、A/B正交信号如何判断方向
A相和B相相差90°,称为正交编码信号。
例如正转:
A:__----____----__ B:____----____----A相领先B相。
反转时顺序相反:
A:____----____---- B:__----____----__因此控制系统不仅能知道脉冲数量,还能知道加计数还是减计数。
例如:
正转: 计数值 +1 反转: 计数值 -1六、什么是1倍频、2倍频和4倍频
假设编码器标称一圈1000个A相周期。
控制系统可以采用不同计数方式。
1倍频
只统计A相上升沿:
一圈计数1000次2倍频
统计A相上升沿和下降沿:
一圈计数2000次4倍频
统计A相和B相的所有上升沿、下降沿:
一圈计数4000次因此编码器标称1000P/R时,PLC最终一圈计数值可能是:
1000
2000
4000
具体取决于高速计数器的计数模式。
七、P/R、PPR、CPR和分辨率
编码器选型时经常看到:
P/R
PPR
CPR
Resolution
这些术语不同厂家可能使用方式不完全一致,不能只看缩写。
常见理解是:
PPR
Pulse Per Revolution,每转脉冲数。
例如:
1000 PPR表示编码器轴每转一圈产生1000个基础脉冲周期。
CPR
Count Per Revolution,每转计数数。
有些厂家把4倍频后的计数值称为CPR。
例如:
1000 PPR 4倍频后为4000 CPR但也有厂家把PPR和CPR混用。
因此必须查看说明书中明确写的是:
每圈脉冲周期数
每圈边沿数
A相脉冲数
四倍频计数数
八、增量式编码器的计算方法
假设:
编码器分辨率:1000 PPR PLC使用4倍频 编码器轴每转一圈计数40001. 角度计算
角度 = 当前计数值 ÷ 每圈计数值 × 360°例如计数1000:
1000 ÷ 4000 × 360° = 90°2. 转速计算
假设0.1秒内收到200个计数:
每秒计数 = 200 ÷ 0.1 = 2000每圈4000计数:
转速 = 2000 ÷ 4000 × 60 = 30 rpm3. 线性长度计算
假设测长轮周长为200mm,每圈计数4000:
每个计数代表: 200 ÷ 4000 = 0.05mm若收到10000个计数:
长度 = 10000 × 0.05mm = 500mm4. 丝杆位移计算
假设丝杆导程为10mm/圈,编码器每圈4000计数:
每个计数位移: 10 ÷ 4000 = 0.0025mm九、绝对式编码器
绝对式编码器输出的是一个明确的位置代码。
它告诉控制系统的是:
当前就在第几个位置而不是只告诉系统移动了多少。
例如一圈分成4096个位置,编码器每个角度都有唯一数字。
即使设备断电后重新上电,控制系统通常仍可以直接读取当前位置。
1. 单圈绝对值编码器
单圈范围内每个角度都有唯一位置值。
例如:
分辨率12 bit 2¹² = 4096个位置/圈但它通常不能单独区分已经转了多少圈。
2. 多圈绝对值编码器
除了知道单圈角度,还能记录旋转圈数。
例如:
单圈12 bit 多圈16 bit意味着:
每圈4096个位置
可以记录65536圈范围
适用于:
升降轴
多圈丝杆
仓储设备
机器人关节
断电后不方便重新回零的机构
十、增量式和绝对式的区别
| 对比项 | 增量式编码器 | 绝对式编码器 |
|---|---|---|
| 输出内容 | 脉冲增量 | 当前位置代码 |
| 断电后位置 | 通常丢失 | 通常可保留或重新读取 |
| 是否需要回原点 | 通常需要 | 一般可减少回零需求 |
| 接口 | A/B/Z、高速脉冲 | SSI、BiSS、CANopen、EtherCAT等 |
| 成本 | 较低 | 较高 |
| 接线 | 相对简单 | 通常更复杂 |
| 调试 | 较容易 | 需要配置通信和数据格式 |
| 适用场景 | 测速、测长、普通定位 | 断电位置保持、高精度位置反馈 |
十一、编码器的工作电压
常见编码器工作电压包括:
DC 5V
DC 10~30V
DC 12~24V
DC 24V
5V差分输出
非标自动化中常见两类:
DC 5V编码器 DC 10~30V编码器不能看到编码器有三根或多根线,就默认接24V。
如果把5V编码器接到24V,可能直接损坏。
十二、编码器的输出类型
增量式编码器常见输出电路包括:
NPN集电极开路
PNP集电极开路
推挽输出
电压输出
线驱动差分输出
这是编码器选型和PLC连接中非常重要的部分。
十三、NPN集电极开路输出
NPN编码器输出动作时,把信号线拉向0V。
典型连接:
编码器+V → +24V 编码器0V → 0V A相 → PLC高速输入A B相 → PLC高速输入B PLC输入COM → +24VNPN属于漏型输出。
如果PLC输入不带内部上拉,有时还需要外接上拉电阻,具体看编码器和PLC说明书。
十四、PNP集电极开路输出
PNP编码器输出动作时,向信号线提供正电压。
典型连接:
编码器+V → +24V 编码器0V → 0V A相 → PLC高速输入A B相 → PLC高速输入B PLC输入COM → 0VPNP属于源型输出。
十五、推挽输出
推挽输出既能主动输出高电平,也能主动输出低电平。
相比开集电极输出:
信号边沿更快
抗干扰能力通常更好
不一定需要上拉电阻
适合较高频率
但必须确认PLC输入电压和输出电平兼容。
十六、线驱动差分输出
线驱动输出常见信号为:
A+ A- B+ B- Z+ Z-也可能写为:
A /A B /B Z /Z每一路信号都有一对相反电平。
例如:
A+为高时,A-为低 A+为低时,A-为高PLC或运动控制器比较两根线之间的差值,而不是只看一根线对0V的电压。
差分输出的优点
抗共模干扰能力强
适合长距离传输
适合高速脉冲
适合伺服和运动控制
信号边沿稳定
常见电气标准包括:
RS-422
AM26LS31兼容线驱动
差分编码器必须接到支持差分输入的高速计数器或运动控制模块。
不能把A+、A-随便当作两个普通PLC输入。
十七、编码器与PLC的连接方式
编码器通常不能接到任意普通PLC输入点。
需要确认PLC是否具有:
高速计数输入
A/B相计数功能
Z相输入
单相脉冲计数
差分输入
对应电压等级
1. 单相计数
只接A相:
A → PLC高速计数输入可以计算:
速度
脉冲数量
单方向位移
但不能仅靠A相判断方向。
2. A/B相计数
接入A、B两相:
A → 高速计数A输入 B → 高速计数B输入可以判断:
脉冲数量
正反方向
加计数或减计数
3. A/B/Z相计数
接入:
A → 计数 B → 方向 Z → 每圈零位可用于:
精确回零
每圈同步
转盘基准
位置校正
十八、编码器是否分PNP和NPN
部分编码器明确分PNP和NPN,尤其是开集电极输出型。
但是编码器输出类型不能只理解为PNP/NPN,因为还可能有:
推挽
线驱动
差分
SSI
CANopen
EtherCAT
IO-Link
因此选编码器时,需要同时看:
供电电压 输出电路 信号电平 最大频率 PLC输入接口十九、编码器输出频率
编码器转速越高、每圈脉冲数越多,输出频率越高。
计算公式:
输出频率 = 每圈脉冲数 × 每分钟转速 ÷ 60例如:
编码器:2000 PPR 转速:3000 rpm输出频率:
2000 × 3000 ÷ 60 = 100000Hz = 100kHz如果PLC高速输入最大只能接50kHz,就会漏脉冲。
因此编码器选型必须同时验证:
编码器最高响应频率
PLC高速计数器最高输入频率
实际最高转速
使用1倍、2倍还是4倍频
二十、编码器的分辨率是不是越高越好
不是。
分辨率越高,理论上位置划分越细,但也会带来:
输出频率更高
PLC计数压力更大
抗干扰要求更高
机械误差可能超过编码器分辨率
成本提高
调试更复杂
例如机械间隙已经有0.2mm,即使编码器理论分辨率达到0.001mm,也不代表设备真实定位能达到0.001mm。
实际精度还受到:
丝杆间隙
联轴器弹性
皮带打滑
测长轮滑动
轴承间隙
机械变形
安装同轴度
影响。
二十一、编码器的正常状态
以增量式编码器为例。
轴不转动
A、B相信号保持某个高或低状态 计数值不变化需要注意,轴停止时A、B不一定都是0,也可能停在任意电平组合:
A=0,B=0
A=1,B=0
A=1,B=1
A=0,B=1
这取决于轴停止位置。
轴正转
A、B持续输出脉冲 PLC计数增加轴反转
A、B相位顺序反向 PLC计数减少每转一圈
带Z相的编码器:
Z相出现一次脉冲二十二、编码器常见故障现象
1. 电机转动,但PLC计数不变化
可能原因:
编码器没有供电
供电电压错误
A相信号线断开
PLC接的不是高速输入点
高速计数器未配置
PLC输入COM接错
PNP/NPN不匹配
差分输出接法错误
编码器轴没有真正转动
联轴器松脱
编码器损坏
2. 计数值有变化,但方向相反
可能原因:
A、B相接反
编码器安装方向与程序定义相反
PLC高速计数方向参数设置错误
机械正方向定义与电气方向不一致
解决方式通常是:
交换A、B相
或在程序中反向处理
但要统一图纸、程序和机械方向定义,不能只临时修改其中一处。
3. 计数值跳动或不稳定
可能原因:
编码器信号受到干扰
屏蔽层接地不正确
信号线和动力线同槽
供电电压不稳定
联轴器松动
编码器轴振动
PLC输入模式配置错误
单端信号传输距离过长
接线端子松动
编码器输出频率过高
4. 计数越来越不准
可能原因:
漏脉冲
干扰产生多余脉冲
测长轮打滑
联轴器松动
皮带打滑
机械传动间隙
编码器分辨率换算错误
1倍频、4倍频理解错误
轮径或丝杆导程设置错误
实际材料压缩或伸长
5. 每次运行误差固定为几倍
例如实际走100mm,PLC显示400mm。
常见原因:
编码器标称1000PPR
PLC使用4倍频计数
程序却仍按1000计数/圈换算
这样结果会放大4倍。
相反,如果程序按4000计数/圈计算,但PLC实际只使用1倍频,结果会缩小4倍。
6. 高速时正常计数变少
可能原因:
输出频率超过PLC输入上限
传感器响应频率不足
PLC输入滤波时间过长
电缆过长
信号电平衰减
单端输出抗干扰能力不足
程序读取方式不正确
普通扫描程序代替了硬件高速计数
7. Z相一直找不到
可能原因:
编码器本身不带Z相
Z相信号线接错
Z相脉冲太窄
PLC输入频率不够
Z相输入功能未启用
Z+、Z-差分接线错误
机械没有完整旋转一圈
程序检测方式错误
二十三、使用万用表检查编码器
万用表只能完成基础检查,不能充分分析高速脉冲。
更合适的工具包括:
示波器
逻辑分析仪
PLC高速计数监控
专用编码器测试仪
1. 测供电
先确认编码器供电端:
V+对0V应符合编码器额定值,例如:
5V 或 24V这是第一步。
2. 低速测单端输出
让编码器非常缓慢地转动。
对于PNP输出:
输出高电平时接近供电电压
输出低电平时接近0V
对于NPN输出:
动作时输出接近0V
关闭时由上拉或PLC输入回路拉高
如果转得太快,万用表只会显示平均电压,无法看到真实脉冲。
3. 蜂鸣档不能直接判断电子编码器输出
普通电子编码器内部是晶体管、驱动器或通信电路,不应像机械触点一样断电后直接用蜂鸣档判断A、B相通断。
二十四、使用示波器检查编码器
示波器适合检查:
A相是否有脉冲
B相是否有脉冲
A、B是否相差90°
脉冲幅值
频率
边沿是否干净
是否存在干扰毛刺
Z相是否每圈一次
差分信号是否互补
正常单端A/B相应类似方波。
如果波形出现:
电压过低
边沿缓慢
大量毛刺
周期不稳定
A/B相缺失
需要继续检查编码器、布线、电源和负载。
二十五、通过PLC定位编码器故障
可以按照以下路径排查:
机械轴是否转动 ↓ 编码器轴是否同步转动 ↓ 联轴器是否松脱 ↓ 编码器供电是否正常 ↓ A/B/Z输出是否存在 ↓ PLC高速输入灯或诊断是否变化 ↓ 高速计数器当前值是否变化 ↓ 方向是否正确 ↓ 脉冲数换算是否正确 ↓ 程序是否正确使用计数值例如输送线运行,但长度不增加:
看编码器轴是否转动。
检查测长轮是否打滑。
测量编码器电源。
查看PLC高速计数器当前值。
如果计数不变,检查输出和接线。
如果计数变化但长度不变化,检查程序地址和换算。
如果长度变化但不准确,检查PPR、倍频、轮径和机械打滑。
二十六、编码器安装位置和机械结构要求
1. 编码器轴与机械轴要同轴
轴偏心或不同轴会造成:
联轴器反复弯曲
编码器轴承受径向力
振动
计数不稳定
编码器轴承提前损坏
联轴器断裂
编码器通常不应直接承受较大的:
径向力
轴向力
冲击力
2. 使用合适的联轴器
常见有:
弹性联轴器
梅花联轴器
波纹管联轴器
螺旋切缝联轴器
联轴器可以补偿少量:
偏心
角度偏差
轴向误差
但不能依靠联轴器补偿严重安装误差。
3. 实心轴和空心轴编码器
实心轴编码器
需要通过联轴器连接到机械轴。
优点:
通用
安装方式灵活
缺点:
需要额外联轴器和支架
同轴度要求较高
空心轴编码器
直接套在电机轴或机械轴上。
通常配合:
锁紧环
弹性臂
防转支架
优点:
安装紧凑
不需要传统联轴器
4. 测长轮必须防止打滑
测长编码器检测的不是材料真实长度,而是测长轮转过的周长。
如果测长轮打滑,即使编码器计数完全正确,长度结果仍然错误。
需要考虑:
压紧力
轮面材质
轮面磨损
材料表面油污
材料张力
轮径变化
轮子跳动
5. 电缆不能承受拉力
编码器电缆应:
固定在支架上
避免反复折弯
避免被旋转轴卷入
避免靠近高温部件
避免与动力线平行长距离布置
必要时使用屏蔽双绞线
6. 屏蔽层接地
编码器特别容易受到:
伺服驱动器
变频器
电机动力线
接触器
高频设备
干扰。
通常应使用屏蔽线,并按照设备电气规范进行接地。
常见做法是屏蔽层在控制柜端可靠接地,但具体应以编码器、PLC和驱动器说明书为准。
二十七、编码器的重要选型参数
1. 增量式还是绝对式
需要考虑:
断电后是否必须知道当前位置
是否可以重新回零
成本要求
控制器接口
位置精度要求
2. 每圈分辨率
例如:
100 PPR
500 PPR
1000 PPR
2000 PPR
5000 PPR
需要结合最高转速和PLC最高输入频率选取。
3. 工作电压
例如:
DC 5V
DC 10~30V
DC 24V
4. 输出方式
例如:
NPN开集电极
PNP开集电极
推挽
线驱动差分
SSI
BiSS
CANopen
EtherCAT
PROFINET
5. 输出信号
增量式需要确认:
A相
A/B相
A/B/Z相
是否带反相信号
6. 最大响应频率
必须大于实际最高输出频率,并留有余量。
7. 最高允许转速
编码器机械转速也有上限,例如:
3000rpm
6000rpm
10000rpm
超过后可能损坏轴承或导致信号异常。
8. 轴径和轴型
例如:
6mm实心轴
8mm实心轴
10mm空心轴
12mm空心轴
盲孔轴
通孔轴
9. 外壳尺寸
常见:
φ25mm
φ38mm
φ50mm
φ58mm
φ80mm
10. 安装方式
法兰安装
夹紧法兰
伺服法兰
空心轴套装
面板安装
底座安装
11. 防护等级
常见:
IP50
IP54
IP65
IP67
油污、粉尘、冷却液环境应选择更高防护等级。
12. 工作温度
例如:
-20℃~80℃ -40℃~85℃13. 电缆或接插件
自带电缆
M12接插件
航空插头
侧出线
后出线
二十八、编码器为什么型号很多
编码器型号多,是因为以下参数组合非常多:
增量式或绝对式
单圈或多圈
分辨率不同
供电电压不同
PNP、NPN、推挽、线驱动
A/B/Z或差分信号
SSI、CANopen、EtherCAT等接口
实心轴、空心轴、通孔轴
轴径不同
外壳尺寸不同
法兰方式不同
最大转速不同
最大输出频率不同
防护等级不同
电缆长度不同
接插件不同
是否耐油
是否防爆
是否耐高温
是否抗振动
是否具有功能安全认证
因此不能只写:
买一个1000线编码器更完整的选型描述应类似:
增量式旋转编码器 1000 PPR DC 10~30V 三线或多线输出 PNP推挽 A/B/Z三相信号 实心轴φ6mm 外壳φ50mm 最高转速6000rpm 最高输出频率200kHz IP65 用于连接PLC高速计数输入或者:
增量式编码器 1000 PPR DC 5V RS-422线驱动差分输出 A+/A-、B+/B-、Z+/Z- 连接运动控制器差分高速输入二十九、编码器的核心理解
编码器的完整信号链路是:
机械轴转动 ↓ 编码器内部光栅、磁盘或磁性结构变化 ↓ 产生A/B/Z脉冲或绝对位置数据 ↓ PLC高速计数器或运动控制器接收 ↓ 计算位置、速度、方向和长度 ↓ 控制电机、输送线、切割或定位动作选择和使用编码器时,最重要的问题是:
测量位置、速度还是长度 增量式还是绝对式 断电后是否需要保留位置 每圈需要多少脉冲 最高转速是多少 最高输出频率是多少 PNP、NPN、推挽还是差分 PLC是否有对应高速输入 使用1倍频还是4倍频 机械上是否存在打滑、间隙和不同轴编码器能够提供很高的理论分辨率,但设备最终精度不只取决于编码器,还取决于:
机械传动
安装精度
联轴器
测长轮
丝杆
皮带
PLC高速计数能力
电气抗干扰设计
所以编码器选得很高端,并不等于设备的实际定位精度就一定很高。