APP下载

基于LPC1769芯片的无刷直流电机智能控制*

2013-11-21黄海波兰建平

电机与控制应用 2013年9期
关键词:无刷电机中断单片机

黄海波,兰建平,张 凯

(湖北汽车工业学院电气与信息工程学院,湖北十堰 442002)

0 引言

无刷直流电机(BrushlessDCMotor,BLDCM)具有输出功率大、噪声低、可靠性高、容易维护等优点,在实际中得到了广泛应用,尤其在电动车领域已成为动力驱动系统的核心。早期的无刷电机控制器多采用纯模拟电路或专用集成芯片来实现,这种设计方法不利于功能扩展和升级,功能实现受限。随着各种高性能微处理器的出现,以DSP为控制核心的无刷电机控制器得到了普遍应用[3],尤其是集成了丰富外设的单片机,占据了无刷电机控制器CPU的主导市场[4]。

为了改善BLDCM的运行性能,在外环采用速度环的基础上,在内环引入电流负反馈来控制无刷电机的速度和输出转矩[5]。通过速度电流双闭环反馈控制,达到系统的超调小、抗干扰能力强、实时性好和运行稳定的目的。在双闭环的控制策略中,传统PID算法由于微分项对干扰非常敏感,而无刷电机多用于噪声集中的场合,因此PI控制成为当前无刷电机的主导控制策略。积分项的目的主要是为了消除静差,但在电机的起动、停止和大幅加减速的过程中,无论是速度环还是电流环,其输出都会有很大的偏差,引起PI运算的积分积累,致使控制量超过系统允许的最大输出,引起整个控制系统的超调,电机运行抖动且噪声很大,严重时会损坏电机和控制器的功率驱动部分。本文采用32位高性能单片机LPC1769芯片为核心,通过合理的硬件和软件设计,采用双闭环积分分离的控制策略,实现BLDCM的智能控制。

1 系统结构与工作原理

如图1所示,BLDCM是主要由电机本体、位置检测器、逆变器和控制器组成的机电一体化产品[6]。转子磁极的位置通过位置传感器(霍尔或光电编码器等)进行测量,控制器对位置传感器输出的位置信号进行逻辑处理,并产生相应的驱动时序,驱动时序信号以一定的规则触发逆变器中的功率器件,将电源功率以一定的逻辑关系分配给电机定子各相绕组,使电机产生持续不断的转矩。系统结构如图1所示。

图1 BLDCM控制结构

如图1所示,BLDCM控制系统主要包括:由逆变主电路、逆变功率开关驱动电路构成的功率驱动单元,以LPC1769单片机为核心的主控模块,调速把、刹车把、限速、定速巡航及液晶显示构成的人机接口电路,相电流、母线电压采集电路,转子位置检测电路等。

采用积分分离的双闭环控制策略,如图2所示,其中转速外环根据霍尔位置信号估算电机的转速,与调速设定值作差后进行控制运算的输出,作为电流内环的设定值。电流检测电路检测的电流经单片机的A/D转换后,与设定值一起进行控制运算,得到电流调节器的输出——一定占空比的PWM信号,用以控制逆变电路功率管的开/关状态,实现对电机的转速和电流的双闭环控制。

图2 BLDCM双闭环控制策略

2 系统硬件设计

2.1 单片机主电路

BLDCM控制系统的硬件结构是以单片机为核心,由单片机完成所有的信号采集、处理和控制功能。如图3所示,U+和 U-、V+和 V-、W+和W-分别作为三相逆变桥上下桥臂的驱动信号;三路霍尔信号HALLA、HALLB和HALLC送入单片机的IO捕获输入端,由于霍尔传感器输出的是漏极开漏的位置信号,必须经过上拉,并设置适当的电容进行滤波以消除毛刺;48 V的电源电压、瞬时电流、平均电流和调速把的电压信号分别送入单片机的4路A/D输入引脚,在内部进行A/D转换后进行相应的处理;过流信号和刹车信号分别送入单片机中断引脚,随时起到保护和停机作用;限速信号和巡航信号送入单片机的通用I/O口,单片机在空闲时刻通过查询对应的引脚状态来设置当前的工作状态;通过串口输出各种参数到另一单独的液晶显示电路,实时显示当前的工作状态,包括电压、电流、速度、功率等。

图3 单片机主电路

2.2 功率驱动电路

