霍尔增量式编码器左右车轮线速度的计算

对于霍尔式编码器的左右轮线速度计算:

首先线速度=距离s / 时间 t

要获得距离S ,也就是轮子在一段时间内跑过的距离。要先知道一下两个参数:
1.轮子的半径 r
2.轮子转动一圈的脉冲数 cnt

轮子转动一圈的脉冲数:如电机我们选用减速比为1:90的TT直流减速电机,编码器为每圈12个正交脉冲。即单相测速时,车轮转动一圈可以获取1080个脉冲,如果采用AB相四倍频计数,即可获取4320个脉冲。

比如减速比1:90TT直流减速电机 ,车轮转动1圈则电机转动90圈 ,霍尔编码器的极对数为8对 也就是8个N极 8个S极 则轮子转动一圈的脉冲数产生的脉冲数A相=B相= cnt =90*8=720

通过这两个参数可以得到轮子转动一个脉冲走过的距离 m

假设有一个轮子:
一圈的脉冲数为:3000
轮子的半径为: 0.03m

可以得到m = (2 * pi * r ) / cnt = (2* pi*0.03) / 3000 =0.000062831/脉冲

现在开启一个定时器 假设为5ms触发一次中断 获取脉冲个数 mount 比如 mount =500
则 轮子在5ms 内走过的距离 s =mount * m =500*0.000062831 =0.0314 m
走过的时间为 T(out) =5ms=0.005s

就可以获得线速度 v=s / t =(mount * m)/ T(out) =((2*pi * r ) / cnt) *m / T(out) 单位m/s

将单位换算为mm/s 得到 v = ((2 * pi * r ) / cnt)*m /T(out) *1000

编码器4倍频:
TTL方波信号,A,B两相相差90度相(1/4T),这样,在0度相位角,90度,180度,270度相位角,这四个位置有上升沿和下降沿,这样,实际上在1/4T方波周期就可以有方向变化的判断,这样1/4的T周期就是最小测量步距,通过电路对于这些上升沿与下降沿的判断,可以4倍于PPR读取位移的变化,这就是方波的四倍频。

  • 23
    点赞
  • 128
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: 要将STM32芯片与增量编码器连接起来,需要使用外部电路来实现。因为增量编码器一般需要一些特殊的信号处理,才能获取到精确的编码器脉冲信息。以下是一些基本的步骤: 1.首先,将电机的驱动器连接到STM32芯片。这通常需要使用PWM信号来控制电机的速度和方向。可以使用串口或其他通信方,通过STM32芯片与电机驱动板进行通信。 2.将增量编码器连接到STM32芯片。增量编码器有两个信号线,一个用于A相,一个用于B相。A相和B相的脉冲信号有90度的相位差,因此可以通过测量两个脉冲信号的相位差来计算电机的转速。 3.将STM32芯片的GPIO引脚连接到增量编码器的A相和B相信号线上。需要注意的是,编码器的信号线需要经过一些滤波和缓冲处理,以确保信号的稳定性和可靠性。 4.使用STM32芯片的计数器模块来计算脉冲信号的数量和相位差。可以使用中断或DMA等方来实现计数器的计算功能。 5.根据脉冲信号的数量和相位差,可以计算出电机的转速。这可以使用STM32芯片的定时器和数学运算库来实现。 总之,连接STM32芯片和增量编码器需要一些基础的电路知识和编程技巧。需要仔细阅读STM32芯片和增量编码器的数据手册,并按照手册提供的引脚和信号连接方进行连接。同时需要编写相应的软件程序,以实现编码器信号的捕获和转速计算功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值