[转]使用D触发器制作正交编码器的鉴相电路
Posted tubujia
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转]使用D触发器制作正交编码器的鉴相电路相关的知识,希望对你有一定的参考价值。
我们在做伺服电机控制的时候,一般会用到正交编码器做速度和位置的反馈控制,这里只提增量式正交编码器,其输出一共有三根线,如下图所示,即A相、B相和Index相,其中A相和B相为互差90度的方波或者正弦波脉冲(可以整形成方波),每转一圈会有若干个脉冲输出(输出脉冲的个数决定了编码器的分辨率,我们常称之为线数),用来测量速度和位置,而Index相则每转一圈只输出一个脉冲,用来做误差矫正(可以消除做位置反馈时的累积误差)。同时由于A相和B相的正交90度差,也就引出了相位超前和相位滞后的概念,而凭借这两相的相位差(含正负)则可以判断出编码器转子的方向,进而实现鉴相,方便伺服电机的方向控制。
上面简单的介绍了正交编码器的工作原理,那么实现鉴相的方法就简单了,实际上现在很多针对电机控制的MCU都自带了正交解码器的Timer,只需将A、B两相连接到MCU的专用解码管脚即可实现内部Timer对脉冲的加减计数,不过究其鉴相原理实际上都是通过D触发器来实现的,即一相接D触发器的D端,另一相接CLK端,通过这样的解码方式其OUT端的高低电平即决定了A、B两相的超前或滞后也即编码器的旋转方向。
既然MCU内部的鉴相电路也是D触发器来实现的,那么当我们在使用不带正交解码功能的MCU时,我们可以通过外部搭建专用的D触发器来实现鉴相功能,再通过查询外部IO的电平来判断方向。下图所示为使用市场上最常用的D触发器ASIC 74HC74(双D触发器),当然也可以根据成本考虑使用单D触发器(74HC74G1)来实现单个旋转编码器的鉴相(单电机控制,如果为了实现双电机控制则可以使用双路D触发器),其中Out1和Out2则与MCU的普通IO连接。
以上是关于[转]使用D触发器制作正交编码器的鉴相电路的主要内容,如果未能解决你的问题,请参考以下文章
用D触发器和译码器实现彩灯循环电路.要求8只彩灯,7亮一暗,且这一暗灯可以可以循环移动
用3-8线译码器74LS138D触发器74LS74设计汽车尾灯控制电路