光栅编码器四倍频电路设计
从光栅编码器输出信号的时序关系可以知道:不论光栅尺向哪个方向移动,AB 两相信号的波形每循环一次共存在四个状态。因此,从时序电路的原理可以得出如下结论:用时序电路对AB 两相信号四倍频只需要两个记忆单元就足够了。按四倍频的要求,在信号的相对状态按照移动方向的顺序发生改变时产生输出脉冲,其余状态(包括反方向移动时)均无信号输出,根据这一要求,我们可以得到光栅尺正向移动时四倍频电路的状态转换表:
状态转换表
现状态编号
态名字S0
次名字S0S1S2S3
1
S1
S0S1S2S3
2
S2
S0S1S2S3
3
S3
S0S1S2S3
态Q A Q B [***********][1**********]011
转换条件A B [**************]1
[**************]1
输出Z [**************]0
从上表可以看出次态的状态变量Q A Q B =AB,因此D A =A,D B =B,由于AB 两相信号对倍频电路而言是异步信号,为使这两个信号与倍频电路同步,只要在AB 信号和D A D B 输入端之间各加一个D 触发器即可实现信号同步,这样做还带来一个附加的好处,即同时得到了AB 的互补信号。
从表中还可以看出,输出信号:Z =A ⋅⋅S0+⋅⋅S1+A ⋅B ⋅S2+⋅B ⋅S3由于在相邻的两个状态间,AB 信号中只有一个发生变化,因此上式可简化为:
Z =AS0++BS2+这里用到了AB 信号的互补信号。根据这里的分析不难得出相应的电路。对于反向移动,仿照上表即可得出结果。
注:这里的设计方法与书中的不同,书中的电路是由前一状态来求现在的状态,而本设计
是由当前状态来求下一状态,因此,本设计的电路状态与书中的不同,应当引起注意。虽然本设计和书中的设计采用同样的器件,但电路的接线有差异。当然,结果是相同的,不过按时序电路的设计方法,这里的设计更加符合系统化设计思想。
将激励表改用状态转换表可使设计更为直观方便,不易出错。
对于图2-43的ASM 图,可直接从图中导出状态转换表如下:
状态转换表
现状态编号
1326
态名字S1S2S3S4
次
态
转换条件
名字CBA (Q 2Q 1Q 0)S1S2S3S4S2S0
[***********]
START T T T K
K (非)
从次态的状态变量CBA (即书中的Q 2Q 1Q 0)和转换条件可直接导出各个MUX 的输入函数:
寄存器A (Q 0):
MAXA (0) =START
MAXA (1) =T MAXA (6) =K 其余输入端接F
寄存器B (Q 1):
MAXB (1)=T
MAXB (2)=T MAXB (3)=T MAXB (6)=K 其余输入端接F
寄存器C (Q 2):
MAXB (2)=T
其余输入端接F
参见《THE ART OF DIGITAL DESIGN 》P164
对于图2-46的ASM 图,可直接从图中导出以计数器为控制器的状态转换表:
状态转换表
现态状态编号名字
S0
次名字S0S1S2S2S3S4S1S5S4S0S5S6S3S0
态
Q 2Q 1Q 0
[***********][***********]101000
CE L D [1**********]111
x 1001001x 0x 101
转换条件
a b p
011
x 01T
p (非)p r
r (非)r (非)r x=yx>yx
r x y
(保持)(加1)(置数)(置数)(加1)(置数)(置数)(加1)(保持)(置数)(保持)(加1)(置数)(加1)
14536
S1S2S3S4S5
7S6
从次态的状态变量Q 2Q 1Q 0、CE 、L D 和转换条件可直接导出计数器控制端和置数端的各个输入函数。
对于图2-46的ASM 图,可直接从图中导出以移位寄存器为控制器的状态转换表:
状态转换表
现态状态编号名字
S0
次名字S0S1S2S2S3S4S1S5S4S0S5S6S3S0
态Q 1Q 2Q [***********][***********]0011000
s1s[**************]
[1**********]011
转换条件SL a b x x 1x 10x 1x x x 0x x
p
r x y
(保持)0x (置数)10(移入1)11(置数)T
(移入1)p (非)(移入0)p (置数)r
(移入1)r (非)(保持)r (非)(置数)r (保持)x=y(移入0)x>y(置数)x
1
4536
S1S2S3S4S5
7S6
从次态的状态变量Q 1Q 2Q 3、s1s0、SL 和转换条件可直接导出移位寄存器控制端和置数端的各个输入函数。