基于XC866/846中霍尔传感器模式实现直流无刷电机同步整流控制

分享到

摘要: 在现有的电动自行车应用方案中,霍尔传感器信号的采样、比较操作都是通过软件进行,存在一定的换相误差,当使用高速直流无刷电机的时候,尤其明显。在此本文提出了一种基于英飞凌XC866/846的CCU6E 模块实现硬件霍尔信号滤波的方案,并可现同步整流控制,提高换相准确性。
关键词:电动自行车,硬件霍尔滤波,同步整流

1.    前言
电动自行车作为一种环保的交通工具,已经得到了越来越广泛的使用。直流无刷电机及控制器作为电动自行车中的关键部件,其性能决定了整个系统的电能转换效率。控制器根据霍尔传感器输出信号,驱动3相全桥电路,实现对直流无刷电机的控制,因此霍尔信号的准确性及换相的实时性会直接影响电机的性能。在现有电动自行车控制器方案中,霍尔传感器信号的采集均采用软件扫描形式进行,换相操作也通过软件处理,换相误差大,实时性差,尤其对中高速电机尤为明显。而英飞凌公司的XC866/846可以支持硬件霍尔信号采集、换相操作,且无需额外电路即可实现同步整流控制,单片机利用率高,电机控制性能好。
2.    直流无刷电机控制
传统的直流无刷电机采用梯形波驱动方式,系统结构框图如图1a所示,MCU根据三个霍尔传感器信号,调制PWM输出,PWM驱动波形如图1b所示,由于在这种控制方式下,电机端电压波形为梯形波,因此也称为梯形波控制。从图1 中可以看出,PWM输出存在6种状态,对于每种状态,逆变桥的6个功率管中仅有2个工作,例如当状态等于5时,CC60 和COUT62对应通道开通。


                                   图 1 直流无刷电机控制拓扑结构及PWM驱动信号波形
在PWM开通和关断期间,逆变桥内的电流如图2所示 (以状态5为例)。当PWM开通时,电流经过M1,经过电机及M6返回电源。当PWM关闭时,续流电流经由D2(M2中的寄生二极管)、电机相线和M6返回电源。由于二极管D2的导通压降为0.6-1V左右,因此续流电流在这个二极管上会产生较大的损耗,当电机负载大,续流电流大的时候,损耗问题更加严重,影响逆变器效率。
 
                                                图2 简单梯形波控制中的电流示意图
为了减少续流电流在寄生二极管上产生的损耗,在一些应用中使用MOSFET作为逆变元件。由于MOFSET具有导通阻抗低、电流可以双向流动的特点,在M1关断,进入续流阶段时,开通M2,使续流电流流经M2,由于MOSFET极低的导通阻抗,损耗很小。例如当续流电流10A,MOSFET导通电阻10mΩ,二极管D2压降0.7v时,如果续流电流流经D2时,产生损耗为7W,而经过MOSFET时产生损耗为仅为1W,因此使用这种控制方式可以减少损耗,提高逆变器的效率,在续流电流大的情况下,效果更明显,这种控制方式亦称之为同步整流,电流示意图如图3a。由于MOSFET的上、下管需要交替开通,为了避免直通的危险,因此需要添加死区时间。采用同步整流控制时,6路PWM的驱动波形如图3b所示。


                                                图3 同步整流控制中的PWM驱动及电流示意图

3.    CCU6E霍尔传感器模式
捕获/比较单元6(CCU6E)是英飞凌的8/16位单片机中包含的专用电机驱动单元,内部结构如图4所示。CCU6E包含两个专用16位定时器(T12,T13),可以产生各种PWM调制信号,支持交流电机、直流无刷电机、开关磁阻电机等多种电机控制,结构框图如图4所示。CCU6E还提供支持块交换和多相电机控制的多通道模式,并集成专用霍尔传感器模式,可在使用极少CPU资源的前提下,实现直流无刷电机的控制。


                                                                   图4   CCU6E 结构框图
