光电编码器的“大心脏”,就是那个刻着均匀透光槽的圆片,转动的时候,led 打出的光就会被这些

这回我们就来聊聊光电编码器的事儿,不管是转圈还是平移,咱们都能给它吃透了。先看看增量式光电编码器的“大心脏”,就是那个刻着均匀透光槽的圆片,转动的时候,LED打出的光就会被这些槽孔切开,变成一串一明一暗的光斑。光敏二极管接上这些光斑,就能吐出高低电平信号了,转过一个槽孔就会产生一个脉冲。工程师还在边上留了条零位标记槽,这是为了知道从哪儿开始数。为了区分转的方向,通常会有两个接收器一起干活,一个是正弦信号接收器,一个是余弦信号接收器。 因为这两个接收器输出的波形相差90度相位,通过电子电路一处理,就能知道到底是顺时针还是逆时针了。其实只要把那套齿轮齿条或者滚珠螺母丝杆装置配上,就能把直线运动转化成旋转运动。 这样一来,编码器的“角分辨率”就能直接变成“直线分辨率”了。不过精度这事儿主要看机械系统稳不稳,背隙和重复定位精度搞不好可不行。关于分辨率的算法也挺简单,就是把360度除以码盘上的条纹数n。 比如n是1024的时候,结果就是0.325度,连半度都能看出来。要是想提高分辨率,还能在光路上塞个固定光栅或者狭缝把视野收窄一点,让光斑只占几个槽孔的宽度,这样就能让能看见的条纹数翻倍了。 方向的判断也不复杂,图2a里那种常见的方法就是再加张编码盘或者检测线圈让两个信号产生90度的相移。顺时针转的时候A信号领先B,逆时针转就反过来了。通过电子电路把这种相位差变成高低电平的组合,方向就一目了然了。 系统也能在计数的同时输出方向码,实现正负极性的双向输出或者增加减少的变化量通道输出。这样就能给后面的控制算法提供完整的轨迹信息了。