3. 编码器输出信号类型
式编码器的核心价值在于上电即可获得位置信息,而这一能力的实现依赖于编码器与控制器(PLC、CNC、伺服驱动器)之间的信号传输方式。不同的输出信号类型决定了系统的布线复杂度、抗干扰能力、传输距离、实时性以及可扩展性。从早期的并行二进制输出到如今主流的串行数字接口(SSI、BiSS、EnDat)和工业总线接口(HIPERFACE、CANopen),每一种接口都对应着特定的历史背景、技术约束和应用场景。本章将系统梳理这些接口的物理层特征、数据链路层协议、典型应用领域及选型判断方法,帮助工程师在项目初期做出正确的接口决策。
上图从宏观角度展示了三类接口的定位差异。并行接口以“多根线同时传输每一位”为特征,虽然直观但受限于线缆成本和干扰问题;串行接口通过时钟同步和差分信号将数据压缩到2~4根线上,成为当前中高端伺服和数控系统的主流;总线接口则进一步将编码器视为网络节点,支持参数读写和状态诊断。下面逐一展开各类接口的技术细节。
3.1 并行二进制与格雷码输出
核心原理
并行二进制输出是最早的式编码器接口形式。编码器内部将位置转换为N位二进制数据(如12位、16位),每一位通过独立的推挽输出或集电极开路输出引脚传送。控制器通过读取I/O端口电平即可获得位置值。格雷码(Gray Code)是二进制的一种变体,其特点是相邻两个数值之间只有一位发生变化。例如十进制1(0001)到2(0010)在二进制中变化两位,而格雷码中1(0001)到2(0011)仅变化一位。这一特性在机械运动场景中至关重要——当编码器停留在两个码值边界时,二进制可能产生多位跳变(如0111→1000),导致读取到完全错误的位置;而格雷码只会产生一位误差,且可通过后续逻辑转换为二进制。
判断方法与操作流程
在实际工程中,判断编码器是否为并行输出,首先观察接口端子数量。若编码器引出线超过10根(不含电源和屏蔽),且每根线对应一个数据位,则基本可判定为并行接口。接线时需注意:数据线必须一一对应PLC或计数卡的数字输入通道,且电平标准需匹配(TTL 5V或HTL 24V)。操作流程如下:
- 确认编码器位数(如12位),准备对应数量的输入点。
- 将编码器数据位D0~D11分别接入PLC输入I0.0~I0.11。
- 在PLC程序中组合读取,例如使用
WORD类型变量将12个位拼接为整型。 - 若为格雷码输出,需在程序中实现格雷码到二进制的转换函数。
// 格雷码转二进制(C语言示例)
unsigned int grayToBinary(unsigned int gray) {
unsigned int bin = gray;
while (gray >>= 1) {
bin ^= gray;
}
return bin;
}
案例拆解:包装机械的定位工位
某包装机械的旋转切刀工位采用12位并行格雷码编码器,PLC为西门子S7-1200。初始现象:设备偶尔在高速运行时出现切刀位置偏移,导致包装袋切口歪斜。通过监控PLC输入字发现,位置值偶尔出现“跳变”,例如从2047直接跳到2049,中间值2048丢失。分析过程:2047的格雷码为100000000000,2048的格雷码为110000000000,两者相差一位,但二进制转换后却相差2。进一步检查发现,编码器输出线缆长度约2.5米,且与变频器动力线同槽敷设。由于格雷码本身抗单bit错误,但无法抵抗线间串扰导致的双bit同时翻转。解决措施:将编码器线缆更换为双绞屏蔽线,并单独走线槽,与动力线保持20cm以上距离;同时在PLC程序中增加数字滤波(连续读取3次一致才采用)。改造后运行一个月未再出现位置跳变。此案例说明并行接口对布线工艺极其敏感,格雷码只能降低风险而非消除风险。
常见误区与总结
3.2 SSI(同步串行接口)
核心原理
SSI(Synchronous Serial Interface)是西门子等公司于1980年代推出的串行接口标准,采用RS-422差分信号传输。编码器作为从设备,接收控制器发出的时钟脉冲(CLK+/-),并在每个时钟上升沿同步输出一位数据(DATA+/-)。数据帧格式通常为:起始位(0)+ 位置数据(N位)+ 状态位(可选)+ 校验位(可选)。时钟频率典型值为100kHz~2MHz,传输距离可达50~100米。SSI的物理层简单可靠,但数据方向是单向的(编码器→控制器),无法向编码器写入参数。
判断方法与操作流程
SSI接口的编码器通常有6个引脚:CLK+、CLK-、DATA+、DATA-、VCC、GND。判断方法:查看编码器铭牌或手册,若标注“SSI”或“Synchronous Serial”,且引脚数为6或8(含屏蔽),即可确认。接线时需注意:时钟线必须由控制器主动发出,编码器被动应答。操作流程:
- 将编码器CLK+/-接入控制器(如伺服驱动器或计数模块)的SSI时钟输出。
- 将DATA+/-接入控制器的SSI数据输入。
- 在控制器参数中设置数据位数(如25位)、格雷码/二进制格式、时钟频率。
- 上电后读取位置值,并验证零点位置。
案例拆解:龙门铣床双轴同步
某龙门铣床的X轴由左右两个伺服电机驱动,每个电机尾部安装SSI接口式编码器(25位,精度0.001mm)。初始目标:实现双轴位置同步误差小于0.01mm。调试中发现,当进给速度超过8m/min时,同步误差达到0.03mm。分析过程:SSI时钟频率设置为500kHz,数据帧25位,单次读取周期约50μs。但控制器采用“先读左轴、再读右轴”的顺序读取方式,导致两轴位置采样时刻相差约100μs。在高速运动下,100μs内X轴移动距离为8m/min×100μs≈0.013mm,加上机械间隙,误差被放大。解决措施:将控制器切换为“同时采样”模式(部分高端驱动器支持双SSI通道同步触发),或改用BiSS接口(支持多从站同步)。最终通过硬件同步方案将误差控制在0.005mm以内。此案例揭示了SSI在同步应用中的固有时序缺陷。
常见误区与总结
3.3 BiSS与EnDat:双向串行接口
核心原理
BiSS(Bidirectional Synchronous Serial)和EnDat(Encoder Data)是当前高端伺服系统最常用的两种双向串行接口。它们均基于RS-422差分信号,但增加了反向数据通道(控制器→编码器),用于写入参数、请求诊断信息或执行零点设定。BiSS由德国IC-Haus公司提出,采用开放协议,支持多从站菊花链连接;EnDat由海德汉(Heidenhain)公司开发,协议封闭但功能完善,支持增量信号和位置并行传输。两者均支持最高10MHz时钟频率,单圈分辨率可达26位以上,多圈可达40位。
判断方法与操作流程
BiSS和EnDat接口的编码器引脚定义相似,但协议帧格式不同。判断方法:查看编码器标签,若标注“BiSS-C”或“EnDat 2.2”,则对应相应协议。接线时需注意:双向通信需要控制器支持对应的主站芯片或FPGA IP核。操作流程(以BiSS为例):
- 连接CLK、DATA差分线,注意DATA方向是双向的,需使用收发器。
- 在控制器中配置BiSS参数:从站地址、数据长度、CRC多项式。
- 发送“NOP”命令读取位置数据,发送“WRITE”命令写入参数。
- 验证CRC校验,确保数据完整性。
案例拆解:半导体设备的高精度定位
某晶圆搬运机械臂采用EnDat 2.2接口编码器(单圈26位,多圈12位),要求重复定位精度±1μm。初始现象:设备运行3个月后,偶尔出现“位置漂移”报警。分析过程:查看EnDat诊断数据发现,编码器内部温度从45℃升至62℃,导致码盘热膨胀产生微小位移。由于EnDat支持读取温度参数,控制器据此进行温度补偿(每℃补偿0.5μm)。同时,EnDat的CRC校验发现偶发通信错误,进一步检查发现屏蔽层接地不良。解决措施:优化接地方式(单端接地),并在控制器中启用“CRC错误重试”功能。改造后设备连续运行6个月无报警。此案例展示了双向接口在状态监测方面的独特价值。
常见误区与总结
3.4 HIPERFACE与CANopen:总线型接口
核心原理
HIPERFACE(High Performance Interface)是SICK公司专为伺服驱动开发的串行总线接口,物理层采用RS-485,传输速率9.6kbps~2Mbps。它仅需两根线(DATA+/-)即可实现双向通信,同时通过同一对线缆传输电源(叠加直流偏置)。HIPERFACE协议包含位置数据、速度数据、电子铭牌(电机参数)、诊断信息等,特别适合伺服电机的“即插即用”配置。CANopen基于CAN总线,编码器作为CANopen从站节点,通过SDO(服务数据对象)和PDO(过程数据对象)通信。CANopen的优势在于多节点组网能力(最多127个节点),且抗干扰性强,适合分布式控制系统。
判断方法与操作流程
HIPERFACE编码器通常有8个引脚(电源+数据),而CANopen编码器有5个引脚(CAN_H、CAN_L、电源、GND、屏蔽)。判断方法:查看接口定义,HIPERFACE标注“HIPERFACE”或“SICK”,CANopen标注“CANopen”或“CiA 301”。操作流程(以CANopen为例):
- 设置编码器的节点ID(通过拨码开关或SDO写入)。
- 设置通信波特率(125kbps~1Mbps),需与主站一致。
- 在PLC或上位机中加载EDS文件(电子数据表),配置PDO映射。
- 通过SDO读取编码器对象字典(如0x6000位置值)。
案例拆解:汽车生产线输送线
某汽车总装车间的摩擦线输送系统采用CANopen接口式编码器(每台输送小车安装一个),用于位置闭环控制。系统共32个小车,每个小车编码器节点ID从1到32。初始现象:系统启动时,部分小车位置反馈延迟超过50ms,导致停止位置不准。分析过程:CANopen总线波特率设置为500kbps,但总线长度超过200米,且分支线较多,信号反射严重。通过CANscope分析发现,总线错误帧率高达5%。解决措施:在总线两端增加120Ω终端电阻,并优化分支线长度(小于0.3米)。同时将PDO传输类型从“事件触发”改为“同步触发”,确保所有编码器在同一时刻采样。改造后错误帧率降至0.1%,位置精度满足±1mm要求。此案例说明总线型接口的布线规范至关重要。
常见误区与总结
3.5 接口选型对比与决策建议
| 接口类型 | 信号线数量 | 最大传输距离 | 最高分辨率 | 双向通信 | 典型应用 |
|---|---|---|---|---|---|
| 并行二进制 | 10~30 | 3m | 16位 | 否 | PLC直连、简单定位 |
| 格雷码 | 10~30 | 3m | 16位 | 否 | 同上,抗单bit错误 |
| SSI | 4 | 100m | 25位 | 否 | 伺服驱动、通用运动控制 |
| BiSS | 4 | 100m | 26位+ | 是 | 高端伺服、多轴同步 |
| EnDat | 4 | 100m | 26位+ | 是 | 机床、半导体设备 |
| HIPERFACE | 2 | 50m | 20位 | 是 | 伺服电机一体化 |
| CANopen | 2 | 500m | 16~32位 | 是 | 分布式控制、多节点 |
选型决策时,应遵循以下优先级:首先确定传输距离和布线环境(超过10米优先串行或总线),其次确定是否需要双向通信(需要参数写入或诊断则排除SSI),最后考虑系统兼容性(现有控制器支持哪种协议)。对于新设计的高端设备,BiSS和EnDat是当前最优选择;对于多轴分布式系统,CANopen或HIPERFACE更具成本优势。