打印
[STM32F1]

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

[复制链接]
2689|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 | 只看该作者
使用的不同的通道吗

使用特权

评论回复
5
renzheshengui| | 2021-9-10 07:28 | 只看该作者
这倒是为什么呢

使用特权

评论回复
6
wakayi| | 2021-9-10 07:29 | 只看该作者
这两种配置差在哪里呢

使用特权

评论回复
7
wowu| | 2021-9-10 07:33 | 只看该作者
为什么需要这么多的信号啊

使用特权

评论回复
8
xiaoqizi| | 2021-9-10 07:35 | 只看该作者
就是触发的通道顺序不同是吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

49

主题

220

帖子

3

粉丝