双凸极电机角度控制中的角度在线校正方法转让专利

申请号 : CN201210395666.2

文献号 : CN102916634B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 戴卫力丁骏田浩胡钢

申请人 : 河海大学常州校区

摘要 :

本发明公开了一种双凸极电机角度控制中的角度在线校正方法,使电机避免了由位置信号引起的三相电流不平衡,转矩脉动得到了有效地控制;主要针对由于霍尔传感器定位安装和爪盘齿槽加工不对称而引起的三相位置信号偏差问题,通过软件算法,计算出三相位置信号上升沿之间的相位差并加以补偿,进而使各相的功率MOSFET的驱动信号上升沿和下降沿严格互差120度,从而保证了三相驱动信号的导通电角度一致,进而使电机的三相输出功率平衡。

权利要求 :

1.一种双凸极电机角度控制中的角度在线校正方法,包括以下步骤:

步骤(1):电机三相位置信号中的A相、B相、C相的位置信号分别连接至DSP处理器的CAP1口和CAP4口,CAP2口,CAP3口;

步骤(2):将电机做发电运行,旋转电机,观察电机A、B、C各相的位置信号及其电势信号,若发现其中一相位置信号超前其相电势最大,则旋转装有位置传感器的定位盘,使该相位置信号上升沿与其相电势上升沿对齐,其余两相位置信号将均落后各自相电势上升沿或与各自相电势相等;

步骤(3):初始化变量、IO口与相关定时器,将CAP1、CAP2、CAP3功能口定义为I/O口,CAP4功能口定义为捕获口,使CAP4上升沿有效且使能CAP4,查询电机各相位置信号,并启动电机运行;

步骤(4):实时计算电机转速,当电机转速大于自定义切换转速SPD_N时,跳出查询启动程序,并重新初始化相关IO口:将CAP1、CAP2、CAP3功能口更改为捕获口,并使各CAP口上升沿有效并使能各CAP口,关闭CAP4使能,初始化T1定时器,给CMPR1寄存器赋初值,使能CMPR1比较中断后,循环等待中断;

步骤(5):采用提前换相实现带补偿的标准角度控制和提前角度控制,实现后恢复现场,CAP中断返回;具体是指:

当DSP捕捉到电机A相的位置信号上升沿后,进入CAP1中断,读取CAP1FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_CA后,将定时计数器重新清零,并写入捕获中断标志CAP_FLAG为1;调用DIFF与转速子程序,计算DIFF值和当前电机转速值;

读取变量DIFF_AB的值,并与M值比较,若DIFF_ABM,则比较变量DIFF_AB与DIFF/3之间的大小,若DIFF_AB>DIFF/3,则计算两者之间的误差ΔN=DIFF_AB-DIFF/3,否则ΔN= DIFF/3-DIFF_AB,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回;其中:DIFF_CA是指电机C相与A相的位置信号上升沿时间间隔所占的T1时钟计数值,DIFF_AB是指电机A相与B相的位置信号上升沿时间间隔所占的T1时钟计数值,DIFF是指电机旋转360度电角度时通用定时器T1的计数值;M:为数字取值,θ:提前角度值;

当DSP捕捉到电机B相的位置信号上升沿后,进入CAP2中断,读取CAP2FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_AB后,将定时计数器重新清零,并写入捕获中断标志CAP_FLAG为2;读取变量DIFF_BC的值,并与M值比较,若DIFF_BCDIFF/3,则ΔN=DIFF_BC-DIFF/3,否则ΔN= DIFF/3-DIFF_BC,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回;其中:DIFF_BC是指电机B相与C相的位置信号上升沿时间间隔所占的T1时钟计数值;

当DSP捕捉到电机C相的位置信号上升沿后,进入CAP3中断,读取CAP3FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_BC后,将定时计数器重新清零,写入捕获中断标志CAP_FLAG为4;读取变量DIFF_CA的值,并与M值比较;若DIFF_CADIFF/3,则ΔN=DIFF_CA-DIFF/3,否则ΔN= DIFF/3-DIFF_CA,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回;

