1本文目的

最近在参与BLDC电机控制的项目,在网上也查看了无刷电机相关控制原理和方式。
但最终此项目使用的是六步式控制方式控制轮毂电机,所以此篇简述六步式的控制方法,以备之后查阅。(六步式的控制方式相较于FOC和SVPMW是比较简单的,这两个内容在CSDN上有非常经典的文章)

轮毂电机线束

轮毂电机有U、V、W三个控制线和A、B、C三根霍尔位置信号线,2根霍尔传感器电源线,(可能还有其它线束,因未使用,不描述)
至于控制线的定义被叫做UVW还是ABC,这个与无刷电机的控制原理有关,此篇中不再描述。

2控制器的主要电路


3控制方法说明

对应控制框图中的MOS的序号,表3和表4中相电流的控制就是六步式要描述的内容。
表3表4中的霍尔传感器输入ABC的值,不同的电机会有不同的值,这个值的对应关系是需要标定的。
序号1-6对应的相电流,比如A关闭,B是DC-,C是DC+, 描述的是电机C端为高电势、B端为低电势,A端断开。电流方向如下图所示

其实序号1-6对应的步骤,也就是对MOS的通断控制,哪一个步骤作为第一步都是可以的,然后按着顺序完整这六步就可以。

4实际项目调试

1说明

项目为自研项目、轮毂电机控制器也是临时找了个控制器。当前阶段只实现前进、后退、停止、变速控制即可。
6路PWM控制依据六步的顺序分别控制Q0-Q5的通断,使用高边MOS常开, 控制低边MOS的PWM占空比的方式实现电机转速的调整。这里提到的控制都是开环控制。
通过IO中断或IOC中断捕获ABC的上升沿和下降沿事件,并且读取ABC的电平状态,与控制步骤结合形成新的控制表,如表3表4所描述。

#2调试方式
(1)调试MCU程序、具备6路PWM控制、霍尔位置信号的捕捉;示波器监控ABC三路波形变化
(2)先按固定顺序、固定时间,分别按控制步骤1、2、3…6的顺序控制电机;
例如每个1s,控制步骤加1,观察ABC位置信号波形变。
找到控制步骤与ABC位置信号的值的关系。形成新的表。 如下表,就是新标定出来的表

(3)程序控制
通过IO的上升沿或者下降沿采集位置信号ABC的变化,所以在变换步骤前,需要轮毂电机有个初始的位移,可以通过读取当前ABC的值,确定驱动的初始步骤是哪个。然后在ABC位置信号的IO上升沿下降沿中断中按表顺序执行控制步骤。
控制步骤= ABC对应的步骤+1;
#2实际程序节选


以下代码段实现了根据ABC的电平状态,得到控制步骤的功能。

const unsigned char HOLL_TABLE_P[holl_table_num] = {0x55, 2, 3, 1, 5, 4, 6};    //0x55用于站位,为无效值
const unsigned char HOLL_TABLE_N[holl_table_num] = {0x55, 5, 1, 3, 2, 6, 4};   //0x55用于站位,为无效值`unsigned char PositionDetectABC(TYPE_POSITION_ABC holl)
{unsigned char holl_table_index = 0;           //holl值在holl表中对应的序号unsigned char step_run = 0;unsigned char i=0;if(holl.ha == 1)                                /*A位置信号高电平*/{holl_val |= 0x04;}else                                            /*A位置信号低电平*/{holl_val &= 0xFB;}if(holl.hb == 1){holl_val |= 0x02;}else{holl_val &= 0xFD;}if(holl.hc == 1){holl_val |= 0x01;}else{holl_val &= 0xFE;}holl_val &= 0x07;if(holl.dir == M_ABC_P){for(i=0; i<holl_table_num; i++){if(HOLL_TABLE_P[i] == holl_val){holl_table_index = i;}}step_run = holl_table_index + 1;if(step_run == 7){step_run = 1;}if(holl_table_index == 0){step_run = 0;}}else if(holl.dir == M_ABC_N){for(i=0; i<holl_table_num; i++){if(HOLL_TABLE_N[i] == holl_val){holl_table_index = i;}}step_run = holl_table_index + 1;if(step_run == 7){step_run = 1;}if(holl_table_index == 0){step_run = 0;}    }else{step_run = 0;}return(step_run);
}

