一文知道旋转编码器程序编写思路

电子说

1.3w人已加入

描述

旋转编码器常应用于角度定位或测量时,通常有A、B、Z三相输出。A相和B相输出占空比为50%且相位差为90度的方波。当编码器正向旋转时,A相比B相超前四分之一个周期;当编码器反向旋转时,B相比A相超前四分之一个周期。编码器每转一周,Z相输出一个脉冲。由于编码器每转一周,A相和B相输出固定数目的脉冲,则A相或B相每输出一个脉冲,表示编码器旋转了一个固定的角度。当Z相输出一个脉冲时,表示编码器旋转了一周。因此旋转编码器可以测量角位移及位移方向。

当然,不同型号的旋转编码器,其输出脉冲的相数也不同,有的旋转编码器输出A、B、Z三相脉冲,有的只有A、B相两相,最简单的只有A相。

A和B输出波形为

编码器

通过输出波形图可知每个运动周期的时序为

编码器

静止状态为11或00

单片机可利用定时器中断来检测A和B的状态,中断时间在5~20ms之间均可。

当检测到A^B= 0时,表示为静止状态,记下A和B的状态。

当检测到A^B= 1时,表示有转动,读取AB的状态,如果AB是从11到01或者是

从00到10则为正转,反之如果AB是从11到10或者是从00到01则为反转。

此方法比较简单可靠,可以检测转动一格又可以检测快速转动。
责任编辑人:CC

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分