[STM32F1] BLDC方波驱动,正反转速度相差一倍,求助

[复制链接]
2956|7
 楼主| ljxh401 发表于 2021-8-16 00:05 | 显示全部楼层 |阅读模式
我使用 STM32F103 驱动一个无刷电机,
首先通过短时间的定向电流确认UVW 和霍尔的关系
Tim8Drv0:U+V-    霍尔:6
Tim8Drv1:U+W-   霍尔:4
Tim8Drv2:V+W-   霍尔:5
Tim8Drv3:V+U-    霍尔:1
Tim8Drv4:W+U-   霍尔:3
Tim8Drv5:W+V-   霍尔:2


做出一个顺时针驱动表,得到每个霍尔信号往前两步获得驱动信号:
const pMDrvFun DrvATab[]={
        NULL,
        Tim8Drv5,                //霍尔信号1
        Tim8Drv1,                //霍尔信号2
        Tim8Drv0,                //霍尔信号3
        Tim8Drv3,                //霍尔信号4
        Tim8Drv4,                //霍尔信号5        
        Tim8Drv2,                //霍尔信号6
        NULL,
};


驱动代码如下
[url=]复制[/url]

void MotorRun(INT16U pwm)
{
        static INT8U hallbak;
        INT8U hallcur;
        hallcur=(GPIOB->IDR)&0x07;
        if(hallcur!=hallbak && hallcur!=0 && hallcur!=7)
        {
             hallbak=hallcur;
             DrvATab[hallcur](pwm);
        }
}



这个速度 能达到 880rpm

我根据这个表 做电机反转,pwm的载波都是一致的
const pMDrvFun DrvBTab[]={
        NULL,
        Tim8Drv1,                //霍尔信号1
        Tim8Drv3,                //霍尔信号2
        Tim8Drv2,                //霍尔信号3
        Tim8Drv5,                //霍尔信号4
        Tim8Drv0,                //霍尔信号5        
        Tim8Drv4,                //霍尔信号6
        NULL,        
};




得到的转速是 440rpm

修改反转表
const pMDrvFun DrvCTab[]={
        NULL,
        Tim8Drv2,                //霍尔信号1
        Tim8Drv4,                //霍尔信号2
        Tim8Drv3,                //霍尔信号3
        Tim8Drv0,                //霍尔信号4
        Tim8Drv1,                //霍尔信号5        
        Tim8Drv5,                //霍尔信号6
        NULL,        
};


得到的转速也是 440rpm 附近,而且C表噪声比B表大


RunningX 发表于 2021-8-17 19:52 | 显示全部楼层
噪音大,说明运行不够流畅,进一步说明换向时机不对
 楼主| ljxh401 发表于 2021-8-17 21:16 | 显示全部楼层
本帖最后由 ljxh401 于 2021-8-17 21:27 编辑

最后将表改为
修改反转表
const pMDrvFun DrvCTab[]={
        NULL,
        Tim8Drv0,                //霍尔信号1
        Tim8Drv2,                //霍尔信号2
        Tim8Drv1,                //霍尔信号3
        Tim8Drv4,                //霍尔信号4
        Tim8Drv5,                //霍尔信号5       
        Tim8Drv3,                //霍尔信号6

};

速度就上来了
paotangsan 发表于 2021-9-10 07:24 | 显示全部楼层
使用的不同的通道吗
renzheshengui 发表于 2021-9-10 07:28 | 显示全部楼层
这倒是为什么呢
wakayi 发表于 2021-9-10 07:29 | 显示全部楼层
这两种配置差在哪里呢
wowu 发表于 2021-9-10 07:33 | 显示全部楼层
为什么需要这么多的信号啊
xiaoqizi 发表于 2021-9-10 07:35 | 显示全部楼层
就是触发的通道顺序不同是吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

235

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部