智能车制作

标题: 求救!求救!!!!! [打印本页]

作者: 爱表演的小青年    时间: 2014-12-21 04:32
标题: 求救!求救!!!!!
用串口发图像看编码器的脉冲,发现左右编码器的脉冲不相等(只调速度控制)。求大神解答这是怎么回事?急求!

作者: 爱表演的小青年    时间: 2014-12-21 04:33
如图所示
作者: 我是小狮子    时间: 2014-12-21 09:35
:D:D
作者: 张福利    时间: 2014-12-21 14:44
首先要确定是硬件问题还是软件问题,把电机对换一下再测测,就可以确定是硬件还是软件了,硬件的话有可能是编码器装的松紧度不一样,也有可能是其他问题

作者: 爱表演的小青年    时间: 2014-12-21 16:06
张福利 发表于 2014-12-21 14:44
首先要确定是硬件问题还是软件问题,把电机对换一下再测测,就可以确定是硬件还是软件了,硬件的话有可能是 ...

感觉是程序的问题,别人试车没问题,我的就不行。

作者: youplayboy001    时间: 2014-12-21 16:19
谁有野火k60正交解码底裤啊   发一下呗

作者: cjgyq    时间: 2014-12-21 19:50
/************************************************************************/
/*                            正交解码                                  */
//它是两路脉冲的所有边沿都检测的,所得计数器的值要除以4才能得到实际脉冲数
//在周期性定时中断服务程序中,读取FTMx_CNT的值即可得到当前的转速,记得清零FTMx_CNT
//使用int变量保存,如为正数则为正转,负数则为反转。
/************************************************************************/
void FTM_QUAD_INIT(void)
{
    /*开启端口时钟*/
    SIM_SCGC5 |=SIM_SCGC5_PORTA_MASK;
   
    /*选择管脚复用功能*/
    PORTA_PCR8=PORT_PCR_MUX(6);//设置引脚PA8为FTM1_PHA功能
    PORTA_PCR9=PORT_PCR_MUX(6);//设置引脚PA9为FTM1_PHB功能
    PORTA_PCR10=PORT_PCR_MUX(6);//设置引脚PA10为FTM2_PHA功能
    PORTA_PCR11=PORT_PCR_MUX(6);//设置引脚PA11为FTM2_PHB功能
   
    /*使能FTM1、FTM2时钟*/
    SIM_SCGC6 |=SIM_SCGC6_FTM1_MASK;//FTM1的使能时钟
    SIM_SCGC3 |=SIM_SCGC3_FTM2_MASK;//FTM2的使能时钟
   
    FTM1_MODE |=FTM_MODE_WPDIS_MASK;//禁止写保护
    FTM2_MODE |=FTM_MODE_WPDIS_MASK;//禁止写保护
   
    FTM1_CNTIN=0;//FTM1的初始值为0
    FTM2_CNTIN=0;//FTM2的初始值为0
   
    FTM1_MOD=65535;//结束值
    FTM2_MOD=65535;//结束值  自己设定
   
    FTM1_MODE |=FTM_MODE_FTMEN_MASK;//FTMEN=1,关闭TPM兼容模式,开启FTM所有功能
    FTM2_MODE |=FTM_MODE_FTMEN_MASK;//FTMEN=1,关闭TPM兼容模式,开启FTM所有功能
   
    FTM1_QDCTRL &=~FTM_QDCTRL_QUADMODE_MASK;//选定编码模式为A相与B相模式
    FTM1_QDCTRL |=FTM_QDCTRL_QUADEN_MASK;//使能正交解码模式
    FTM2_QDCTRL &=~FTM_QDCTRL_QUADMODE_MASK;//选定编码模式为A相与B相模式
    FTM2_QDCTRL |=FTM_QDCTRL_QUADEN_MASK;//使能正交解码模式
   
    FTM1_CNT = 0;
    FTM2_CNT = 0;
   
    FTM1_SC |=FTM_SC_CLKS(3);//选择外部时钟
//  FTM1_CONF |=FTM_CONF_BDMMODE(3);//可根据需要选择
    FTM2_SC |=FTM_SC_CLKS(3);
//  FTM2_CONF |=FTM_CONF_BDMMODE(3);
   
    //输入滤波可选
    //写入该寄存器的值将立刻起作用
    //而且通道0、1、2、3必须在输入模式下,如设置不当可能造成错过正确的信号。
    /*   
    FTM1_QDCTRL_PHAFLTREN=1;
    FTM1_QDCTRL_PHBFLTREN=1;
    FTM2_QDCTRL_PHAFLTREN=1;
    FTM2_QDCTRL_PHBFLTREN=1;
    */


作者: cjgyq    时间: 2014-12-21 19:58
能问一句你的波形的软件是什么啊能发个下载的连接

作者: 静默深眠的夏    时间: 2014-12-27 12:43
因为固定的PWM输出,,但是电机性能不一样和驱动板的性能不一样,导致电机转速不一样,所以编码器的值不一样

作者: liheng229    时间: 2014-12-28 21:08
能告诉一下你的串口助手哪里下载的吗
作者: 自动化1202    时间: 2014-12-28 21:10
:hug::hug:




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