基于FPGA的无人机电调模块设计

2016-03-10 00:16哈尔滨理工大学姚博文王洪洋王建民
电子世界 2016年24期
关键词:反电动势框图直流电机

哈尔滨理工大学 姚博文 王洪洋 李 晓 王建民

基于FPGA的无人机电调模块设计

哈尔滨理工大学 姚博文 王洪洋 李 晓 王建民

为了实现对无刷直流电机(BLDC)的控制需求,提出了一种基于FPGA的无刷直流电机控制系统设计方案,并完成系统的硬件与控制算法设计。该系统的外围硬件电路部分主要用来驱动电机,FPGA部分采用VerilogHDL进行编程,能够完成电机控制信号输出和反馈信号检测,使用PID算法对电机速度进行调节控制。实际应用表明,该系统具有实时性高、控制输出准确稳定的特点,达到了设计要求。

无刷直流电机;FPGA;VerilogHDL;PID

无刷直流电机广泛应用于车辆、飞机以及工业生产设备的动力系统,动力系统是实现一切动态应用功能的基础,随着科技设备应用功能的丰富化,对运动控制提出了更高的要求,这也就需要有一款性能优越的电机控制器去满足该方面的要求。

本文基于FPGA控制芯片设计了一套无刷直流电机控制系统,与目前基于单片机或DSP的控制器相比,SOPC技术采用软硬件相结合的方式,将完整的电子系统设计于一块FPGA芯片中,电路规模、可靠性以及开发成本最优化,同时也提高了外部硬件设计的灵活性[1]。本文采用京微雅格公司的CME-M7芯片为控制核心,利用硬件描述语言在FPGA内部实现对电机的逻辑控制,外部电路设计只用做电机驱动和将模拟量转换为数字量。这有效的减少了外部分立器件的使用,提高了系统的整体灵活性和扩展性。所设计的电机控制系统具有体积小巧、控制速度快等可靠性高等特点,并同过实验测试,对其性能指标进行验证,达到了设计目标[2]。

1 无刷直流电机控制方案

BLDC电机是同步电机中的一种,即定子产生磁场与转子产生磁场频率相同。BLDC根据定子绕组数量可分为单相、两相和三相,本文以应用最为广泛的三相电机为例进行控制器设计。无刷直流电机控制器由外部电路和FPGA控制系统两部分组成。

外部驱动电路采用全N-MOSFET三相六臂全桥电路,利用MOS管的开关特性控制三相电机中的两相交替导通,达到换向的目的。同时设计有反电动势检测电路和霍尔传感器接口,可以用来检测电机转子位置,确定换向时间和电机转速。为达到提高FPGA驱动能力和保护主控芯片的目的,需要在控制芯片和三相电桥间通过一个三相电机驱动芯片(DRV8302)相连,该芯片同时具有过流、过压保护功能,既可以达到应用目的,又能够简化外围电路。

FPGA逻辑设计主要是可以产生六路PWM信号,同时根据换向控制信号,每次输出其中的两路互补PWM波,由于功率器件都存在一定的节电容,所以存在开关延迟问题,为了避免当一个管子还没有完全关闭而另一管子又导通的现象出现,需要在PWM信号互补输出时设计死区时间。为实现电机调速转动平滑,FPGA还需设计PID算法对速度进行闭环反馈控制,为采集反馈量,FPGA需要设计有通讯接口用来与外设通讯[3-6]。设计总体框图如图1所示。

图1 BLDC控制器设计框图

2 无刷直流电机控制器外部电路设计

外部硬件电路主要由N-MOSFET三相六臂全桥电路、三相电桥驱动电路、AD采样电路和反电动势检测电路组成。外部硬件电路框图如图2所示。

图2 外部硬件电路框图

三相六臂全桥电路由六个NMOS组成,每一个半桥由MOS_ H和MOS_L两个MOS管组成,MOS_H漏极接电压正极,源级接MOS_L的漏级,MOS_L的源级接电源负极,另外两个半桥连接方式相同。每个半桥连接三相电机中的一相,利用PWM波控制MOS管的通断,每次导通两个MOS管,即使三相电机绕组中的两相通电,如此交替往复,实现电机的换向。

