注册 登录
查看: 6652|回复: 16

[智能车] 【转】使用D触发器制作正交编码器的鉴相电路

[复制链接]
发表于 2015-3-23 23:25:11 | 显示全部楼层 |阅读模式

    我们在做伺服电机控制的时候,一般会用到正交编码器做速度和位置的反馈控制,这里只提增量式正交编码器,其输出一共有三根线,如下图所示,即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连接。

[url=http://files.chinaaet.com/images/blog/2014/06/30/3948460807910.png][/url]


原文连接:http://blog.chinaaet.com/detail/35845

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 3互助 +5 收起 理由
刘华 + 2
乁_year + 1 赞一个!
仰逸致 + 2 赞一个!

查看全部评分

本帖被以下淘专辑推荐:

回复

使用道具 举报

发表于 2015-3-24 11:05:54 | 显示全部楼层
按照上面的原理图,A相直接用来给 LPTMR 或者其他脉冲计数模块来测脉冲数。

芯片输出端 OUT 用GPIO 来判断旋转方向
回复 支持 反对

使用道具 举报

发表于 2015-4-9 15:06:53 | 显示全部楼层
邴和 发表于 2015-3-24 11:05
按照上面的原理图,A相直接用来给 LPTMR 或者其他脉冲计数模块来测脉冲数。

芯片输出端 OUT 用GPIO 来判 ...

你好,不知你有没有用D触发器的程序,能否借我看一下,我这完全没思路,不知道去实现,谢谢了。
回复 支持 反对

使用道具 举报

发表于 2015-4-30 21:00:29 | 显示全部楼层
厉害,好用

回复 支持 反对

使用道具 举报

发表于 2015-4-30 21:46:10 | 显示全部楼层
亲测可用,KL26用正交解码的编码器。。。。
回复 支持 反对

使用道具 举报

发表于 2015-6-5 21:58:37 | 显示全部楼层
硬件检测好东西

回复 支持 反对

使用道具 举报

发表于 2015-6-13 20:44:42 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2015-7-4 22:45:59 | 显示全部楼层
谢谢分享哈!十分感谢
回复 支持 反对

使用道具 举报

发表于 2015-7-17 12:53:28 | 显示全部楼层
74HC74用3.3V供电,5V供电输出电压高于3.3V,有的单片机就烧了。。。
回复 支持 反对

使用道具 举报

发表于 2015-10-28 23:53:18 | 显示全部楼层
用jk触发器会不会变得复杂?
回复 支持 反对

使用道具 举报

发表于 2015-12-13 14:07:11 | 显示全部楼层
可以试试
回复 支持 反对

使用道具 举报

发表于 2015-12-25 21:52:41 | 显示全部楼层
顶一顶
回复 支持 反对

使用道具 举报

发表于 2016-3-9 15:48:32 | 显示全部楼层
想请问一下,D触发器一般的欧姆龙都带着是么?
回复 支持 反对

使用道具 举报

发表于 2016-3-10 17:22:25 | 显示全部楼层
命运与自己 发表于 2015-4-30 21:46
亲测可用,KL26用正交解码的编码器。。。。

  哪个AB相接口应该接单片机的哪个模块。
回复 支持 反对

使用道具 举报

发表于 2016-5-7 17:51:02 | 显示全部楼层
太赞了,
回复 支持 反对

使用道具 举报

发表于 2016-5-19 15:57:53 | 显示全部楼层
命运与自己 发表于 2015-4-30 21:46
亲测可用,KL26用正交解码的编码器。。。。

你的A相和B相如何接的KL26的引脚的啊?
回复 支持 反对

使用道具 举报

发表于 2017-6-8 17:11:30 | 显示全部楼层
编码器就3跟线
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部