一种位置信号倍频的开关磁阻电机相电流迭代控制方法转让专利

申请号 : CN201710459928.X

文献号 : CN108075697B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王星

申请人 : 烟台仙崴机电有限公司

摘要 :

本发明涉及一种基于位置信号倍频的开关磁阻电机相电流迭代学习控制方法,该方法包括利用CPLD实现了具有输入限定功能的边沿检测电路和位置信号倍频电路,并利用该电路实现基于P型开闭环迭代学习的相电流控制,达到对开关磁阻电机相电流精确跟踪,具有良好的工程应用价值。

权利要求 :

1.一种基于P型开闭环迭代学习的开关磁阻电机相电流控制方法,其特征在于,包括如下步骤:a)具体控制过程为:

根据给定电流与实际相电流求得电流偏差ek+1(t),同时将该偏差存入存储器,以供下一个导通周期使用;

将本周期电流偏差ek+1(t)和上一周期电流偏差ek(t)利用乘法器作运算后得到迭代学习控制更新率的实际值;

将更新率的实际值与上一周期的控制输出量uk(t)相加得到本周期的控制输出量uk+1(t),同时将该输出控制量存入存储器,以供下一个导通周期使用;

通过更新的控制输出量调节下一个导通周期的PWM控制器占空比;

PWM控制器根据给定的占空比信号控制功率开关管的通断,完成对给定电流的跟踪;

b)采用CPLD对开关磁阻电机位置信号倍频,具体为:

T1、T2、T3三个计数寄存器,其中T1是存放检测到上升沿和检测到下降沿之间的计数值,T3是存放的计数暂存值,T2按照如下公式算出:其中n为自然数,也就是将一相绕组的导通角均分为2n等份,区分出2n个不同的位置点,在一相绕组循环导通的过程中进行相电流控制;

当检测到上升沿或者T3与T2相等的时候输出电平会取反操作,同时通过I/O端口直接通信的方式将输出电平的变化信息传递给单片机,进而单片机中的捕获模块产生中断,执行上述控制过程。

2.根据权利要求1所述的基于P型开闭环迭代学习的开关磁阻电机相电流控制方法,其特征在于,包括:在程序中设定六个寄存器,形成六级寄存器,这六级寄存器相当于六个D触发器;

在触发时钟下降沿到来时,首先把被测信号数据送入第一个寄存器中,然后在下一个触发时钟下降沿到来时,将第一个寄存器中的数据存入第二个寄存器,从时间上来看第二个寄存器中的数据始终比第一个寄存器晚一个时钟周期,以此类推到第六个数据;

上升沿检测是对前三个寄存器的数据Q1、Q2、Q3或非操作,同时对后三个寄存器中的数据Q4、Q5、Q6与操作,这两个操作后分别得到的两个数据再进行相与后赋值给变量rise,并维持一个周期,如果变量rise由0变为1则说明此时是电机一相位置信号的上升沿;

下降沿检测是对前三个寄存器的数据Q1、Q2、Q3与操作,同时对后三个寄存器中的数据Q4、Q5、Q6或非操作,这两个操作后分别得到的两个数据再进行相与后赋值给变量fall,并维持一个周期,如果变量fall由0变为1则说明此时是电机一相位置信号的下降沿。

说明书 :

一种位置信号倍频的开关磁阻电机相电流迭代控制方法

技术领域:

[0001] 本发明涉及开关磁阻电机控制技术领域,具体为一种相电流精确控制方法。背景技术:
[0002] 虽然开关磁阻电机具有结构简单、运行可靠、效率高、制造成本低等一系列优点,但由于其定子、转子的双凸极结构,相电感值随转子位置显著变化而且工作于深度磁饱和区,使得开关磁阻电机成为一个多变量、强耦合、高度非线性的系统,因此对其相电流很难达到精确的控制。而目前常用的电流控制策略又存在相电流跟踪不精确、复杂程度高、在线计算量大和开关频率要求高等问题,使得整个系统的调速性能受到一定程度影响。迭代学习控制可以在被控系统模型未知的情况下,使得非线性的被控系统以较高精度跟踪预定轨迹,所以适合解决开关磁阻电机没有精确数学模型,不易被准确预知和确定的问题。采用光电式位置传感器只能检测到位置信号的上升沿和下降沿这两点,无法对这两点之间的其它点进行检测,也就无法满足迭代学习控制策略高分辨率位置信号的要求。发明内容:
[0003] 针对上述现有技术的缺陷,本发明提供一种基于P型开闭环迭代学习的开关磁阻电机相电流控制方法,以实现对开关磁阻电机相电流的精确跟踪。
[0004] 为实现上述目的,本发明实施例采用以下技术方案:
[0005] 1.一种基于P型开闭环迭代学习的开关磁阻电机相电流控制方法,其特征在于,包括如下步骤:
[0006] a)具体控制过程为:
[0007] 根据给定电流与实际相电流求得电流偏差ek+1(t),同时将该偏差存入存储器,以供下一个导通周期使用;
[0008] 将本周期电流偏差ek+1(t)和上一周期电流偏差ek(t)利用乘法器作运算后得到迭代学习控制更新率的实际值;
[0009] 将更新率的实际值与上一周期的控制输出量uk(t)相加得到本周期的控制输出量uk+1(t),同时将该输出控制量存入存储器,以供下一个导通周期使用;
[0010] 通过更新的控制输出量调节该位置点的PWM控制器占空比;
[0011] PWM控制器根据给定的占空比信号控制功率开关管的通断,完成对给定电流的跟踪;
[0012] b)采用CPLD对开关磁阻电机位置信号倍频,具体为:
[0013] T1、T2、T3三个计数寄存器,其中T1是存放检测到上升沿和检测到下降沿之间的计数值,T3是存放的计数暂存值,T2按照如下公式算出:
[0014]
[0015] 其中n为自然数,也就是将一相绕组的导通角均分为2n等份,区分出2n个不同的位置点在一相绕组循环导通的过程中进行相应的算法控制;
[0016] 当检测到上升沿或者T3与T2相等的时候输出电平会取反操作,同时通过I/O端口直接通信的方式将输出电平的的变化信息传递给单片机,进而单片机中的捕获模块产生中断,执行上述控制过程。
[0017] 2.根据权利要求1所述的基于P型开闭环迭代学习的开关磁阻电机相电流控制方法,其特征在于,包括:
[0018] 在程序中设定六个寄存器,形成六级寄存器,这六级寄存器相当于六个D触发器;
[0019] 在触发时钟下降沿到来时,首先把被测信号数据送入第一个寄存器中,然后在下一个触发时钟下降沿到来时,将第一个寄存器中的数据存入第二个寄存器,从时间上来看第二个寄存器中的数据始终比第一个寄存器晚一个时钟周期,以此类推到第六个数据;
[0020] 上升沿检测是对前三个寄存器的数据Q1、Q2、Q3或非操作,同时对后三个寄存器中的数据Q4、Q5、Q6与操作,这两个操作后分别得到的两个数据再进行相与后赋值给变量rise,并维持一个周期。,如果变量rise由0变为1则说明此时是电机一相位置信号的上升沿;
[0021] 下降沿检测是对前三个寄存器的数据Q1、Q2、Q3与操作,同时对后三个寄存器中的数据Q4、Q5、Q6或非操作,这两个操作后分别得到的两个数据再进行相与后赋值给变量fall,并维持一个周期。如果变量fall由0变为1则说明此时是电机一相位置信号的下降沿。附图说明:
[0022] 图1是电流P型开闭环迭代学习控制结构图;
[0023] 图2是上升沿检测电路;
[0024] 图3是下降沿检测电路;
[0025] 图4是边沿信号倍频模块执行流程图。具体实施方式:
[0026] 下面结合附图对本发明的实施例作进一步的描述:
[0027] 如图1所示,本发明的基于P型开闭环迭代学习的开关磁阻电机相电流控制方法,[0028] 根据给定电流与实际相电流求得电流偏差ek+1(t),同时将该偏差存入存储器,以供下一个导通周期使用;
[0029] 将本周期电流偏差ek+1(t)和上一周期电流偏差ek(t)利用乘法器作运算后得到迭代学习控制更新率的实际值;
[0030] 将更新率的实际值与上一周期的控制输出量uk(t)相加得到本周期的控制输出量uk+1(t),同时将该输出控制量存入存储器,以供下一个导通周期使用;
[0031] 通过更新的控制输出量调节下一个导通周期的PWM控制器占空比;
[0032] PWM控制器根据给定的占空比信号控制功率开关管的通断,完成对给定电流的跟踪。
[0033] 如图2和图3所示,data表示整形电路连接到CPLD的I/O引脚上的位置信号电平信号,clk是时钟触发信号,采用时钟信号下降沿触发的方式,rst是复位信号。
[0034] 该边沿检测电路需要在程序中设定六个寄存器,形成六级寄存器,这六级寄存器相当于六个D触发器。在触发时钟下降沿到来时,首先把被测信号数据送入第一个寄存器中,然后在下一个触发时钟下降沿到来时,将第一个寄存器中的数据存入第二个寄存器,从时间上来看第二个寄存器中的数据始终比第一个寄存器晚一个时钟周期,以此类推到第六个数据。上升沿检测是对前三个寄存器的数据Q1、Q2、Q3或非操作,同时对后三个寄存器中的数据Q4、Q5、Q6与操作,这两个操作后分别得到的两个数据再进行相与后赋值给变量rise,并维持一个周期。如果变量rise由0变为1则说明此时是电机一相位置信号的上升沿。如果是检测下降沿,是对前三个寄存器的数据Q1、Q2、Q3与操作,同时对后三个寄存器中的数据Q4、Q5、Q6或非操作,这两个操作后分别得到的两个数据再进行相与后赋值给变量fall,并维持一个周期。如果变量fall由0变为1则说明此时是电机一相位置信号的下降沿。采用六级寄存器的方式主要是为了尽量避免由于电机抖动或者其它干扰造成位置信号检测不准确对边沿检测所造成的影响。
[0035] 边沿信号倍频模块执行具体过程如图4所示。由于程序中描述的是硬件,可以在同一时间有很多硬件电路一起并行动作,因此需要加入上升沿和下降沿标志位才能正确处理时序关系。T1、T2、T3是三个计数寄存器,其中T1是存放检测到上升沿和检测到下降沿之间的计数值,T3是存放的计数暂存值。
[0036] 边沿信号倍频模块采用时钟信号上升沿触发的方式,因此当时钟信号上升沿到来的时候会进行一次判断。当检测到上升沿或者T3与T2相等的时候输出电平会取反操作,同时通过I/O端口直接通信的方式将输出电平的变化信息传递给单片机,进而单片机中的捕获模块产生中断,最终在中断服务子函数中进行迭代学习控制。