由于FPGA等控制芯片自身驱动电桥的能力有限,所以需要引入驱动芯片,选用TI公司的DRV8302,该芯片内部设计有三相栅极驱动器、降压稳压器和双路分流放大器,自带过流、过压、过温和欠压保护功能。使用该芯片在满足了驱动功能的同时又起到保护电路的作用,还有效的简化了外部电路。

AD采样电路主要用来检测电桥三路电流,利用高精度电阻将电流转换为可测电压,再将电压经过ADC模块转化为数字量供FPGA检测。

反电动势检测电路用来检测电机反电动势以控制换向。BLDC开始转动后由于线圈绕组切割磁感线作用会产生反电动势,由于电机每次换向只有两相导通,这样就可以通过检测未导通相的反电动势以确定换向时间。此外,还可以采用霍尔传感器检测电机位置来控制换向。霍尔传感器是一种磁场传感器,当磁场经过霍尔传感器式会对其内部的电势产生影响,利用这一特点可以用多个霍尔传感器以一定角度摆放在电机磁体附近以检测电机转子位置来确定换向时间。

整体电路设计简洁,具有扩展性强、体积小、集成度高等特点。适用与多数三相电机,并可配合不同控制单元使用。

3 无刷直流电机控制器FPGA设计

FPGA选用京微雅格的CME-M7芯片,该芯片集成了主流的ARM Cortex-M3内核和高性能FPGA,其数据与程序空间均动态可调。通过将FPGA、CPU、SRAM、ASIC、Flash以及模拟单元等功能模块集成在单一芯片上,CME-M7不仅极大的降低了工程师的开发设计难度,有效减小了所需的板间面积还极大的降低了系统成本,具备超高系统性价比。

FPGA设计总体框图如图3所示。

图3 FPGA设计总体框图

FPGA作为主要控制单元,主要负责产生控制信号和处理反馈信息。

BLDC控制信号主要是PWM波,控制电机启动、停止、换向以及正转或反转。PWM(Pulse Width Modulation)通过控制占空比使MOS管以一定的频率通断。设计FPGA双向计数器,并设置标记比较位,当计数器开始工作向上计数时,内部比较器不断将当前计数值与标志位比较,如果计数值小于标志为则输出高电平,否则输出低电平,如果计数值等于预设最大计数值,则开始向下计数,如果计数到预设最小计数值则计数器又开始向上计数,循环往复。由此可以通过设置最大、最小计数值来确定PWM周期;通过设定计数比较标记位来设置占空比。控制一路BLDC一共需要六路PWM波,每次换向过程只允许其中两路PWM输出,而且要求两路PWM信号必须为互补形式输出,同时为了避免两个MOS管的同时导通,还需要设置死区时间,使一个MOS管尽可能完全关断后另一个MOS管才开始导通[7-11]。

由于实际电路中的电流、反电动势都是模拟量,所以需要外部AD将它们转换成数字量供FPGA使用。电流量主要用来检测电桥电流大小,对整个系统提供检测作用。反电动势用来控制换向时间和计算转动速度。速度量和电流量也是PID控制模块的两个最为主要的反馈量。PID控制采用双环反馈结构,系统控制原理框图。

图4 系统控制原理框图

图5 Modelsim仿真结果

电流环作用是及时限制大电流,保护电机。速度环的作用是抑制速度波动增强系统抗负载扰动能力[11-16]。

4 无刷直流电机控制系统测试

系统设计完成后首先对硬件电路和FPGA逻辑设计两部分分别进行测试与仿真。对于硬件电路主要对其进行通电后电压电流测试。检测稳压电路输出电压值、MOS管导通电流值等。对于FPGA逻辑部分主要对其进行Modelsim功能和时序仿真,查看输出波形与期望值是否一致(见图5)。

经过硬件测试和软件仿真系统各项指标满足设计要求。之后进行联合调试。连接实物进行电机调速测试,测试控制电机正反转。经过实物调试本次设计系统达到设计与其目标,实现BLDC电机控制功能,且电机转动平滑可靠。

5 结论

