摘 要: 旋转编码器应用于角度定位或测量时,由于旋转轴的晃动可能引起编码器输出波形的抖动,从而引发误计数现象。介绍了一个抗抖动计数电路,滤除了旋转编码器因抖动而造成的误计数。
|
旋转编码器应用于角度定位或测量时,通常有A、B、Z三相输出。旋转编码器的输出波形见图1。 |
A相和B相输出占空比为50%的方波。编码器每转一周,A相和B相输出固定数目的脉冲(如100个脉冲)。当编码器正向旋转时,A相比B相超前四分之一个周期;当编码器反向旋转时,B相比A相超前四分之一个周期。A相和B相输出方波的相位差为90±45°。编码器每转一周,Z相输出一个脉冲。由于编码器每转一周,A相和B相输出固定数目的脉冲,则A相或B相每输出一个脉冲,表示编码器旋转了一个固定的角度。当Z相输出一个脉冲时,表示编码器旋转了一周。因此旋转编码器可以测量角位移及位移方向。 问题出在伺服系统停止工作时,若无锁定,则旋转轴受外力(如风力影响)可能自由晃动,因而引起编码器输出波形抖动,如图2所示, |
从而引起误计数。在这种情况下,就不能对波形进行正确计数。虽然可以通过软件设置标志状态,用记录历史状态的变化来滤除误计数,但是程序耗费颇大。因此,本人设计了一个抗抖动计数电路,它能够自动消除抖动造成的误计数。
|
1 抗抖动计数电路原理图 图3是抗抖动计数电路原理图。 |
此电路滤除了旋转编码器输出波形的抖动现象。该电路分为四个部分:译码电路U4A;互锁电路U5A、U5B;正旋计数链J1、J3、J5和反旋计数链J2、J4、J6。U4A为二四译码器,U5A、U5B为与门,J1~J6为D触发器。正旋计数链负责对编码器正向旋转的计数,反旋计数链负责对编码器反向旋转的计数。
|
2 抗抖动计数电路工作分析 图4为二四译码器输出的波形 |
译码器产生d、a、b、c四种不同的状态。在图3中当B=0、A=0时,译码器 Q0输出为d状态,d状态为高电平。当B=0、A=1时,译码器Q1输出为a状态,a状态为高电平。当B=1、A=1时,译码器 Q2输出为b状态,b状态为高电平。b状态不影响计数和方向确定,在图3电路中没有使用。当B=1、A=0时,译码器Q3输出为c状态,c状态为高电平。
当旋转编码器正向旋转时,译码器输出的状态顺序为d、a、b、c、d、a、b、c……。如图4所示。当B=0、A=0时,进入d状态,与门U5A的Pin2=a=0(Pin是管脚的意思),于是U5A的输出Pin3=0。D触发器J1的R=d=1、S=0,因此J1被清0。与门U5B的Pin5=c=0,于是U5B的输出Pin4=0。D触发器J2的R=d=1、S=0,因此J2也被清0。这时J1、J2的端都为1,与门U5的 Pin1=Pin6=1,U5A和U5B都处于等待开门状态。当进入状态a时,Q1=a=1,U5A的Pin2=a=1。由于c=0所以J2的端仍为1,U5A的Pin1=1U5A的输出Pin3=1。J1的R=d=0、S=1,因此J1被置1。J1的Q=1,=0。J1的Q=1,正旋标志送到了J3的D端。同时J1的端关闭了U5B。在下一个d出现之前,所有的c脉冲都不会改变J2的状态。这就是说,J1、J3、J5组成的正旋计数链被打开,J2、J4、J6组成的反旋计数链被阻断。U5A、U5B、J1、J2完成互锁的功能。在进入状态a时,J3的R=a=1、S=0,J3被清0,J5的R=a=1、S=0,J5被清0。在进入状态c前,J3的R=a=0、S=0、D=1,J3处于待触发状态。J3的CLK=c,当c脉冲上升沿过后,D=1被打入J3的Q端,正旋标志送到了J5的D端。在进入状态d前,J5的R=a=0、S=0,J5处于待触发状态。J5的CLK=d,当d脉冲上升沿过后,D=1被打入J5的Q端,正旋标志送到了正旋计数输出端。正旋计数输出端由低电平变为高电平。到此为止,完成了正旋计数。当由状态d进入状态a时,J5的R=a=1、S=0,J5被清0,正旋计数输出端由高电平变为低电平。由此可知,当旋转编码器正向旋转时,对应A相和B相的每一个完整周期,正旋计数输出端都会产生相应的一个脉冲。 |
本人把此电路用于对天线云台角度的定位与测量。
|
参考文献 1 王毓银.脉冲与数字电路.北京:高等教育出版社,1992 2 Victor P. Nelson. 数字逻辑电路分析与设计.北京:清 华大学出版社,1997 4 John M. Yarbrough(美).李书浩译.数字逻辑应用与设 计.北京:机械工业出版社,2000 5 陆 坤,奚大顺,李之权.电子设计技术M . 成都:电子 科技大学出版社,1997 |
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。