0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >工业控制 > 基于Cortex-M0的BLDC电机驱动电路设计方案(含原理图+源代码+数据资料)

基于Cortex-M0的BLDC电机驱动电路设计方案(含原理图+源代码+数据资料)

来源: 电路城
2020-05-22
类别:工业控制
eye 88
文章创建人 拍明

原标题:基于Cortex-M0的BLDC电机驱动电路设计方案(含原理图+源代码+数据资料)

cirmall

cirmall

cirmall

cirmall

手头有块ARM Cortex-M0的新唐学习板,一直想学习一把,买了几个模型用的无刷电机,利用几个周末弄出来这么一个东东。

整个驱动思路,PMOS+NMOS管,PMOS管用GPIO来控制开关,NMOS用PWM来控制。
Cortex-M0跑在48M,PWM频率40K,ADC估计是有bug,只能设置在6M才不会出错。采样时间约3~5us。
ADC在PWM ON期间,对悬空相进行采样,然后和母线电压的一般进行比较,以判断过零进行换相。

启动方式:预定位,强制拖动加速,在加速期间检测悬空相的过零事件,来做同步。
目前可以做到4~15V内正常启动,但是偶尔也会有启动失败的情况,比例很小。
由于主要目的是学习Cortex-M0架构和BLDC电机驱动方式,电流检测电路没加,PID速度控制没加进去,启动阶段做的不是很完善,逻辑控制上没有做启动失败再次重启等操作,和商业电调还有很大差距。
有兴趣的朋友可以拿以下程序包作为参考。
一点感受:
用ADC做过零检测比较痛苦,要考虑噪声精度等情况,由于ADC转换需要3~5us时间,导致PWM最低占空比只能到20%。如果芯片内部有向M8这样的比较器,还是用比较器比较省事。
启动是个比较麻烦的问题,试了很多办法,参考了很多资料,才算基本搞定。
我有个9绕组3对磁极的电机,在15V电压下,全速40000~50000 RPM,比较过瘾。
图中带浆的那个电机是12绕组7对磁极的,比较适合直接带浆。



责任编辑:

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

标签: 电机驱动

相关资讯

方案推荐
基于MC33771主控芯片的新能源锂电池管理系统解决方案

基于MC33771主控芯片的新能源锂电池管理系统解决方案

AMIC110 32位Sitara ARM MCU开发方案

AMIC110 32位Sitara ARM MCU开发方案

基于AMIC110多协议可编程工业通信处理器的32位Sitara ARM MCU开发方案

基于AMIC110多协议可编程工业通信处理器的32位Sitara ARM MCU开发方案

基于展讯SC9820超低成本LTE芯片平台的儿童智能手表解决方案

基于展讯SC9820超低成本LTE芯片平台的儿童智能手表解决方案

基于TI公司的AM437x双照相机参考设计

基于TI公司的AM437x双照相机参考设计

基于MTK6580芯片的W2智能手表解决方案

基于MTK6580芯片的W2智能手表解决方案