霍尔传感器模式如图6所示。在霍尔传感器模式中,CCU6E通过专用输入接口CCPOS0、1、2自动采样霍尔信号,为了滤除霍尔信号中的干扰,CCU6E利用死区时间计数器DTC0实现滤波功能,任何霍尔信号的跳变将自动重载DTC0并开始向下计数,当DTC0计数到1时,进行霍尔信号的采集操作。从而在霍尔信号变化到采样点之间产生了一个延时,减少干扰对换相的影响。
当滤波延时完成后,CCU6E会自动进行霍尔信号的采样和比较操作,如果霍尔输入值等于期望值(MCMOUTH中EXPH),则表明发生正确的霍尔换相事件(CHE),可触发正确霍尔换相中断。如果输入霍尔信号既不等于期望值,也不等于当前霍尔值,则表明霍尔信号发生错误(如霍尔信号线断开),同时可触发错误霍尔事件中断,通知CPU进行相应处理。
正确霍尔换相事件(CHE)可以触发换相操作,自动更新多通道模式输出控制寄存器(MCMOUTL)。MCMOUTL用于调制6路PWM,其寄存器定义如图5,MCMPx(x = 0 -5)用于调制6路PWM (CC60 - 62,COUT60 - 62),当MCMPx = 1时,对应的PWM通道输出PWM,当MCMPx = 0时,对应的PWM输出无效电平,因此对MCMOUL的更新即可以实现对6路PWM的调制操作。


                                                 图5 寄存器MCMOUTL 定义
为了避免软件更新MCMOUTL带来的换相延迟,CCU6E添加了映射机制,使用MCMOUTSL寄存器(映射寄存器)。当正确换相事件发生时,MCMOUTSL中的内容会自动更新到MCMOUTL中,从而自动改变6路PWM的输出状态。用户程序仅需要在下次换相前更新映射寄存器MCMOUTSL即可。
定时器T13用于产生PWM信号,PWM与MCMPx (x = 0-5)进行耦合,输出到PWM 端口,产生所需的PWM。
在霍尔传感器模式中,CCU6E可以自动进行霍尔信号的滤波、采样、比较、换相操作,与传统的软件扫描相比,换相准确,换相误差小,尤其对于高速直流无刷电机等对换相误差要求高的应用领域,优势更加明显。


                                          图6 CCU6E 霍尔传感器模式示意图

4.    霍尔传感器模式在同步整流中的应用
在同步整流控制中,需要互补输出的PWM,T13无法满足要求,因此需要使用T12生成互补PWM,DTC0 – 2 用于死区时间生成。由于霍尔传感器模式中使用DTC0进行霍尔滤波操作,因此在同步整流中无法使用。在此利用CCU6E中T13可以与其他外部事件进行同步的特性,替代DTC0,完成硬件霍尔滤波。系统框图如7所示,任何霍尔信号的跳变可自动触发T13定时操作(T13TEC  = 0x07),通过设定T13周期值即可实现滤波时间的设定,当T13计数到周期设定值时,自动触发霍尔信号的采样及比较操作(HSYNC = 0x02)。PWM由T12与3个通道设定值比较产生,同时添加死区时间,当正确霍尔事件发生时,PWM信号与MCMPx耦合,输出到对应的PWM端口。
 
                                   图7  适用于同步整流的“霍尔传感器模式”示意图

5.    实验结果
本文针对上述控制方法,在英飞凌低压驱动套件上进行实现,驱动24V直流无刷电机BL3056,PWM频率15K,霍尔信号通过CCPOS0 – 2输入,霍尔输入滤波时间10us,实现同步整流控制。电机端线对地电压如图8所示。每相逆变桥的上、下管交替导通,死区时间为2us。

     
                                          图8 同步整流控制中电机端线及逆变桥驱动电压
图9为同步整流控制下,霍尔信号输入及换相之间的波形图,其中紫、黄、绿色波形为霍尔输入信号,D0 – D5为六路PWM输出信号,由图可以看出霍尔信号跳变至输出PWM换相之间的间隔为10us,正好为T13的滤波时间。


                                               图9  利用霍尔传感器模式时的换相波形
6.    结论
本文阐述了利用英飞凌XC866/846中包含的CCU6E模块实现硬件霍尔换相和同步整流的方案,并进行了验证。与传统的利用软件扫描霍尔输入的方案相比,CCU6E可以自动进行霍尔信号滤波、采样、比较及换相等操作,CPU占用率低,占有软件资源少,换相误差小,电机控制效率高,对于高速电机等对换相误差要求高的应用,具有很大优势。

参考文献:
Infineon application note:AP08026 - Brushless DC Motor Control with Hall Sensor using Infineon 8-bit XC866 Microcontroller