基于Proteus的无刷直流电机控制器仿真设计
宛铮
(嘉兴学院机电工程学院,浙江 嘉兴 314001)
摘要:在Proteus仿真环境下结合Mplab开发平台,设计了以DSPIC33FJ12MC202为主控制器的无刷直流电机仿真控制系统。该系统采用转速电流双闭环PID控制策略,实现了对无刷直流电机的调速控制。实验结果表明,所设计的系统能够满足无刷直流电机转速控制的设计要求,稳定可靠,对实际硬件电路的设计具有很大的辅助作用。
关键词:Proteus;DSPIC33FJ12MC202;无刷直流电机;仿真;控制系统
0 引言
无刷直流电机具有调速范围广、过载能力强、低电压特性好、启动转矩大(堵转特性)、启动电流小等优点,已在各个经济领域和人们的日常生活得到广泛的应用。研究无刷直流电机的驱动控制技术具有重要的实际应用价值。
与Matlab等仿真工具相比,利用Proteus可以在虚拟环境中完成硬件电路的设计,并通过对微处理器编程,实现各种控制算法,可以直观观测到控制效果。在实际应用系统的设计开发中,有助于降低开发成本和开发周期,提高设计效率。基于此,本文采用Proteus仿真平台设计了以DSPIC33单片机为控制核心的无刷直流电机仿真控制器,完成了硬件电路设计和程序调试,实现了转速电流双闭环PID控制策略,为实际系统的设计提供了有效的理论实践基础。
1 无刷直流电机的Proteus仿真模型
Proteus软件的无刷直流电机模型建立在直流电机模型基础之上,可以根据应用需要设定额定电压、空载转速、负载阻抗、转动惯量、绕组阻抗、绕组间互感等参数。模型中带有三个霍尔位置传感器,TTL输出,用于转子位置检测。
在设计中,在Proteus的Motors库里有三相星型联接和三相角型联接两种无刷直流电机模型可供用户选择,两种模型的输入输出引脚一致,区别仅在于绕组联接方式。模型的引脚中,a、b、c分别为绕组线圈输入端,sa、sb、sc分别为霍尔位置传感器输出端,load为仿真负载输入端,omega为转子角速率输出端,单位为弧度/秒。
2 硬件电路设计
系统的硬件组成框图如图1所示。主要包括主控制器硬件电路、功率驱动电路、功率逆变电路、电流检测电路、转速检测电路等。
主控制器通过功率驱动电路输出PWM,控制功率逆变器,实现对电机的驱动。为了实现转速、电流双闭环控制,电机的转速由电机转子位置传感器获得,母线电流通过霍尔电流传感器测量[1]。2.1主控制器电路
主控制器采用美国Microchip公司的DSPIC芯片DSPIC33FJ12MC202。该芯片是一款16位的高性能数字信号控制器,具有8路电机控制PWM输出通道,1路正交编码接口QEI,非常适合用于无刷直流电机控制。主控制器电路如图2所示。
DSPIC33FJ12MC202控制器具有输入电平变化告知功能,当检测到一个特定数字输入引脚上电平状态的变化就会产生中断。系统设计时将霍尔传感器A,B,C分别接入RB0,RB1,RB2或CN4,CN5,CN6引脚,当发生CNxInterrupt中断时,会读取全部3个霍尔输入引脚,然后可通过查表得到当前需要换相的信息,从而实现对 BLDC 电机进行换相控制。同时,可以利用控制器的输入捕获功能对电机进行比较准确的测速。
2.2功率驱动电路
功率驱动采用三相全桥驱动[2],使用三片IR2101驱动3个桥臂,由6个N沟道功率MOSFET管SMP60N06构成三相桥式逆变器。采用二二导通六状态导通方式。图3所示为一路桥臂的功率驱动电路。PWMH1和PWML1是由主控制器输出的PWM脉冲方波,通过功率驱动芯片IR2101驱动相应功率MOSFET管的通断。D1是快恢复二极管BYT30,C2为自举电容,选取C2的电容值为2.2uf[]。
2.3电流采样电路
设定无刷直流电机模型的额定工作电流为
2.4位置检测电路
Proteus的无刷直流电机模型带有3个霍尔传感器,霍尔传感器的输出信号两相间相差120度。与此对应的是电机转子每旋转一周霍尔传感器就能输出6种编码状态,如图5所示。从图可见,霍尔传感器输出状态变化一次,就意味着电机转子转过了60度。据此,可以根据单位时间T内捕获的霍尔传感器输出变化的个数n计算出电机的转速V=60n/T。根据这一原理,通过控制器的输入捕获功能IC获取到其中一相霍尔传感器输出信号的周期,就可以比较准精确地测量到电机的转速。
3 控制器控制策略
系统采用转速电流双闭环增量式PID控制策略[3],结构原理图如图6所示,其中电流内环和速度外环均采用PI控制。考虑到在实际工程应用中对电流和转速进行调节时希望静态误差小并且具有较小的超调量,因此在工程上可以把电流环校正为典型Ⅰ型系统,把速度环校正为典型Ⅱ型系统。实际设计时先按照最佳二阶系统整定电流环,然后按最佳整定设计法整定转速环[4]。
4 Proteus仿真结果及分析
在Mplab集成开发环境下使用C语言进行程序设计。Mplab支持与Proteus进行联合调试。在安装了vdmmplab.exe文件后,在Mplab的debug工具上会出现Proteus VSM,这样在完成程序编译后,即可与Proteus下设计的硬件电路进行联合仿真调试,开发过程与硬件设计过程类似。
仿真时,设定目标转速转度为170r/min,逆时针旋转。仿真运行结果如图。从仿真结果可以看到,经过短暂的电机启动过程,电机转速能够稳定在170r/min。图中左侧波形时稳态运行时3路霍尔传感器输出信号,右侧波形为三路相电压波形。在设定转速速度为1000r/min,电机转速转度能够稳定在999r/min。在仿真中电机的转速与设定的转速存在一定误差,这是由于在PROTEUS仿真软件环境下造成了系统的实时性降低,从而一定程度上造成了延时,导致了误差产生。
5 结束语
本文利用Proteus仿真软件设计了无刷直流电机仿真控制系统,完成了主控制器硬件电路、功率驱动电路、功率逆变电路、电流检测电路、转速检测电路的设计,通过C语言编程在控制器实现了转速电流双闭环增量PID控制,实现了对设定转速的恒速控制。实验结果表明,所设计的系统能够满足无刷直流电机转速控制的设计要求,取得了良好的效果,对实际硬件电路的设计具有很大的辅助作用。
参考文献
[1] 李晓斌, 张辉, 刘建平. 利用DSP实现无刷直流电机的位置控制[J]. 机电工程 , 2005,(03)
[2] 刘宏. 基于DSP的直流无刷电机电子调速器系统设计[J]. 黑龙江科技信息 , 2009,(16)
[3] 叶小霞, 徐烟红, 郝洁. 无刷直流电机的双闭环控制仿真[J]. 科技创业月刊 , 2010,(12)
[4] 张争争, 任永德, 谢宝昌. 基于DSP的无刷直流电动机控制系统[J]. 微特电机 , 2001,(02)