王斌虎
(内蒙古工业大学 机械学院测控系,内蒙古 呼和浩特 010000)
基于FPGA的无刷直流电机控制系统
王斌虎
(内蒙古工业大学 机械学院测控系,内蒙古 呼和浩特 010000)
文章偏重解析无刷直流电机的内部构造、工作方式和控制原理,并研究基于FPGA的无刷直流电机控制系统。其基本原理是FPGA输出的PWM波首先经过推挽放大电路,然后启动六个功率管,由功率管组成的三相全桥式逆变电路控制电机定子的各相通断,其偏差经电流调节后的信号控制PWM占空比,完成无刷直流电动机的速度与电流控制。
FPGA;PWM波;逆变电路控制
无刷直流电机的应用相当广泛,在汽车、器材、产业工控、自动化和航空航天等都有应用。文章以基金项目“仿人机器人步态控制研究”为背景,对无刷直流电机的控制展开研究。
(1)无刷直流电机的电源供应。Q1~Q6是功率场效应管,AB通电,打开Q1Q5晶体管且其他晶体管保持截止状态。从晶体管的结构可以知道,每一项开关管不能在同一时刻导通,故在给控制开关管信号时应注意上下桥臂要反向给控制信号,为防止上桥臂没有截止,而下桥臂已经导通的情况出现,所以驱动信号应有适当的死区时间,从而避免无刷电机或器件的损坏。
磁场和转子进行合闸线圈遵循弯曲的过程中,有六个凸极线圈,两个相对的径向线圈形成一个线圈组,红色是C线圈,绿色是B线圈,黄色是A线圈,线圈组按星形方式连接,标ABC字母的是三个线圈的输入端。在外转子磁轭固定在弧形的永磁磁极,N极向蓝轴,红色是S极轴。图1中右边是定子的磁场方向,磁场会产生切换流程的变化与定子旋转,代表有固定产生的磁场。
图1 六凸极结构正视图
对于三相二导通的无刷直流电机,图2给出了其连接结构图。AB相通电时,转子产生的磁场对电流有力的作用,由左手定律可得,判断线圈AA'的上半部分受到一个电磁力,方向是顺时针方向,而AA'的下半部分同时受到一个顺时针方向的电磁力。因为线圈绕组在定子之上,定子是固定的,由力的作用是相互的可知,转子会受到一个逆时针方向的作用力。
图2 桥式主电路原理图
以上介绍就是在各个状态下无刷直流电机转子转动的全过程。从而可以得出,根据转子位置的不同,进行导通相有规律的切换,转子就可以按所想要得到的方式转动,从而实现了直流无刷电机的简单控制。
电机是间断性供电的。故而提高绕组的电利用率,可以使同时通电导体数目增加,从而导致电阻下降,提高效率。由此来看,定子的绕组三相比四相好,四相比无相好,电子开关线路采用全桥控制。
(2)FPGA模块调试。从图3中可以看出,每一时刻只有单相导通,而且由实物图中可以看出T1T5管导通且其他晶体管保持截止状态,随后经60转子旋转,再顺序切换场效应管的下一组通断,顺序为AB→AC→BC→BA→CA→CB以此类推。则有如下波形:
图3 六状态正转各相波形图
(1)Cyclone系列FPGA的组成。Cyclone系列器件是一款低成本、高性价比的FPGA,包含5种逻辑资源:逻辑阵列块、可编程I/O控制模块、嵌入式阵列块、锁相环和可编程内部连线阵列。①逻辑阵列快。逻辑阵列块(LAB)是FPGA的重要组成部分,是实现复杂逻辑功能的主要资源。②可编程I/O模块。I/O模块提供了器件引脚与内部逻辑阵列之间的连接,可被配置为输入、输出和双向工作方式。③可编程连线资源。可编程连线资源包括各种金属连接和一些可编程开关,将各个LAB、LAB与I/O模块、LAB与嵌入式模块、嵌入式模块、嵌入式模块与I/O模块连接起来,构成复杂功能的系统。④嵌入式阵列块。Cyclone系列FPGA中含有嵌入式存储器,由数十个M4K的存储器模块组成,每个RAM模块有4608位,可灵活构成单口RAM、双扣RAM、FIFO、移位寄存器、仿真ROM。用嵌入式存储器实现较复杂的逻辑功能,占用器件面积小,速度快。⑤嵌入式锁相环。FPGA的功能由逻辑结构的配置数据决定,在工作时,这些配置数据存放在片内的SRAM或者熔丝图上。FPGA掉电后将丢失原有的逻辑信息,所以在实际应用中需要为FPGA芯片配置一个专用的ROM。
(2)EDA技术的设计流程。EDA设计流程包括设计准备、设计输入、设计处理、设计校验、器件编程和设计完成几个步骤。①设计准备:设计准备是指设计者在设计之前,依据设计的要求,确定系统所要完成的功能及复杂程度、期间资源的利用和所需成本等要做的准备工作,如进行方案论证、系统设计和器件选择等。②原理图输入方式:利用EDA工具提供的图形编辑器以原理图的方式进行输入。该方式适用于对系统及各部分电路很熟悉的情况,或在系统对时间特性要求较高的场合。③硬件描述语言的文本输入方式:硬件描述语言的文本输入方式是一种普遍性的输入方法,大部分的EDA工具软件都支持文本的编辑和编译。目前常用的高层硬件描述语言有VHDL和VerilogHDL,运用硬件描述语言设计已成为当前的趋势。④设计处理:在处理设计的阶段中,编译软件将对设计输入文件进行逻辑化简、综合和优化,并适当的用一片或多片器件自动地进行适配,最后产生编程用的编程文件。⑤器件测试和设计验证:采用边界扫描测试技术进行功能测试,测试成功后才完成其设计。验证时将编程文件下载到FPGA或CPLD中,然后进行相应的输入操作,观察和检测输出结果,从而实现对设计电路的功能验证。
任何的软件开发任务均可以在Nios II IDE环境下完成和实现,涵括了许多的功能,其中有调试程序、编译和编辑,此环境下为系统提供了一个统一的开发平台,适用于所有的Nios II处理器系统。Nios II集成开发环境(IDE)有4个主要的功能:①工程管理器;②编辑器、编译器;③调试器;④闪存编程器。
(1)文章采用高性能芯片通过编程控制六个场效应管的通断,从而控制电机的转速;实现了基于FPGA的无刷直流电机控制系统,但是受环境条件和时间的影响,本系统仍然存在不足,且有待以后进一步的改变。
(2)文章所展示的系统均是在理想条件下进行调试的,改进方式,应增加多种负载测试,并且可以将控制系统置于真实的环境中进行调试。
(3)对于芯片的资源利用不够充分,没有用到FPGA内核对程序进行开发的部分,对FPGA芯片本身的功能的挖掘有待提高。
(4)应改善对转子的测量方法,有效提高精度,提高对电机转速测量测试的准确性和实时性。
(5)所采用的电机是内置控制电路的一种无刷直流电机控制系统,且是用一项PWM波输入,内置转化为六路PWM波来控制场效应管的通断。
基于FPGA的电机控制系统大大提高了无刷直流电机的性能,同时提高了无刷直流电机响应速度和控制精度,进一步开发强大的编程能力,可实现随时修改电路设计大大降低了复用成本。快速换向的工作方式与传统电机比较避免了很多问题,应用更加广泛,PWM波控具有三相中心对称,周期、频率和占空比可调,性能优异、可靠性高等优点。
王斌虎,男,硕士,主要研究方向:专业仪器科学与技术。