## 带AB相编码器直流减速电机测转动速度及角度深度解析
带AB相编码器直流减速电机测转动速度及角度深度解析
下图为编码器输出的AB相波形,一般情况下,我们只测A相(或B相)的上升沿或下降沿,但四倍频的方法是测A相和B相的上升沿和下降沿,在同样的时间内,计数脉冲是以前的4倍。然后stm32单片机可以通过定时器中断来采集脉冲数,并进一步通过采集到的脉冲数计算出电机的转速和电机转动的角度,达到精准控制电机的目的。
下面我以 减速比为1:120,编码器类型为带AB相编码器,编码器线数为13线(电机转一圈) 的直流减速电机演示一下单片机捕获的脉冲数到速度和角度的转化过程。
减速比:直流电机减速比就是齿轮箱的输入转速(直流电机的直接转速)与齿轮箱的输出转速之比。
编码器线数:线数就是编码器的分辨率,即转一圈所发出的脉冲数。
以1:120输出轴:120*13=1560线
速度的转化:
Encoder:定时器100ms(0.1s)内捕获的脉冲数。由于AB相4倍频,则100ms内真正的脉冲数:Encoder/4。
100ms内转的圈数:(Encoder/4)/1560。
车轮的转速:((Encoder/4)/1560)/0.1 (单位r/s)
转化为r/min: 600* Encoder/6240
转化为m/s:由于1 r/min=(2π/60) rad/s=( 2πR/60) m/s,转动半径为1.95,即速度为: 600* Encoder/6240* 0.065* 3.1415
(电机的转速=车轮的转速*120)
角度的转化:
sum_Encoder:定时器捕获的总脉冲数。由于AB相4倍频,则真正的脉冲数:sum_Encoder/4。
车轮总共转了多少圈:(sum_Encoder/4)/1560
车轮总共转了多少度:
(sum_Encoder/4)/1560* 360=sum_Encoder* 360/6240 (单位度)
(电机转的角度=120*车轮转的角度)