基于STM32的无刷有感电机的控制系统设计

(整期优先)网络出版时间:2018-08-18
/ 2

基于STM32的无刷有感电机的控制系统设计

田星姚大鹏

田星姚大鹏

广州市海同机电设备有限公司广东广州510407

摘要无刷直流电机具有体积小、输出扭力大、转矩性能优异、调速范围、过载能力强和运行效率高的优点,同时它还保留了直流电机优良的调速性能,结构简单,运行可靠。本文设计了一种基于STM32单片机的无刷直流电机有传感控制系统,通过霍尔(HALL)传感器位置探测法确定转子位置信号,保证电机的有效运行;同时速度环使用PID算法控制,使电机输出速度稳定且正反转实现流畅的切换。

关键词:STM32;无刷直流电机;霍尔传感器

0引言

无刷直流电机因其兼具控制简单、体积小、可靠性高、速度快、效率高、无电刷、维修方便等优点,已经广泛应用于家用电器、航空电子、消费电子、医学电子、工业自动化等领域上[1-2]。本文以STM32F4系列单片机作为主控制控制芯片,主控芯片基于Cortex-M4内核,主时钟频率为168MHz,拥有丰富的外设资源,拥有两个专用于电机控制的高级定时器1和8,有强大的边沿捕获能力和多通道PWM互补输出功能,大大简化了设计步骤,系统总体功耗降低。无刷直流电机根据是否有位置传感器分为有感和无感,有感电机相比与无感电机可控性更高,有利于低速控制。探测转子位置常见的几种方法有电磁式传感器、光电式传感器、磁敏式传感器等,它们各有优点而霍尔传感器凭借小巧的体积、简易的结构、灵活的安装以及易于机电一体化的特点而得到广泛使用,是无刷直流电机控制系统中最为常见的转子位置检测装置[1]。

1总体设计

驱动器选用STM32为主控制芯片,使用三相半桥驱动电路驱动无刷直流电机,使用STM32的定时器接口的比较功能实现霍尔传感器位置探测。软件在Kile5编译环境下编写C语言代码,方波控制换相实现两两导通换相方式,实时监测霍尔传感器确定转子位置。

2硬件设计

2.1电源电路设计

24V电源接入驱动板以后,通过滤波电容及防反接电路等得到可靠的24V电源,再用降压芯片得到3.3V和15V。驱动电路选用了驱动芯片IR2103S与三相全桥逆变控制电路的组合。IR2103S是具有

2.2驱动电路设计

*通信作者简介:杨靓(1981),男,硕士学位,研究方向:智能控制领域。E-mail:leonyounggod@msn.com

高电压、高速功率MOSFET和IGBT驱动特性的芯片,拥有独立的高端和低端输出通道。

2.3霍尔检测电路设计

霍尔信号检测电路是由三个OH41霍尔传感器构成,其输出信号分别连接到STM32主芯片的TIM2的CH1、CH2和CH3。STM32芯片的定时器有ST公司专门设计的HALL连接口,既是定时器的通道1、通道2和通道3。三个霍尔传感器按120度电角度放置,任何一个霍尔的边沿跳变即为换相点。

3软件设计

软件设计采用的STM32固件库,相比直接控制寄存器,可以大大降低了编写程序的时间和难度,驱动器的功能实现是通过设定速度可以调节电机正反转速。主要包含了高级定时器的3个通道互补输出应用、普通定时器的霍尔接口应用等,相关程序流程图如图1所示。

图1软件流程图

3.1运行部分

主控制芯片获取三个霍尔信号来确定转子位置。STM32根据三个霍尔信号的六种状态将电机的位置按六步法定义成两组序列,正向序列AB->AC->BC->BA->CA->CB和反向序列BC->AC->AB->CB->CA->BA。在STM32检测到霍尔传感器接口边沿跳变后按正反向序列换相即可分别完成电机的正反转控制。换相过程如图2所示。

图2霍尔序列图

3.2调速部分

驱动器使用STM32高级定时器的互补输出脉宽调制(PWM)功能进行控制,通过调节占空比控制电机的转速[2]。PWM控制会引入电压的波动以及电机应用于带负载情况下都会引起转速的改变,因此调速设计中引入了PID控制算法来调节转速波动,通过调节转速和电压实现闭环系统调节[3]。

4结论

本文采用以ARMCortex-M4为内核的STM32作为驱动系统的主控制器,完成了对无刷直流电机控制器的实现,通过霍尔传感器作为位置探测,实现了准确的位置探测在正反转切换有比较好的实验效果,使用KILE5编译器运用ST官方提供的固件库编写程序,效率高。

参考文献:

[1]赵伟.基于STM32的无刷直流电机控制系统设计[D].南京信息工程大学,2016.

[2]李曦,周冬梅.基于STM32的无刷直流电机驱动板设计[J].科技传播,2015,7(17):139-140.

[3]张慧颖,李化庆,陈伟.基于STM32无刷直流电机无传感控制系统设计[J].吉林化工学院学报,2016,33(07):44-49.

[4]回毅.基于STM32无位置传感器无刷直流电机控制器设计[D].华中科技大学,2011.

[5]张海亮.无刷直流电机控制器及控制算法研究[D].杭州电子科技大学,2012.

[6]王国宇.基于STM32的无刷直流电机控制系统设计及仿真研究[D].广西师范大学,2016.