EC11旋转编码器&脉冲个数计数及转向检测编程

旋转编码器是用来测量转速并配合PWM技术可以实现快速调速的装置,其中,光电式旋转编码器通过光电转换,可输出轴的角位移、角速度等机械量转换成相应的电脉冲以数字量输出。
旋转编码器与电位器的主要区别在于:电位器的原理是通过旋转改变阻值输出,因为电位器内部有电阻片,电阻片有角度限制,所以旋转角度不足360度;而旋转编码器的原理是通过旋转改变脉冲输出,因为编码器内部是触点,通过接通与断开改变脉冲,所以可以360度无限旋转。
在购买时我们通常会看到标注有EC11或EC12,EC12与EC11并没有太大区别,只是在尺寸上略有区别,如EC11的方形底座边长是11.7mm; EC12的方形底座边长是12.5mm;EC16的方形底座边长是16mm。
旋转编码器也分为增量式与绝对式,增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。绝对式编码器的每一个位置对应一个确定的数字码,因此它的示值只与测量的起始和终止位置有关,而与测量的中间过程无关。
我们接下来讨论的主要的EC11旋转编码器(增量式)。
如果只是要采集脉冲的个数或者检测旋转的正反向,可以不用捕获波形,计上升沿或下降沿的个数即可。
EC11旋转编码器&脉冲个数计数及转向检测编程_第1张图片
可通过示波器查看旋转时两只脚输出的脉冲的波形,可观察到当旋钮向一个方向旋转时,一个脚产生下降沿,另一个脚处于高电平;一个脚产生下降沿,另一个脚处于低电平(或一个脚产生上升沿,另一个脚处于高电平;一个脚产生上升沿,另一个脚处于低电平)
该程序的大概思路是:设置定时器二的两个通道进行脉冲的捕获;设置定时器五进行定时采集;通过串口一将采集到的脉冲个数与转向传到电脑(可通过串口助手进行查看)。
程序如下:
   https://download.csdn.net/download/Jessaly/12129557

如有问题或文章有任何纰漏,欢迎留言交流!

你可能感兴趣的:(EC11旋转编码器&脉冲个数计数及转向检测编程)