步骤(6):比较中断:实现功率MOSFET开通或关断,即实际的电流换相;当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG等于某个特定值,则表示当前比较中断为该特定值所对应的CAP中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通对应的功率开关管;对开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。

2.根据权利要求1所述的双凸极电机角度控制中的角度在线校正方法,其特征在于:

所述步骤(6)具体是指:当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=1,则表示当前比较中断为CAP1中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率开关管S3、S4,对功率开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。

3.根据权利要求1所述的双凸极电机角度控制中的角度在线校正方法,其特征在于:

所述步骤(6)具体是指:当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=2,则表示当前比较中断为CAP2中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率开关管S5、S6;对功率开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。

4.根据权利要求1所述的双凸极电机角度控制中的角度在线校正方法,其特征在于:

所述步骤(6)具体是指:当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=4,则表示当前比较中断为CAP3中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率开关管S1、S2;对功率开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。

说明书 :

双凸极电机角度控制中的角度在线校正方法

技术领域

[0001] 本发明涉及一种双凸极电机角度控制中的角度在线校正方法,属于电机数字控制技术领域。

背景技术

[0002] 双凸极电动机的驱动控制主要分标准角度控制、提前角度控制等角度控制方式,其主要依靠霍尔位置传感器输出的三相位置信号来产生相应的逻辑驱动信号,从而控制相应地功率变换器开关动作,驱动电机旋转。在实现角度计算时,大多通过捕获位置信号的上升沿或下降沿,然后延迟相应的角度来进行角度计算控制,产生正确的逻辑驱动信号。这种驱动方法的关键在于霍尔位置传感器输出信号的正确性。如图2-1所示,即电机的霍尔位置传感器输出的三相位置信号,必须正、负脉宽180度电角度相等,A、B、C各相位置信号上升沿或下降沿严格互差180度电角度。如图2-2所示,若由于爪盘加工误差原因导致位置信号高、低电平所占电角度脉宽不相等或由于霍尔传感器在空间位置安装上的误差引起三相位置信号相差不为120度,则需要采用相应地算法对基于位置信号的角度控制给予校正。否则,电机的三相电流将会发生不对称,从而使电机的各相输出转矩不等,进而影响电机的输出转矩能力,增大电机的转矩脉动。因而,加入角度校正算法,使电机三相出力平衡,具有非常重要的意义。

发明内容

