无刷直流电动机无传感器控制方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
*
无刷直流电动机无传感器低成本控制方法
关键词:无刷直流电动机无位置传感器控制可编程逻辑器件
1 引言
无刷直流电机的无传感器控制是近年来电机驱动领域关注的一项技术。无位置传感器控制的关键在于获得可靠的转子位置信号,即从软、硬件两个方面间接获得可靠的转子位置信号来代替传统的位置传感器[1~3]。采用无传感器控制技术的无刷电机具有结构简单、体积小、可靠性高和可维护性强等优点,使其在多个领域内得到了充分的利用[4]。目前对于无传感器无刷电机的控制多采用单纯依靠DSP 软件控制的方法[5],但是由于控制算法计算量大,执行速度较慢,且DSP成本较高,不利于以后向市场推广。同时也出现了应用于无传感器BLDCM控制的一些专用的集成电路[6],但由于这些芯片可扩展性和通用性较低,而且价格昂贵,只适用于低压、小功率领域。为了扩展无传感器BLDCM应用领域,降低其控制系统的成本,扩充控制系统的功能,增加控制系统的灵活性,本文以MCU+PLD方式组成控制系统的核心,利用PLD数字逻辑功能,分担MCU的逻辑运算压力,使MCU和PLD的功能都得到了最大程度的发挥。对于无位置传感器BLDCM控制系统,本文着重分析了换相控制策略和闭环调速,最后通过仿真和实验,验证了控制系统的合理性和可行性。
2 系统的总体硬件设计
本文中所设计系统是以8位PIC单片机和PLD构成的硬件平台,硬件结构框图如图1所示。
图1 系统总体结构硬件框图
功率逆变电路采用三相全桥逆变结构,电机定子绕组为Y接法,电机工作模式为三相6状态方式。在本文无传感器控制方式中采用反电动势过零位置检测方法,位置检测电路根据电机端电压获取3路位置信号,将信号送入PIC单片机进行软件移相后得到3路换相信号,由可编程逻辑器件进行逻辑解码后输出6路驱动开关管的前极信号,通过驱动芯片IR2233产生驱动信号以控制各开关管的导通与关断。该系统采用速度单闭环方式,通过改变PWM的占空比以达到调速的目的。
本文中选用Microchip公司的单片机PIC16F874作为控制核心,它内部有8K 的FLASH程序存储器,368字节的数据存储器(RAM),256字节的EEPROM数据存储器,14个中断源,8级深度的硬件堆栈,3个定时/计数器,两个捕捉/比较/PWM (CCP)模块,10位多通道A/D转换器等外围电路和硬件资源[6]。这些使得运用PIC16F874在设计硬件电路时,控制电路大大简化,可靠性提高,调试更加方便。
PIC16F874单片机的B端口的4~7口具有电平变化中断的功能,利用RB5~RB7作为反电动势的过零点检测信号的输入,如已开RB口中断,一旦有过零点出现
(发生电平的变化)就进入RB口中断服务。利用CCP模块输出占空比可调的信号,可实现直流电机调速。
3 控制方法
3.1 软件相移补偿
由于采用脉宽调制技术进行调速,导致无刷电机端电压波形中存在一定的高频调制分量,因此在反电势检测中必须采用有源低通滤波电路以滤除高频分量,避免得到错误的过零点,但对反电动势信号产生一定的滞后,同时由于软件执行带来的延时,故从反电势检测电路输出的反电势信号比真实的反电势信号要滞后一些。当电机的转速较高时,信号滞后所带来的负面影响就比较严重,电机表现为高速带负载能力差,并且电流增大许多倍,甚至于电机可能会突然停转[7]。因而要对反电势信号进行补偿,以得到准确的换相信号Pa,Pb,Pc。
反电势检测输出信号滞后的电角度跟电机的转速成正比关系如下所示:
π
电机的最佳换相时刻是在反电势过零再延迟30°(电角度)。在实际应用中合理的设计反电动势检测电路,使其相角位移在整个调速运行频率范围内不超过30°。如图2所示,反电势过零点从m点移到m'点,检测到反电势过零后,相位延迟角γ应调整为γ=30-α,即再延迟γ角度进行换相。本文是通过如下方法来实现的,计算延时30°(电角度)的时间和当前转速下反电势滞后的时间,二者之差即为检测到的反电势过零点后到正确换相之间的延时时间。由于换相偏差角α与电机的速度相关,因此调速过程中需要动态地进行补偿。为了节省微控制器
的运算时间,可预先计算出不同速度下的延时时间,存储在ROM中,电机在运行过程中查表调用,以空间来换取时间,提高了系统的实时性。
图2 反电动势相位延迟
3.2 逻辑换相
换相逻辑完全可由PIC单片机来完成,但是由于单片机是按串行方式工作,指令在时序上是逐条执行的,在实际系统的运行过程中,恶劣的工作环境很容易使系统死机或程序飞逸。因此本文利用PLD器件的强大的数字逻辑功能来完成逻辑换相,不仅分担了PIC的逻辑运算压力,同时提高了系统的稳定性和可靠性,简化了控制系统的外围设置。
PLD实现逻辑解码的第一步是根据单片机输出换相信号Pa,Pb和Pc(如表3)和正反转信号判断开关管的工作顺序(G1,G3,G5为上桥臂开关管,G2,G4,G6为下桥臂开关管)。再根据换相信号将PIC单片机发出的PWM信号提供给处于工作状态的开关管作为其导通信号。
表3 换相信号和开关管工作顺序
Pa Pb Pc 正转反转
0 0 0 X X
1 0 1 G1G4 G3G2
4 系统的闭环调速
4.1 调速策略
由于无刷直流电动机具有普通有刷直流电动机的机械性能,所以通常采用PWM调压调速的方法。其方法是单片机CPU根据采集速度给定值和速度反馈实际值,计算得出的速度误差控制量,经过数字PID调节来控制输出PWM信号的占空比,送入逻辑综合分配单元,控制三相桥式逆变器。通过调节转速给定值,单片机内部调节PWM的占空比,也就调节了加在电机上的脉冲电压,从而实现了电机转速的无极平滑调速。为了实现速度无静差控制,速度闭环采用PI控制器,其中比例环节可以使电机转速快速跟随给定转速,积分环节可有效实现速度的无静差精确控制,且稳定高。
电机速度采用软件T法测速,单片机可自动地捕获到位置信号的两个上升沿,可通过计算得出两个上升沿间隔的时间T,及在T内计得的时钟脉冲Φ的个数m,则通过f=1/T=1/mΦ,即可求出电机的转速。外部转速的给定通过外部电位器,调节电位器可以得到一个0~5 V连续变化的标准电压信号,将该信号送入单片机的AD转换口,转换位10位的二进制数字量。