采用12只场效应管(MOSFET)P75NF75构成三相桥式逆变电路,以满足BLDCM大功率宽范围的驱动需求。其中每个桥臂有4个MOSFET,上下桥臂各2个MOSFET并联。电机三相分别接于三相桥臂的中间节点,三相绕组在电机内部呈星型连接。功率驱动单元分别采用3只IR 2110集成芯片驱动3个桥臂,由于三相的驱动电路完全相同,如图4所示,只以其中U相进行说明。按照120°电机的驱动时序,U+和U-在一个电周期内的有效信号各持续120°,且有60°的间隔区间。因此理论上当上桥臂采用PWM输出,下桥臂采用电平控制时,不存在上下桥臂直通短路现象,但在程序设计时必须插入适当的延迟和逻辑关系以确保电路的安全。当HO输出为低,LO输出为高,上管截止下管导通时,输出端与地相连,输出端相当于地;当输出HO为高,LO输出为低,上管导通下管截止时,输出端与电源相连,输出端相当于电源电压48 V。为避免上下桥臂短路烧毁,禁止HO和LO同时为高。

图4 功率驱动电路

2.3 电流采集电路

从图4可知,母线电流从电源经过其中一个桥臂的上半桥,进入一相绕组(U相),然后经过另一桥臂的下半桥,最后经采样电阻后到达地形成整个回路。因此,电机运行过程中采样电路上的电流反映了母线电流,也同样反映了电子绕组的电流。对采样电流的实时采集是执行系统控制策略和可靠运行的重要前提。图5是电流采集电路,分三路同时进行,第一路和第二路都是比例放大电路,除了进入运放前的滤波电容不一样外,其他参数完全一样,为了降低噪声的影响,设置放大比例均为4倍多。第一路的电容C1=470 pF,只起到抑制突发噪声的作用;第二路的电容C2=0.1 μF,对采样电流进行平滑滤波。因此第一路瞬时电流反映了电流的实时变化,在软件处理时起到限流作用,使其不超过规定的电流值,第二路平均电流主要用在电流环上的控制策略中。第三路是设定的比较器,当采样电阻上的电压超过设定的阈值时,LM339输出瞬时变为低电平,比较器翻转触发单片机中断,及时关断MOS管,起到硬件保护的作用。

图5 电流采集电路

3 系统软件设计

系统软件主要分为主程序和中断服务程序。主程序主要完成参数初始化。对系统安全性和控制的实时性要求很高的功能,则在中断服务程序中进行处理。

3.1 积分分离的PI算法

当电机在起动、停止、大幅度加减速,或负载突变时,速度环和电流环被控量与设定值之间会出现较大的偏差。此时应该取消积分的作用,以免由于积分作用降低系统的稳定性,超调量增大。当被控量接近设定值时,引入积分控制,以便消除静差,提高控制精度。控制算法的程序流程如图6所示,其实现方法如下:

(1)根据电机的实际运行情况,设定阈值ξ>0;

(2)当|E(k)|>ξ时,采用纯粹的比例P控制,避免产生过大的超调,使系统有较快的响应;

(3)当|E(k)|≤ξ时,采用PI控制,保证系统的控制精度。

图6 积分分离控制算法流程图

系统采用的积分分离控制算法可简单表示为

式中:T——采样时间,控制算法的计算周期;

β——积分项的开关系数,当|E(k)|≤ξ时,β=1,否则 β=0。

3.2 中断服务程序

中断服务程序是程序设计的核心部分,从功能上分为两部分:系统保护程序,负责对过流、刹车、过压/欠压等保护信号处理;电机驱动控制程序,完成电机驱动的一系列处理和控制操作。在进入中断服务程序时,首先进行保护信号的检测,当发生安全事故时,程序跳入系统保护程序,系统停机。将刹车也放在保护程序里进行处理,是因为刹车后对电机有同样的处理措施。

3.2.1 系统保护程序

系统设定了过流、刹车、过压/欠压等故障信号检测,其中过流和刹车是单片机LPC1769的IO引脚中断直接引起的,起到实时保护的作用。过压/欠压信号是在主程序对电压信号A/D采集后与设定的阈值比较后产生的A/D中断。当发生故障时,调用中断保护的故障处理子程序,关闭PWM信号输出并做停机处理。如果没有发生故障,系统即进入正常的电机驱动程序。

3.2.2 电机驱动程序

电机驱动程序主要围绕图2中速度电流双闭环的控制策略进行设计。其中转速环包含位置检测模块、转速估算模块、速度调节模块。速度估算模块根据位置检测模块的中断标志信号、位置信息和软件时间估算出当前电机转速,将反馈速度送入速度调节器与给定速度相比较,并进行积分分离的PI调节,实现速度环的调节作用。速度调节器的输出为电流环的设定参考值。

电流环包含电流采样模块、电流调节器、PWM发生模块。电流采样模块根据当前转子位置状态采样相应的电流,包括平均电流和瞬时电流,将平均电流送入电流调节器与参考电流相比较,并进行积分分离的PI调节,实现电流环的调节作用。用电流调节器的输出去控制PWM发生器的占空比。同时,在任意时刻当瞬时电流的幅值超过设定的阈值时,必须适当降低PWM占空比,起到限流保护的作用。整个电机的驱动程序流程如图7所示。

