智能车制作

标题: 同转速,编码器采集差别大问题 [打印本页]

作者: 偏执-f'b    时间: 2019-3-21 01:07
标题: 同转速,编码器采集差别大问题
本帖最后由 偏执-f'b 于 2019-3-21 01:11 编辑

问题:利用编码器采集计数,PORT配置的初始化为跳边沿沿触发,两电机的速度是一样的(电机都是以一个恒定的速度正转)(给的pwm是相同的):--看着电机转速也是一样的
采集出来的数据  Feed_flagL :Feed_flagR = 1 :2

PS:mini型编码器---512线的编码器-----(编码器线数已经测过,都是512线)
PS:编码器供电电压5V,正常。
ps:变量定义:  volatile   uint32 Feed_flagL = 0, uint32 Feed_flagR = 0;(据说中断中的变量尽量要用volatile   修饰)



void PORTE_IRQHandler()
{
    uint8  n = 0;              //引脚号
    n = 1;
    if(PORTE_ISFR & (1 << n))  //PTD12 触发中断
    {
        PORTE_ISFR  = (1 << n);//写1清中断标志位
        Feed_flagL++;          //编码器采集计数
    }
    n = 0;
    if(PORTE_ISFR & (1 << n))  //PTD14 触发中断
    {
        PORTE_ISFR  = (1 << n);//写1清中断标志位
        Feed_flagR++;          //编码器采集计数
    }
}

路过的大佬求指导一下,谢谢!

作者: 偏执-f'b    时间: 2019-3-21 01:10
自顶一下,有大佬看到了回复一下,谢谢啊
作者: 陈平安    时间: 2019-3-23 09:40
给相同的PWM不等于两电机的速度相同
作者: 偏执-f'b    时间: 2019-3-24 07:14
陈平安 发表于 2019-3-23 09:40
给相同的PWM不等于两电机的速度相同

为什么呢??肉眼看电机转速是相同的

作者: Filei    时间: 2019-3-27 16:13
陈平安 发表于 2019-3-23 09:40
给相同的PWM不等于两电机的速度相同

那要是加上相同占空比呢! 测出来转速为什么还是会有差距


作者: 陈平安    时间: 2019-3-27 16:53
偏执-f'b 发表于 2019-3-24 07:14
为什么呢??肉眼看电机转速是相同的

因为你不能保证左右机械完全相同啊.. 肯定是存在误差的

作者: 陈平安    时间: 2019-3-27 16:55
Filei 发表于 2019-3-27 16:13
那要是加上相同占空比呢! 测出来转速为什么还是会有差距

你把车在地上推一下 左右两个编码器采集到的值是一样的吗?

作者: 偏执-f'b    时间: 2019-3-29 01:01
陈平安 发表于 2019-3-27 16:55
你把车在地上推一下 左右两个编码器采集到的值是一样的吗?

明白了,推车1m,某技术报告上说:编码器的脉冲数大约7200,其中一个正常,一个有误,需要修正一下,谢谢大佬
作者: Filei    时间: 2019-4-2 21:03
陈平安 发表于 2019-3-27 16:55
你把车在地上推一下 左右两个编码器采集到的值是一样的吗?

找到问题了  电机有点问题  换了一个电机采集就好了 谢谢





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2