该BLDC电机控制系统采用高性能FPGA作为主控芯片,配合设计有通用电机驱动电路。该系统在很大程度上提高了控制性能,简化了电路体积,丰富了系统功能。通过实际应用测试表明该系统具有电机调试扰动小、可靠性高、使用方便等特点,达到了设计要求。

[1]杨运,廖勇,李凡.基于FPGA的无刷直流电机舵机控制器设计[J].微电机,2010,3:48-51.

[2]李福军.基于FPGA的无刷直流电机控制器研究[J].制造业自动化, 2014,9:111-117.

[3]程时兵,王炜.基于DSP的无刷直流电机位置伺服系统设计[J].电子设计工程,2016,(05):110-112.

[4]吕蓉,黎阳生.一种无刷直流电机电流采样及保护电路的设计[J].电子设计工程,2014,(17):79-81.

[5]Sathyan A,Milivojevic N,Lee Y J,et al.An FPGA-Based Novel Digital PWM Control Scheme for BLDC Motor Drives[J]. IEEE Transactions on Industrial Electronics, 2009, 56(8):3040-3049.

[6]Kim T H, Lee B K, Ehsani M. Sensorless control of the BLDC motors from near zero to high speed[C]// Applied Power Electronics Conference and Exposition, 2003. Apec ‘03. Eighteenth IEEE. 2003:306-312 vol.1.

[7]周荣栓,刘马利.基于FPGA的BLDC控制器的研究[J].科技致富向导, 2011(17).

[8]敬光红.基于FPGA的无刷直流电机数字控制方法研究[J].电子器件, 2016(1).

[9]黄晓冬. 基于FPGA的永磁电机控制系统的研究[D]. 浙江大学电气工程学院 浙江大学, 2010.

[10]王杰,朱红,齐蓉.一种应用于无刷直流电机数字控制的系统设计[J]. 电气传动自动化, 2005, 27(6):31-33.

[11]赵岷. 基于FPGA的控制器研究[D]. 西北工业大学, 2002.

[12]龚金国.基于DSP的无刷直流电机数字控制系统的研究与设计[D]. 西安理工大学, 2005.

[13]李凡.基于FPGA的全数字无刷直流电机控制系统研究[D].重庆大学, 2010.

[14]叶长青, 尹华杰. 无刷直流电机速度的模糊控制方法[J]. 电气传动, 2006, 36(3):3-7.

[15]史召峰, 孙承峰.BLDC控制系统中PWM调制方式分析与比较[J]. 西安文理学院学报:自然科学版,2016,19(1):36-40.

[16]张相军, 陈伯时.无刷直流电机控制系统中PWM调制方式对换相转矩脉动的影响[J].电机与控制学报,2003, 7(2):87-91.

Design of motor speed control module of UAV Based on FPGA

YAO BO-wen,WANG HONG-yang ,LI Xiao,WANG JIAN-min
(Harbin University of Science and Technology, Harbin 150080, China)

In order to control the brushless DC motor (BLDC), a design scheme of Brushless DC motor control system based on FPGA was proposed, and the hardware and control algorithm design of the system was completed. The system peripheral hardware circuit part mainly used to drive motor, FPGA with VerilogHDL programming, to complete motor control output signal and the feedback signal detection, the PID algorithm is used to regulate the motor speed control. The practical application shows that the system has the characteristics of high real-time, accurate and stable output control, and the design requirements are achieved.

Brushless DC motor; FPGA; VerilogHDL; PID

姚博文(1993—),男,黑龙江佳木斯人,研究生,研究方向:电子科学与技术。

猜你喜欢
反电动势框图直流电机
基于模糊PID的无刷直流电机速度控制系统的设计与仿真
一种基于波形等效原则的永磁电机空载反电动势在线测量方法研究
基于模糊自适应ADRC的无刷直流电机控制技术
不同占空比的无刷直流电动机反电动势过零点检测
基于改进滑模观测器的BLDCM无传感器控制
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
温度对永磁同步电机反电动势值的影响
电路图2017年凯迪拉克XT5
基于FPGA的双绕组无刷直流电机软件设计
算法框图的补全