BLDC (无刷直流电机) 六步式控制方法相关推荐

  1. BLDC无刷直流电机和PMSM永磁同步电机 基于stm32F1的有传感器和无传感驱动 直流无刷电机有传感器和无传感驱动程序

    BLDC无刷直流电机和PMSM永磁同步电机 基于stm32F1的有传感器和无传感驱动 直流无刷电机有传感器和无传感驱动程序, 无传感的实现是基于反电动势过零点实现的,有传感是霍尔实现. 永磁同步电机有 ...

  2. STC单片机驱动BLDC无刷直流电机(无HALL)官方示例

    STC单片机驱动BLDC无刷直流电机(无HALL)官方示例 示例代码在STC8系列文档第20章里面:http://www.stcmcudata.com/STC8F-DATASHEET/STC8H.pd ...

  3. BLDC无刷直流电机和PMSM永磁同步电机

    BLDC无刷直流电机和PMSM永磁同步电机 基于stm32F1的有传感器和无传感驱动 直流无刷电机有传感器和无传感驱动程序, 无传感的实现是基于反电动势过零点实现的,有传感是霍尔实现. 永磁同步电机有 ...

  4. ,bldc 无刷直流电机和pmsm永磁同步电机 主控TMS28335

    28335主控,bldc 无刷直流电机和pmsm永磁同步电机 主控TMS28335,,有原理图,以下代码 三相异步电机 VF变频调速程序 三相永磁同步电机 无感 双闭环FOC程序 三相永磁同步电机 有 ...

  5. BLDC无刷直流电机仿真设计simulink 转速电流双闭环 调速系统 matlab simulink仿真

    BLDC无刷直流电机仿真设计simulink 转速电流双闭环 调速系统 matlab simulink仿真 有整理好的文档,资料很详细,可以直接用,有参考资料, ID:3230671328383169 ...

  6. BLDC无刷直流电机转速控制Simulink模型(分别采用数学方法和SimScape库搭建,后者仿真效果更好)

    BLDC无刷直流电机转速控制Simulink模型(分别采用数学方法和SimScape库搭建,后者仿真效果更好) 版本:marlab2018a,可生成低版本 算法采用PI控制 仿真时设期望转速为800r ...

  7. 微软纯净系统刷机六步走

    第一步打开百度搜索 微软镜像官网 第二步点击进入 点击立即下载工具 第三步打开下载的工具 一直点点点 到这个页面 第四步选择你要安装的系统(不懂默认就行) 第五步选择U盘 第六步 等待下载成功 一个介 ...

  8. BLDC(无刷直流电机)应用相关

    1.基于XC866的直流无刷电机简易正弦波控制 http://blog.gkong.com/hushunlin_219521.ashx 2.无刷直流电机的PWM调制方式介绍 http://blog.g ...

  9. BLDC无刷直流电机之电机驱动的组成

    1.组成 框图如下 五大组成分析: 1.MCU:主要是信号的处理,反馈信号故障信号的处理,同时会给出6路PWM波,给到门极驱动 2.门极驱动:带动功率器件,带动电机的旋转,电机也会给出转子的位置信号或 ...

  10. BLDC无刷直流电机之结构与优势

    1.无刷与有刷的结构比较 无刷:线圈绕在定子上,使用永磁体作为转子,转子和定子之间没有换向器. 有刷:有换向器. 2.优势比较(BLDC vs BDC) 1.同等质量下,BLDC电机会有更大转矩 2. ...

最新文章

  1. 斯坦福大学、DARPA与硅谷公司共同分析前沿科技发展趋势
  2. sql join 与where的区别
  3. Mysql练习_mysql练习题
  4. WebRTC 的 log 系统实现分析
  5. [蓝桥杯][基础练习VIP]报时助手
  6. JavaOne 2012:调查JVM水晶球
  7. 抓球球的机器人应该怎么玩_王者荣耀:在游戏中当自己优势队友劣势的时候应该怎么玩?...
  8. SpringCloud大致架构
  9. Hadoop HDFS概念学习系列之两个和HDFS读写操作最为密切的Hadoop包(二十)
  10. BZOJ 1779. [Usaco2010 Hol]Cowwar 奶牛战争
  11. pop3通过时间或者条件取邮件_Python 进阶(三):邮件的发送与收取
  12. java 内部类_Java内部类总结有哪些 没有基础该怎么学Java?
  13. tensorflow入门书籍推荐_架构书籍推荐(入门读)
  14. 我的项目经验v3.0
  15. NISP和CISP考试通过率怎样?
  16. ubantu 安装火狐浏览器插件
  17. nginx的介绍和安装
  18. 财务软件虚拟服务器,新中大财务软件远程虚拟化办公方案
  19. android全面屏像素密度,屏幕像素密度超400ppi,让你感受视觉的极限
  20. Python实现汉字人名按拼音或笔画顺序排序

热门文章

  1. 巴蜀1471 魔兽争霸
  2. 2014.10.6模拟赛【魔兽争霸】
  3. OLS最小二乘法和2SLS两阶段…
  4. 如何用ps制作GIF动图
  5. 2021年中国柠檬酸供需现状与行业前景分析,受出口景气度上升价格持续上涨「图」
  6. 爬取noi官网所有题目分析
  7. iphone震动反馈怎么设置,怎么设置开启苹果手机ios12打字时的震动反馈
  8. 每月一书(202101):《财富自由之路》-李笑来
  9. HTML获奖作品,2015年配色优秀的20个网页设计作品 含配色方案
  10. android面试基础总结