图7 电机驱动程序流程图

转子位置检测程序对驱动程序非常重要。转子位置信息为转速估算程序、电流采样程序、PWM导通关断逻辑提供重要信息。转子位置检测与转速估算流程图如图8所示。在系统初始化时,即将3路霍尔信号对应的I/O口设置为边沿有效捕捉状态。当反映转子位置的霍尔信号发生改变(上跳或下跳)时,对应的三路I/O口捕捉中断标志位置位。在中断服务程序中查询该标志位,一旦有效即将I/O口设置为输入口,读入当前位置状态值,保存到位置变量,完成位置检测。然后再将I/O口设置为捕捉状态,为下次霍尔信号跳变捕捉做准备。根据I/O口捕捉中断标志位有效与否,判断是否执行电机转速估算子程序,通过起停通用定时器4的计数值来测量任意两次位置变化之间的时间间隔。由于一个机械周期包括6个电周期,因此利用公式n=1/(6pΔT)计算电机转速,其中p为电机的极对数,ΔT为定时器的计时差值。对估算出的转速进行平滑滤波后,即进行积分分离的速度PI调节。

图8 位置检测与转速估算流程图

为了实时对电流进行采样,一旦系统进入电机驱动服务程序,即通过软件触发A/D对瞬时电流和平均电流进行转换。当执行转速估算和转速调节后,从A/D缓冲区直接读取电流值,进行电流调节和限流保护。PWM发生模块根据电流调节器的输出调节PWM波的占空比,根据位置检测值,通过查询开关管导通逻辑表,确定导通相序,改变 PWM寄存器 ACTRB的值,实现电机换相。

4 系统测试

采用80BL145-440 BLDCM,额定参数为电压48 V,功率550 W,转速 4 500 r/min,1.8 N·m。分别检验了控制系统的霍尔位置信号检测模块、转速估算模块、PWM发生模块、过流保护模块、电压采集模块、电机信息显示模块、单片机和系统板供电模块以及刹车、巡航、限速、调速把模块。

经过反复测试,设定速度电流的调节周期T=20 ms,积分分离的速度阈值 ξ1=150 r/min,电流阈值ξ2=3.5 A时,各项功能模块均工作正常,电机起动平稳,加速平滑,且电机在4 500 r/min范围内转速任意可调;人为增加电源电压到52 V以上和降低电源电压到42 V以下时,过压和欠压保护均得到实现;在运行过程中突加负载导致电机堵转过流时,系统立即进行过流保护;当转速把设定转速保持8 s不变时,电机进入巡航状态;通过示波器观测到的霍尔信号、PWM发生信号、采样电流等均稳定且噪声很小,说明电路设计可靠,系统工作正常。

5 结语

通过软硬件的设计与调试,设计了以LPC1769单片机为核心的BLDCM控制系统。针对额定电压为48 V,额定功率为550 W的BLDCM进行安装调试,完成BLDCM的调速、刹车、定速巡航、限速等功能性要求和过压/欠压保护、过流保护等安全性要求。试验结果表明,该系统体积小、重量轻、精度高,相比传统模拟控制器具有更大的灵活性、可靠性,稍加改进可应用于电动自行车或电动摩托车BLDCM的驱动控制。

[1]王凤琥,孙跃东.电动汽车传动系统方案研究[J].制造业自动化,2012,34(2):75-78.

[2]张洁.简论纯电动汽车的驱动电机及其控制系统[J].国内外机电一体化技术,2012(3):40-41.

[3]王海欣,黄海宏.基于DSP的三相直流无刷电机调速系统的设计[J].电源技术应用,2007,10(9):21-24.

[4]崔丽,叶先明.基于AVR单片机的直流无刷电机智能控制系统设计[J].仪器技术与传感器,2009(11):34-36.

[5]吴金友,李艳丽,范蟠果.无刷直流电机控制系统在电动自行车上的应用[J].电机与控制应用,2008,35(1):63-65.

[6]郭庆鼎,赵希梅.直流无刷电动机原理与技术应用[M].北京:中国电力出版社,2008.

猜你喜欢

无刷电机中断单片机
基于STM32F407的无刷电机调速系统设计
无刷电机霍尔传感器位置及电机旋向确认方法研究
基于神经元控制的无刷电机调速建模仿真
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于DSP的直流无刷电机电子控制方法研究
基于单片机的便捷式LCF测量仪
基于FPGA的中断控制器设计*
跟踪导练(二)(5)