[0003] 发明目的:为了克服现有技术中存在的不足, 本发明提供一种双凸极电机角度控制中的角度在线校正方法,包括以下步骤:
[0004] 步骤(1):电机三相位置信号中的A相、B相、C相的位置信号分别连接至DSP处理器的CAP1口和CAP4口,CAP2口,CAP3口;
[0005] 步骤(2):将电机做发电运行,旋转电机,观察电机A、B、C各相的位置信号及其电势信号,若发现其中一相位置信号超前其相电势最大,则旋转装有位置传感器的定位盘,使该相位置信号上升沿与其相电势上升沿对齐,其余两相位置信号将均落后各自相电势上升沿或与各自相电势相等,如图2-3所示;
[0006] 步骤(3):初始化变量、IO口与相关定时器(T2、T3、T4),将CAP1、CAP2、CAP3功能口定义为I/O口,CAP4功能口定义为捕获口,使CAP4上升沿有效且使能CAP4,查询电机各相位置信号,并启动电机运行;
[0007] 步骤(4):实时计算电机转速,当电机转速大于自定义切换转速SPD_N时,跳出查询启动程序,并重新初始化相关IO口:将CAP1、CAP2、CAP3功能口更改为捕获口,并使各CAP口上升沿有效并使能各CAP口,关闭CAP4使能,初始化T1定时器,给CMPR1寄存器赋初值,使能CMPR1比较中断后,循环等待中断;其中,SPD_N可由用户自己根据实际情况选取,作为优选一般SPD_N>1000r/min。
[0008] 步骤(5):采用提前换相实现带补偿的标准角度控制和提前角度控制来实现恢复现场,CAP中断返回;
[0009] 步骤(6):比较中断:实现功率MOSFET开通或关断,即实际的电流换相;当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG等于某个特定值,则表示在当前比较中断为该特定值所对应的CAP中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通对应的功率开关管;对开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。
[0010] 所述步骤(5)具体是指:当DSP捕捉到电机A相的位置信号上升沿后,进入CAP1中断,读取CAP1FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_CA后,将定时计数器重新清零,并写入捕获中断标志CAP_FLAG为1;调用DIFF与转速子程序,计算DIFF值和当前电机转速值;读取变量DIFF_AB的值,并与M值比较,若DIFF_ABM,则比较变量DIFF_AB与DIFF/3之间的大小,若DIFF_AB>DIFF/3,则计算两者之间的误差ΔN=DIFF_AB-DIFF/3,否则ΔN= DIFF/3-DIFF_AB,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回;其中:DIFF_CA是指电机C相与A相的位置信号上升沿时间间隔所占的T1时钟计数值,DIFF_AB是指电机A相与B相的位置信号上升沿时间间隔所占的T1时钟计数值,DIFF是指电机旋转360度电角度时通用定时器T1的计数值。
[0011] 所述步骤(5)具体是指:当DSP捕捉到电机B相的位置信号上升沿后,进入CAP2中断,读取CAP2FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_AB后,将定时计数器重新清零,并写入捕获中断标志CAP_FLAG为2;读取变量DIFF_BC的值,并与M值比较,若DIFF_BCDIFF/3,则ΔN=DIFF_BC-DIFF/3,否则ΔN= DIFF/3-DIFF_BC,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回;其中:DIFF_BC是指电机B相与C相的位置信号上升沿时间间隔所占的T1时钟计数值。
[0012] 所述步骤(5)具体是指:当DSP捕捉到电机C相的位置信号上升沿后,进入CAP3中断,读取CAP3FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_BC后,将定时计数器重新清零,写入捕获中断标志CAP_FLAG为4;读取变量DIFF_CA的值,并与M值比较;若DIFF_CADIFF/3,则ΔN=DIFF_CA-DIFF/3,否则ΔN= DIFF/3-DIFF_CA,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回。
[0013] 特别地,在此方案中DIFF与转速值的计算放置于CAP1中断,在实际操作中,并不一定如此,也可放在CAP2中断或CAP3中断中,并不影响该方法的执行。对于角度θ,为提前角度值[各相功率开关管的导通角对于自身相电势的角度,特别地,若θ=0,则为标准角度控制。
[0014] 所述步骤(6)具体是指:当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=1,则表示当前比较中断为CAP1中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率管S3、S4,对开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。
[0015] 所述步骤(6)具体是指:当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=2,则表示当前比较中断为CAP2中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率管S5、S6;对开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。
[0016] 所述步骤(6)具体是指:当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=4,则表示当前比较中断为CAP3中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率管S1、S2;对开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。
[0017] 有益效果:本发明提供的双凸极电机角度控制中的角度在线校正方法,使电机避免了由位置信号引起的三相电流不平衡,转矩脉动得到了有效地控制;主要针对由于霍尔传感器定位安装和爪盘齿槽加工不对称而引起的三相位置信号偏差问题,通过软件算法,计算出三相位置信号上升沿之间的相位差并加以补偿,进而使各相的功率MOSFET(即PWM1,2与PWM3,4与PWM5,6)的驱动信号上升沿和下降沿严格互差120度,从而保证了三相驱动信号的导通电角度一致,进而使电机的三相输出功率平衡。

附图说明

[0018] 图1是三相桥式变换器示意图;
[0019] 图2-1是理想的电机三相位置信号与相电势示意图;
[0020] 图2-2是实际的电机三相位置信号与相电势示意图;
[0021] 图2-3是旋转霍尔定位安装盘后的电机三相位置信号与相电势示意图;
[0022] 图2-4是DSP的PWM输出信号与电机三相位置信号及相电势信号关系示意图;
[0023] 图3 是控制主程序流程图;
[0024] 图4是 CAP捕获中断控制程序流程图;
[0025] 图5是比较中断控制程序流程图;
[0026] 图6 是DIFF与速度子程序流程图;
[0027] 图中:
[0028] :输入直流电源;
[0029] S1~S6:为6个功率开关管(如MOSFET或IGBT);
[0030] ~:分别为六个续流二极管(如MOSFET的体二极管或外并二极管);
[0031] A、B、C:为三相电机绕组;
[0032] O:为电机三相绕组中性点结点;
[0033] DR1~DR6:功率MOSFET开关管S1~S6的驱动电压信号;
[0034] PWM1~PWM6:数字信号处理器DSP的PWM口输出信号,经驱动电路后分别对应为DR1~DR6功率开关管驱动信号;
[0035] CAP1~CAP4:数字信号处理器DSP的捕获口1、2、3、4;
[0036] PA、PB、PC:分别为电机A、B、C三相位置信号;
[0037] EA、EB、EC:分别为电机A、B、C三相电势波形;
[0038] θ :相对于当前电势的角度提前值(提前角度值)。
[0039] SPD_N:用户自定义切换转速,即从查询位置信号启动转换到提前换相控制的切换转速;
[0040] DIFF_CA:电机C相与A相的位置信号上升沿时间间隔所占的T1时钟计数值;
[0041] DIFF_AB:电机A相与B相的位置信号上升沿时间间隔所占的T1时钟计数值;
[0042] DIFF_BC:电机B相与C相的位置信号上升沿时间间隔所占的T1时钟计数值;
[0043] DIFF:电机旋转360度电角度时,通用定时器T1的计数值;
[0044] CAP1FIFO、CAP2FIFO、CAP3FIFO、CAP4FIFO:表示为捕获单元1、2、3、4的FIFO栈状态位,每当相应输入引脚捕获指定跳变时,所选通用定时器(T1定时器)的计数值装入到相应的FIFO栈;
[0045] CAP_FLAG:捕获中断标志;即
[0046] 当CAP_FLAG=1时,为CAP1中断(A相的位置信号上升沿捕获中断);
[0047] 当CAP_FLAG=2时,为CAP2中断(B相的位置信号上升沿捕获中断);
[0048] 当CAP_FLAG=4时,为CAP3中断(C相的位置信号上升沿捕获中断);
[0049] CMPR1—DSP中某个16位比较寄存器;
[0050] M:为数字取值,以判断有效的DIFF_CA、DIFF_AB、DIFF_BC,该数字取值稍小于当前的DIFF/3;
[0051] ΔN:DIFF_CA、DIFF_AB、DIFF_BC与DIFF/3之间时间间隔所占的T1时钟计数;
[0052] f :A相位置信号的频率;
[0053] SPEED_N:双凸极电机的当前转速;
[0054] P:双凸极电机的极对数。

具体实施方式

[0055] 下面结合附图对本发明作更进一步的说明。
[0056] 一种双凸极电机角度控制中的角度在线校正方法,包括以下步骤:
[0057] 步骤(1):如图1所示,将电机三相位置信号中的A相、B相、C相的位置信号分别连接至DSP处理器的CAP1口和CAP4口,CAP2口,CAP3口;
[0058] 步骤(2):将电机做发电运行,旋转电机,观察电机A、B、C各相的位置信号及其电势信号,如图2-1至图2-2所示,若发现其中一相位置信号超前其相电势最大,则旋转装有位置传感器的定位盘,使该相位置信号上升沿与其相电势上升沿对齐,其余两相位置信号将均落后各自相电势上升沿或与各自相电势相等,如图2-3所示;
[0059] 步骤(3): 初始化变量、IO口与相关定时器(T2、T3、T4),使CAP口上升沿有效,查询电机各相位置信号,并启动电机运行;如图3所示,电机电动运行主体控制流程(基于TI公司的TMS320LF2407处理器),具体如下:
[0060] 1)初始化用户自定义变量,如:CAP_FLAG、DIFF、DIFF_AB、DIFF_CA、DIFF_BC、M、ΔN,对其赋初值为0;同时,清空CAPFIFO;
[0061] 2)初始化并定义相关I/O功能口,将CAP1、CAP2、CAP3功能口定义为I/O输入口,CAP4功能口定义为捕获口,PWM1-PWM6功能口为I/O输出口;
[0062] 3)初始化T2、T3、T4定时器,并对相应定时器计数器清零;
[0063] 4)使能CAP4中断和T3中断,清空CAP4FIFO,清中断标志,开总中断;
[0064] 步骤(4): 执行位置查询启动程序,电机开始运行,当转速超过预定切换转速SPD_N时,跳出位置查询启动程序,重新定义I/O口并初始化T1定时器,并禁止CAP4中断,同时,将CAP1、CAP2、CAP3功能口定义为捕获口,并使能CAP1、CAP2、CAP3中断,给CMPR1积存器赋初值,使能比较中断CMPR1,循环等待中断;
[0065] 步骤(5):采用提前换相实现带补偿的标准角度控制和提前角度控制来实现恢复现场,CAP中断返回;如图4所示;
[0066] 当DSP捕捉到电机A相的位置信号上升沿后,进入CAP1中断,读取CAP1FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_CA(C相与A相的位置信号上升沿时间间隔所占的T1时钟计数)后,将定时计数器重新清零,并写入捕获中断标志CAP_FLAG为1;调用DIFF与转速子程序,如图6所示,计算DIFF值和当前电机转速值。读取变量DIFF_AB(A相与B相的位置信号上升沿时间间隔所占的T1时钟计数)的值,并与M值比较(M值的设定可稍小于进入CAP1中断时的DIFF值),若DIFF_ABM,则比较变量DIFF_AB与DIFF/3之间的大小,若DIFF_AB>DIFF/3,则计算两者之间的误差ΔN=DIFF_AB-DIFF/3,否则ΔN= DIFF/3-DIFF_AB,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回。
[0067] 同理,当DSP捕捉到电机B相的位置信号上升沿后,进入CAP2中断,读取CAP2FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_AB后,将定时计数器重新清零,并写入捕获中断标志CAP_FLAG为2。读取变量DIFF_BC(B相与C相的位置信号上升沿时间间隔所占的T1时钟计数)的值,并与M值比较,若DIFF_BCDIFF/3,则ΔN=DIFF_BC-DIFF/3,否则ΔN= DIFF/3-DIFF_BC,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回。
[0068] 同理,当DSP捕捉到电机C相的位置信号上升沿后,进入CAP3中断,读取CAP3FIFO口中的定时器计数值,将读到的计数值赋给临时变量DIFF_BC后,将定时计数器重新清零,写入捕获中断标志CAP_FLAG为4;读取变量DIFF_CA的值,并与M值比较。若DIFF_CADIFF/3,则ΔN=DIFF_CA-DIFF/3,否则ΔN= DIFF/3-DIFF_CA,然后计算(120-θ)DIFF/3+ΔN并将计算值赋给CMPR1后,恢复现场,中断返回。
[0069] 特别地,在此方案中DIFF与转速值的计算放置于CAP1中断,在实际操作中,并不一定如此,也可放在CAP2中断或CAP3中断中,并不影响该方法的执行。对于角度θ,为提前角度值[各相功率开关管的导通角对于自身相电势的角度,如图2-4所示,特别地,若θ=0,则为标准角度控制。
[0070] 步骤(6):如图5所示,比较中断:实现功率MOSFET开通或关断,即实际的电流换相;当定时器等于比较寄存器CMPR1中的数值时,比较中断响应,进入比较中断入口,而后关CAP中断和比较中断使能,并读取CAP口捕获中断标志,若CAP_FLAG=1,则表示当前比较中断为CAP1中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率管S3、S4;若CAP_FLAG=2,则表示当前比较中断为CAP2中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率管S5、S6;若CAP_FLAG=4,则表示当前比较中断为CAP3中断之后,则首先关闭所有的功率开关管,插入死区时间Δt,而后开通功率管S1、S2;对开关管进行关闭或开通后,使能CAP和比较中断,恢复现场,返回中断。
[0071] 以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。