新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 单片机与增量式旋转编码器的连接

单片机与增量式旋转编码器的连接

作者: 时间:2016-11-13 来源:网络 收藏
增量式旋转编码器通过内部两个光敏接受管转化其角度码盘的时序和相位关系,得到其角度码盘角度位移量增加(正方向)或减少(负方向)。在接合数字电路特别是单片机后,增量式旋转编码器在角度测量和角速度测量较绝对式旋转编码器更具有廉价和简易的优势。

A,B两点对应两个光敏接受管,A,B两点间距为 S2 ,角度码盘的光间距分别为S0和S1。

本文引用地址:https://www.eepw.com.cn/article/201611/316215.htm

当角度码盘以某个速度匀速转动时,那么可知输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值相同,同理角度码盘以其他的速度匀速 转动时,输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值仍相同。如果角度码盘做变速运动,把它看成为多个运动周期(在下面定义)的组 合,那么每个运动周期中输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值仍相同。

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

顺时针运动 逆时针运动
A B AB

1 1 11

0 110

0 0 00

1 0 01

我们把当前的A,B输出值保存起来,与下一个A,B输出值做比较,就可以轻易的得出角度码盘的运动方向,

如果光栅格S0等于S1时,也就是S0和S1弧度夹角相同,且S2等于S0的1/2,那么可得到此次角度码盘运动位移角度为S0弧度夹角的1/2,除以所消毫的时间,就得到此次角度码盘运动位移角速度。

S0等于S1时,且S2等于S0的1/2时,1/4个运动周期就可以得到运动方向位和位移角度,如果S0不等于S1,S2不等于S0的1/2,那么要1个运动周期才可以得到运动方向位和位移角度了。

发一个机械式旋转编码器检测程序用51写的
#defineWA=PX.X
#defineWB=Py.y

voidencoder(void)
{
unsignedchari,j;
staticunsignedcharta,tb;
TR1=0;
i=WA;
j=WB;

if((i^j)&&(ta&tb))
{
if((i==1)&&(j==0))
{
count++;
}
elseif((i==0)&&(j==1))
{
count--;
}
}


评论


技术专区

关闭