无刷直流电机控制系统的Proteus仿真
2015-10-08王家豪潘玉民
王家豪 潘玉民
【摘 要】基于Proteus软件仿真平台,提出了一种对无刷直流电机(BLDCM)控制系统实现了转速闭环控制的方案。该系统以AT89S52单片机为核心,采用IR2101芯片驱动及AD1674实现速度,并利用数码动态显示转速,通过增量式PID调节对无刷直流电机实现转速闭环稳定控制。仿真结果表明该系统具有可控调速、显示直观等特点。
【关键词】无刷直流电机(BLDCM);Proteus;增量式PID;闭环控制
0 引言
无刷直流电机(BLDCM)既有直流有刷电机的特性,又有交流电机无刷的优点,在快速性、可控性、可靠性、输出转矩、结构、耐受环境和经济性等方面具有明显的优势,近年来得到迅速推广[1]。BLDCM是一种用电子换向取代机械换向的新一代电动机,与传统的直流电动机相比,它具有过载能力强,低电压特性好,启动电流小等优点。近年来在工业运用方面大有取代传统直流电动机的趋势,所以研究无刷直流电机的驱动控制技术具有重要的实际应用价值。
本设计采用增量式PID控制策略控制无刷电动机,并在Proteus平台上进行转速闭环系统仿真。搭建了无刷直流电动机转速控制系统的仿真模型,基于80C51控制核心,采用keil C51软件编写C程序。
1 系统硬件组成
控制系统的硬件组成如图1所示。采用Atmel公司的AT89S52单片机为系统控制核心、IR2101驱动的MOSFET三相桥式逆变器、无刷直流电机、A/D转换转速检测、闭环PID控制、按键检测、档位和转速显示等部分组成。
2 控制系统核心及外围电路
系统核心AT89S52单片机最小系统及按键电路如图2所示。
AT89S52芯片是8位单片机,具有廉价、实用及运算快等优点,它有两个定时器,两个外部中断接口,24个I/O口,一个串行口。
单片机首先进行初始化,将显示部分(转速显示、档位显示)送显“0”然后通过中断对按键进行检测当检测到启动键按下时,系统启动,控制核心输出初始控制码,与此同时通过AD转换器读取当前的实时转速,一方面用于显示,另一方面将当前转速与设定转速送入PID控制环节然后输出下一时刻的控制码。
在本次设计中使用80C51的外部中断接口0(INT0)作按键检测(见图3),通过四个与门,当有任何一个按键按下去时tap端都会出现低电平引发中断。P0口用作数据输出,P2口用作地址输出(P2.0—P2.1档位显示,P2.2pwm输出地址,P2.3转速检测地址,P2.4—P2.8转速输出显示地址)。
由于所需按键比较少,所以采用独立按键,使用点动开关分别实现启动(OPEN)、加速(UP)减速(DOWN)、反转(CPL)、停止(CLOSE)。
3 无刷电机、逆变器及驱动模型
Proteus软件中无刷电机模型如图4所示。它是建立在直流电机模型基础上,可以根据应用需要设定额定电压、空载转速、负载阻抗、转动惯量、绕组阻抗、绕组间互感等参数。模型的左侧是ABC三相电压输入,右侧为三个霍尔(HALL)传感器,用于实时监测转子的位置。
在Proteus的元件库中,直流无刷电机有两种,bldcm-star与bldcm-triangle,即三相星型联接和三相角型联接。两者仅区别于绕组的连接方式。本文采用星型连接的无刷电机。该模型共有8个引脚:左侧A、B、C为三相电压输入端,最大输入电压为12V;右侧:sa、sb、sc是三个HALL传感器的输出端。下端:load为模拟负载输入端,omega为转子的角速度输出端,电压型输出,其输出电压乘以60即为实际转速。
三相全桥电路为二二导通六状态导通方式,使用了6个N沟道功率MOSFET管,型号为SMP60N06,构成三相桥式逆变器。
4 闭环控制系统实验
首先进行电机开环控制,再引入PID控制策略实现转速闭环调节。同时在系统中加入了按键检测以及转速显示,最后实现了对电动机的加速、减速、正反转等控制功能,以及在消除速度误差及稳速方面进行各种实验。为实际系统的设计制作提供了基础。
4.1 转速检测电路
转速检测电路采用逐次比较型12位A/D转换器AD1674,采用双极性输入方式,由于输入电压范围为+10V~-10V所以在无刷电机的omega输出端接滑动变阻器分压。
双极性输入时,输出的转换结果D与模拟输入电压VIN之间的关系为:
式中VFS为满量程电压。
4.2 转速显示部分及档位显示部分
显示部分均采用7段共阴极二极管配合74LS373的led静态显示,由于对无刷电动机需要严格的时间控制,虽然动态显示的硬件连接简单而且功耗低,但是由于其需要一定的延时消除“残影”故不采用。
5 软件设计
在本系统的设计中,采用80C51的定时器0定时产生驱动电路所需的控制脉冲,P1口的P1.0~P1.4分别接受OPEN、UP、DOWN、CPL、CLOSE五个按键信号;P1.5~P1.7用于接受无刷电动机的霍尔传感器的信号;外部中断0用于检测是否有按键按下;P2口用作地址输出口,其中,P2.0~P2.1档位显示,P2.2pwm输出地址,P2.3转速检测地址,P2.4~P2.8转速输出显示地址。
软件共分七部分:主函数(main.c)、显示函数(led.c,led.h)、按键检测函数(botton.c)、PWM波发生函数(pwm.c)、电动机控制逻辑(controlfucntion.c,controlfunction.h)、AD转换部分(feedback.h,feedback.c)。
系统上电后首先进行初始化(档位送显“00”,转速送显“0000”,)由于使用80C51的timer0为发送控制码的延时脉冲,所以还要对80C51的定时器设定初始值和开定时器中断。INT0作按键检测,需开外部中断0的中断允许。然后系统进入等待状态,等待OPEN被按下。
当OPEN被按下,档位记录r=1同时档位送显“01”,然后将timer0的定时器启动位(TR0)置1即启动定时器,开始发送控制脉冲。同时启动AD转换读入实际转速,将实际转速和档位1的目标转速同时传送给PID函数得到下一时刻的延时控制。
PID的整定选用Ziegler-Nichols整定法。
6 Proteus仿真结果及分析
仿真时,设定目标转速为530r/min。仿真运行结果如图,图6为霍尔传感器输出信号,其中Channel A,Channel B,Channel C对应BLDC-STAR的sa,sb,sc输出信号,Channel D为BLDC-STAR A项电压输出。
7 结语
本文利用Proteus仿真软件设计了无刷直流电机仿真控制系统,完成了主控制器硬件电路、功率驱动电路、功率逆变电路、电流检测电路、转速检测电路的设计,通过C语言编程在控制器实现了转速电流双闭环增量PID控制,实现了对设定转速的恒速控制。实验结果表明,所设计的系统能够满足无刷直流电机转速控制的设计要求,取得了良好的效果,对实际硬件电路的设计具有很大的辅助作用。
【参考文献】
[1]蒋辉平.基于Proteus的单片机系统设计与仿真实例[M].机械工业出版社,2012,7.
[2]陈伯时.电力拖动自动控制系统—运动控制系统[M].机械工业出版社.2008,3.
[3]姜志海.单片机的C语言程序设计与应用[M].电子工业出版社.2011,7.
[4]赵希梅.直流无刷电动机原理与技术应用[M].2012.
[5]刘刚.永磁无刷直流电机控制技术与应用[M].2012.
[6]彭伟.单片机C语言程序设计实训100例:基于PIC+Proteus仿真[M].2012.
[7]王晓明.电动机的DSC控制:微芯公司dsPIC应用[M].2012.
[8]李晓斌,张辉,刘建平,利用DSP实现无刷直流电机的位置控制[J].机电工程,2005(03).
[9]刘宏.基于DSP的直流无刷电机电子调速器系统设计[J].黑龙江科技信息,2009(16).
[10]叶晓霞,徐烟红,郝浩.无刷直流电机的双闭环控制仿真[J].科技创业月刊,2010(12).
[责任编辑:邓丽丽]