有感方波驱动电机CW32L011电机驱动器开发板

电子说

1.4w人已加入

描述

位置检测

  • BLDC电机内部安装3个霍尔传感器,分别对应三相绕组(A、B、C相)。
  • 霍尔传感器利用霍尔效应检测转子永磁体的磁场变化,当转子旋转时,传感器输出高低电平信号(0或1),形成一个6步周期的编码序列(例如:101、100、110、010、011、001)。这些信号表示转子当前的位置和磁极方向。

BLDC电机BLDC电机编辑

换向控制

  • 控制器(如MCU或专用芯片)接收霍尔信号,根据预设的换向表决定哪两相绕组通电(三相BLDC通常每次只通两相,第三相悬空)。
  • 这会产生一个领先转子磁场90°的定子磁场,通过磁极吸引和排斥原理驱动转子连续旋转。

BLDC电机BLDC电机编辑

有感BLDC驱动的方法

硬件实现

  • 驱动电路:采用三相全桥逆变器,由6个功率开关管(MOSFET或IGBT)组成,上桥臂和下桥臂各3个。每个相绕组连接在桥臂中点。
  • 传感器安装:3个霍尔传感器均匀分布在定子上,间隔120°电角度(针对三相电机)。
  • 控制器:使用微控制器(如STM32、PIC)或专用IC(如DRV8301)。控制器采集霍尔信号、电流反馈,并输出PWM信号控制开关管。

软件/控制方法

  • 换向逻辑:基于霍尔信号的真值表进行换向。典型六步序列:

    步骤霍尔信号 (HA HB HC)通电相电流方向
    1101A+ B-A → B
    2100A+ C-A → C
    3110B+ C-B → C
    4010B+ A-B → A
    5011C+ A-C → A
    6001C+ B-C → B

    每步对应60°电角度,转子旋转一圈(360°)完成6次换向。控制器通过中断或定时器响应霍尔信号变化,实现实时换向。

  • 速度控制:使用PID算法实现闭环控制。

    • 计算转速:通过霍尔信号周期测量转速(RPM = 60 / (极对数 × 信号周期))。
    • PWM调速:调整占空比控制电压大小,从而调节转速。目标转速与实际转速差值输入PID,输出PWM duty cycle。
  • 电流控制:监测相电流(通过电流传感器),防止过流。使用电流环PID保持电流稳定,提高效率。

  • 启动与保护:启动时,先对齐转子位置(通电一相吸引转子),然后按序列驱动。添加过压、过流、堵转保护。

驱动总结

  1. 配置3个GPIO用于读取霍尔状态
  2. 配置一个高级定时器,并配置3个通道输出PWM波形,控制三相全桥逆变器上桥臂,再配置3个GPIO用于控制下桥臂。
  3. 在中断里读取霍尔状态,调用不同的驱动函数。

CW32L011电机驱动器开发板

电机驱动我用到了CW32L011的电机驱动器开发板。

这个项目在嘉立创上已经开源CW32L011_电机驱动器开发板

官方做的开发板用到了黑色沉金工艺,可以控制12~72V的电机,功率最高 800W。

BLDC电机BLDC电机编辑

可以看到外面用了金属外壳

BLDC电机BLDC电机编辑

BLDC电机BLDC电机编辑

布局也很漂亮

BLDC电机BLDC电机编辑

也做了一定的散热

实操

我找了一个8块钱的小电机,用12V驱动

BLDC电机BLDC电机编辑

在使用官方例程的时候,在KEIL里读到了霍尔的位置,但苦恼就是不转动

BLDC电机BLDC电机编辑

后来发现SetSpeed是读取了一个GPIO的电压值

BLDC电机BLDC电机编辑

BLDC电机BLDC电机编辑

最后用stlink给VE接上了3.3V,电机成功转动。

BLDC电机
CW32L011_电机驱动器开发板驱动电机

BLDC电机

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分