场定向控制架构中的异步状态估计及控制的制作方法

文档序号:12728522阅读:212来源:国知局
场定向控制架构中的异步状态估计及控制的制作方法与工艺

不适用。

关于联邦政府资助的研究或开发的声明

不适用。

技术领域

本发明属于电机控制系统领域。更具体来说,此说明书中描述的实施例涉及电动马达的场定向控制。



背景技术:

场定向控制(“FOC”)在用于AC电动马达的现代控制系统中已变得司空见惯。根据此方法,例如通过脉冲宽度调制以使得最大化马达的转矩/安培性能的方式驱动AC马达的定子绕组。AC马达的场定向控制是一项复杂的任务,这是因为定子中的磁场旋转相对于转子的旋转磁场可为异步的,使得AC马达的操作特性描述涉及具有时变系数的一组微分方程式。

已广泛采用现代高速可编程微控制器以执行准确的场定向控制所需的复杂计算。许多AC马达控制算法是基于众所周知的“帕克(Park)”变换,其将可适用的具有角相依系数的一组微分方程式变换成独立于马达角的一组微分方程式。特定来说,帕克变换根据旋转二维(d、q)坐标系考虑马达操作,其中轴d与场磁链分量(即,转子磁通)对准,且正交轴q与转矩分量对准。通过分离场磁链与转矩分量,可控制马达转矩而不影响场磁通。此解耦使得能够使用例如动态转矩控制及速度控制的技术,所述动态转矩控制或速度控制中任一者可针对实际控制器实例化运用比例和积分(PI)控制算法及类似物。

图1a说明用于控制AC马达的操作的常规FOC控制器架构。在此架构中,速度控制器功能10是从速度/位置估计器18接收所期望的马达速度输入信号wd[n]以及反馈转子速率估计的控制功能。速度控制器10通常将例如比例积分控制函数的函数应用到马达速度输入信号wd[n]与速率估计信号之间的差(即,误差信号),以产生用于施加于误差产生器2q的所期望的正交相位参考电流信号Iqd。误差产生器2q从正交相位参考电流信号Iqd减去正交相位反馈电流Iq,以产生施加于比例积分(PI)控制器4q的误差信号εq。类似地,误差产生器2d接收所期望的直接相位参考电流Idd及直接相位反馈电流Id,并产生施加于比例积分(PI)控制器4d的误差信号εd。PI控制器4q、4d各自将例如比例及积分函数的组合的常规控制函数分别应用到误差信号εq、εd,以产生对应的相应直接相位控制信号Vd及正交相位控制信号Vq,这两者都被施加于逆帕克变换功能5。逆帕克变换功能5将d相位控制信号Vd及q相位控制信号Vq变换成空间固定的α相位控制信号Vα及β相位控制信号Vβ,并将那些信号施加于空间向量产生器7,空间向量产生器7又产生表达对应马达相位的工作循环(即,脉冲宽度)的三相数据信号Ta、Tb、Tc;将这些数据信号施加于PWM驱动器8,PWM驱动器8产生经由电力驱动器9及逆变器11施加于马达M的定子绕组的脉冲。PWM驱动器8通常包含计时器,其响应于数据信号Ta、Tb、Tc控制每一驱动脉冲的开始及停止时间。

此架构中的控制环路的反馈侧从多个源接收反馈信号,全部此类源都基于马达M处的感测器及对应感测电路13。反馈信号的一个源是由ADC 14a基于来自感测电路13的输出产生的一组电流样本流Iabc,且所述电流样本流表示由马达M的转子随着其旋转在定子绕组中感生的电流。另一组反馈信号是对应于在定子绕组中的每一者处感测到的电压的电压样本流Vabc,由ADC 14b将其数字化。另外,此架构中的ADC 14c从电压供应源接收信号,并产生对应于参考总线的电压电平的电压样本流Vbus。在所属领域中典型地,将来自ADC 14a的电流样本流Iabc施加于克拉克(Clarke)变换功能16a,以产生空间固定的α及β相位反馈信号Iαβ,从而将微分方程式的三相时变系统变换成两坐标时变系统。将这些变换的反馈信号Iαβ输入到帕克变换功能17a,帕克变换功能17a又分别产生直接相位反馈电流Id及正交相位反馈电流Iq。类似地,将来自ADC 26b的电压样本流Vabc输入到克拉克变换功能16b以产生空间固定的α及β相位反馈信号Vαβ,又将α及β相位反馈信号Vαβ输入到帕克变换功能17b,帕克变换功能17b产生直接相位反馈电压Vd及正交相位反馈电压Vq。将这些直接相位反馈电流Id及正交相位反馈电流Iq,及对应的直接相位反馈电压Vd及正交相位反馈电压Vq施加于速度/位置估计器功能18,速度/位置估计器功能18产生对应于由ADC 14a到14c在样本周期n(即,在时刻n·Ts处,其中Ts是ADC 14的样本周期)中获取的测量值的转子位置估计及转子速率估计将此当前转子速率估计施加于如上文提及的速度控制器功能10。

如所属领域中已知,帕克变换计算要求已知转子位置,即,转子角度,以便将d轴对准到转子磁通。因而,在图1a的此常规架构中,由速度/位置估计器18产生样本周期n的当前转子位置的估计且将其施加于反馈环路中的帕克变换功能17a。逆帕克变换功能5也要求转子位置的某一估计,但因为其涉及下一时间间隔(即,样本时间(n+1)·Ts处)的相位驱动信号的产生,所以此常规架构中的速度/位置估计器18针对那个下一时间间隔n+1产生转子位置估计且将那个估计施加于逆帕克变换功能5。常规地,速度/位置估计器18通过将当前转子速率估计乘以样本周期(Ts),并将转子位置的那个增量加入到当前转子位置估计以预测样本时间(n+1)·Ts处的转子位置而产生此前瞻性转子位置估计

现代马达控制架构(例如,图1a中所展示的马达控制架构)通常针对驱动相位中的每一者递送呈脉冲宽度调制信号形式的驱动命令。图1b说明马达M的三个相位的脉冲宽度调制驱动信号PWMa到PWMc的对准的实例。如图1b中所展示,信号PWMa到PWMc中的每一者的中点在样本周期n(即,时间nTs与(n+1)Ts之间)与n+1(时间(n+1)Ts与(n+2)Ts之间)中的每一者内的中点时间Ts/2处对准。

常规数字FOC架构(例如,图1a中所展示的数字FOC架构)以对应于周期Ts(即,ADC 14的样本周期)的采样频率fs在离散的时间域中进行操作。在这些常规架构中,速度/位置估计器18操作的频率也是那个相同频率fs,使得针对在反馈环路中对输入数据进行采样的每一时间间隔产生转子位置及速率的估计,且因此针对在控制环路中将产生脉冲宽度调制信号的每一时间间隔产生转子位置及速率的估计。因而,在每一周期Ts中,图1a的控制器的反馈环路确定当前转子速率估计前瞻性转子位置估计及反馈电流Id、Iq的控制信号,且控制环路确定将由PWM驱动器8产生的PWM信号。

然而,已观测到速度/位置估计器18用于产生转子位置及速率的估计所需的计算时间通常是可控制马达的频率的限制因素。举例来说,即使是针对现代高性能微控制器,计算转子位置及速率估计所需的最小时间通常是大约50μsec,其将控制频率限制为不快于大约20kHz。因此,不得不牺牲速度追踪性能的准确性或利用更复杂(例如,多处理器)架构以便达到现代快速响应马达所期望的更高带宽马达控制。

通过另一背景,与本案一起受让且通过此引用并入本文中的2015年3月31日申请的共同待决的序列号为14/675,196号美国申请案描述马达控制器架构,所述马达控制器架构包含用于选择将在转子位置的估计(针对其,脉冲宽度调制驱动信号将施加于多相电动马达)中应用的分数延迟补偿值的功能,以补偿通过将样本周期内的多相PWM信号相互对准而必要的半周期延迟(如图1b中所展示)及来自外部控制器组件及其它因素的其它实施相依延迟。



技术实现要素:

所揭示的实施例中的一或多者提供一种控制器架构及对应控制方法,其能够以一种不受状态估计功能的计算能力限制的方式高带宽控制电机(例如,AC电动马达)。

所揭示的实施例中的一或多者提供此类架构及方法,其可以计算上有效的方式且无需额外外部电路或组件地实施到现存控制环路中。

所揭示的实施例中的一或多者提供此类架构及方法,其中可释放控制器的计算能力以用于除状态估计外的功能。

参考以下说明书和其图式的所属领域的一般技术人员将明白所揭示的实施例的其它目的及优点。

根据某些实施例,电动马达的控制架构及对应控制方法包含与所述马达的控制环路异步操作的状态估计功能。来自马达的反馈数据样本在由状态估计功能接收到时被加上时间戳。例如电动马达的转子位置及转子速率的估计的状态估计由控制器执行,作为相对于在下一控制周期中施加于马达的控制信号的产生的后台任务。当计算出状态估计时,其被存储有相同时间戳以指示对应输入数据的样本周期。控制信号是基于最近计算的状态估计,更新到基于那些最近的状态估计的时间戳的操作控制周期。

附图说明

图1a是常规马达控制器架构的功能框图。

图1b是说明脉冲宽度调制(PWM)输出控制信号的常规对准的时序图。

图2是根据实施例的马达控制器架构的框图。

图3是根据图2的实施例的用于马达控制的微控制器架构的数字部分的功能框图。

图4是根据实施例的说明图2及3的架构的操作的实例的时序图。

图5是根据图4的实施例的如存储于数据存储器中的具有时间戳的输入数据样本及具有时间戳的估计器输出数据的实例的图。

图6是根据图4及5的实施例的中断服务例程周期内的控制、命令及执行任务的操作的流程图。

具体实施方式

将此说明书中描述的一或多个实施例实施到用于永磁同步马达(PMSM)的控制系统中,更具体来说,在用于此类马达的场定向控制(FOC)的上下文中,这是因为预期这些实施例特别有利地实施于那个上下文中。然而,也应预期,本发明的概念可有利地应用于其它应用中,例如,AC感应马达及其它类型的AC马达及机器。因此,应理解,仅通过实例提供以下描述,且其不希望限制如所主张的本发明的真正范围。

图2以框图的形式说明根据实施例的用于电机的场定向控制(FOC)控制系统的实例。在图2的实例中,在此系统的控制下的电机是永磁同步马达M,其具有以常规方式相对于彼此120°异相布置的三个定子绕组。如参考此说明书的所属领域的技术人员将明白,马达M中的相位的数目可不同于图2中所展示的三个相位。在此实施例中,许多控制架构由可编程微控制器集成电路(MCU)20实施,从而能够在数字域中执行许多计算及控制环路功能。适于用作根据这些实施例的MCU 20的集成电路的实例包含可从德州仪器公司(Texas Instruments Incorporated)购买的C2000及MSP430系列的微控制器。在图2的实例中,MCU 20包含微控制器处理器单元22,其从MCU 20外接收所期望的直接相位参考电流信号Idd及所期望的马达速度信号wd[n],以及从马达M接收反馈信号,如下文将描述。处理器单元22耦合到程序存储器24p,其存储用于由处理器单元22检索并对接收到的参考及反馈信号执行的程序指令;根据此实施例,存储于程序存储器24p中的程序指令致使处理器单元22执行此说明书中描述的各种控制功能。处理器单元22也耦合到数据存储器24d,其存储在处理器单元22的马达控制操作中由处理器单元22应用及计算的数据。由处理器单元22执行此程序的结果是三相数据信号Tabc,其指示将驱动马达M的三个相位(即,分别是相位a、b、c)的脉冲宽度调制工作循环。将数据信号Tabc施加于MCU 20中的PWM驱动器8,PWM驱动器8又产生施加于电力驱动器电路9的输出控制信号,电力驱动器电路9又在线PWM(a、b、c)上以适当频率及相位产生施加于用于以所期望的速度驱动马达M的三相逆变器11的对应脉冲宽度调制脉冲。

如下文将描述,在这些实施例中,相对于彼此异步地执行状态估计及控制功能,这有助于使用协处理器架构执行状态估计例程。在图2中由任选的估计器协处理器23说明用于MCU 20的此协处理器架构,估计器协处理器23与MCU 20内的处理器单元22密切通信,且其根据由ADC 14获取的数字化反馈信号执行转子位置及速率的估计。适于用作估计器协处理器23的适当协处理器的实例包含可从德州仪器公司购买的TMS320x2803/6x PICCOLO及TMS320F2837xD双核DELFINO控制律加速器(CLA)。应预期,参考此说明书的所属领域的技术人员将能够容易地在此类协处理器架构中实施状态估计功能而无需过度实验。替代地,处理器单元22本身可根据这些实施例执行下文描述的状态估计功能。

图2的控制系统的反馈侧包含电流传感器13,其在此实例中感测马达M的定子中的每一者处的电气条件。在针对此实施例的以下描述中将显而易见的是,这些电气条件对应于定子绕组中的电流及指示随转子位置或转子角而变化的定子绕组电感的电压(术语“转子位置”及“转子角”在此描述中同义地使用)。在此实例中,经由常规模拟电流电路13b将感测到的这些电气参数传达到MCU 20中的模/数转换器(ADC)14。MCU 20中的ADC 14以样本时钟Ts的频率对这些信号进行采样,以产生表示在马达M处感测到的电气参数的数字数据值。接着,将那些数字采样值施加于处理器单元22以用于根据存储于程序存储器24p(在下文进一步详细描述程序存储器24p)中的程序指令中所表达的控制算法进行处理,以产生适当的驱动信号来控制马达M。

根据此实施例,MCU 20以多任务控制系统的形式进行操作,在所述多任务控制系统内在中断服务例程(ISR)内执行控制算法。此ISR(例如)以对应于采样频率(即,由反馈环路中的ADC 14获得输入样本的频率)或控制环路频率(即,产生多相控制信号Tabc的频率)或所述两者(在以与获取输入数据样本相同的频率施加马达控制的情况中,如常规FOC马达控制系统中的常见情况)的频率周期性地运行。在此多任务环境中,MCU 20可执行除周期马达控制功能外的各种命令,此类命令是从实施马达M的设备的高级应用程序发出。举例来说,马达M可为在执行功能时执行高级操作应用程序的设备、机器人、或其它更大规模的工业或环境(即,HVAC)系统中的马达。因而,可在更大规模的计算或功能系统中实现图2的马达控制架构,其中其它处理器等等在那种高级应用程序的上下文内将命令提供到MCU 20。除执行那些命令外,也要求处理器单元22(且,如果被实施,估计器协处理器23)执行状态估计功能,如下文将进一步详细描述。在此实施例的ISR上下文中,将中断处置器50提供于MCU 20中的速度/位置估计器功能48(及图3的架构的其它控制功能)内或结合速度/位置估计器功能48一起提供,以接收有关马达控制、外部命令、及状态估计功能的中断INTn并根据优先级方案在采样周期内调度那些功能的执行。在此实施例中,时间戳计数器(TS CTR)52也实施于MCU 20内,以结合如下文将描述的状态估计功能一起使用,且时间戳计数器52可由常规16位或32位数字计数器实现,其由实时时钟信号CNT时钟控制,以使其内容可基于时钟信号CNT的每一循环根据情况递增或递减。

在图2的实例中,PWM驱动器8及ADC 14实施于MCU 20内,即,在与处理器单元22相同的集成电路中。因此,PWM驱动器8及ADC 14的此集成遵循上文提及的C2000 MCU的架构。替代地,PWM驱动器8及ADC 14可相对于处理器单元22实施于“芯片外”,如所属领域中已知。另外,图2的实例说明也集成到与处理器单元22相同的集成电路中的程序存储器24p;替代地,程序存储器24p当然可在必要时实施于单独的集成电路中。在任何情况中,应预期,MCU 20的除图2中所展示的那些外的其它功能及接口将以常规方式实现,举例来说,适于上文提及的C2000及MSP430 MCU架构地实现。

此外,在替代性实例中,MCU 20的功能可实现于其它架构中,且不一定由可编程逻辑装置来实施。举例来说,这些功能可整体或部分实现为定制逻辑装置。应预期,参考此说明书的所属领域的技术人员将能够容易地根据特定实施方案所期望的电路实施本文中描述的控制器功能。

图3说明根据实施例的场定向控制(FOC)马达控制系统的功能架构,举例来说,如可实施于图2的硬件架构中的MCU 20内。指示所期望的马达速度的外部控制信号wd[n]由速度控制器30接收,速度控制器30还接收马达M的当前转子速率的估计如由此架构的反馈环路部分所确定。速度控制器30(例如)通过应用常规控制功能基于这两个输入产生所期望的正交相位电流Iqd。所期望的正交相位电流Iqd对应于所期望的转矩分量(即,d、q域中的q分量),且将所期望的正交相位电流Iqd连同正交相位反馈电流Iq一起施加于误差产生器32q。误差产生器32q产生对应于分别的正交相位参考电流Iqd及正交相位反馈电流Iq的差值的正交相位误差信号εq,且正交相位误差信号εq被施加于比例积分(PI)控制器34q。PI控制器34q将常规控制功能(例如,比例积分)施加于那个正交相位误差信号εq,以产生应用到逆帕克变换功能36的正交相位控制信号Vq。针对直接相位d分量,误差产生器32d类似地接收所期望的直接相位电流Idd和反馈电流Id,且将对应于那两个电流的差值的误差信号εd转送到比例积分(PI)控制器34d。控制器34d又将例如比例及积分功能的组合的常规控制功能应用于此误差信号εd以产生以用于施加于逆帕克变换功能36的直接相位控制信号Vd。

如上文关于图1a所描述,逆帕克变换功能35将d相位控制信号Vd及q相位控制信号Vq变换成空间固定的α及β相位控制信号Vαβ。那个逆帕克变换要求已知转子位置(更具体来说,转子磁通或场磁链角),在此实施例中,转子位置是由速度/位置估计器功能48供应作为下一控制循环[n+1]的转子位置估计将在下文进一步详细描述根据这些实施例的此转子位置估计的产生。如图3中所展示,将来自逆帕克变换功能36的相位控制信号Vαβ施加于空间向量产生器38,空间向量产生器38产生供应到PWM驱动器8(图2)的三相数据信号Tabc。

必要时,分数延迟补偿器功能可任选地包含于图3的功能架构中,以基于由速度/位置估计器功能48产生的转子位置估计及转子速率估计的值产生延迟补偿转子位置估计如上文并入的序列号为14/675,196的美国申请案中所描述。此延迟补偿转子位置估计是在下一样本周期n+1中的时间点的转子位置的估计,在所述时间点处将输出控制信号Tabc施加于马达M(尤其是那个下一样本周期内的在由包含控制架构中可影响将驱动信号施加于马达M的全部延迟的分数延迟k所指示的时间点(分数延迟时间k·Ts))。替代地,可实施对起因于样本周期内多相PWM信号的相互对准的半周期延迟的补偿,举例来说,如以引用方式并入本文中的贝(Bae)等人的“用于PWM AC驱动器的全数字同步帧电流调节器的时间延迟的补偿方法(A Compensation Method for Time Delay of Full-Digital Synchronous Frame Current Regulator of PWM AC Drivers)”中所描述。

在此架构中的控制环路的反馈侧上,克拉克变换功能46a接收与三个马达相位相关联且在当前样本周期n所获取的如由ADC 14基于由感测器11(图2)感测到的电气参数产生的采样电流Iabc。此样本周期n对应于产生控制信号并将所述控制信号施加于马达M的周期;ADC 14的样本速率可与此控制环路样本频率不同(即,是更高速率)。从这些输入,克拉克变换功能46a产生空间固定的α及β相位反馈信号Iαβ,又将α及β相位反馈信号Iαβ施加于帕克变换功能47a以分别产生d相位反馈信号Id及q相位反馈信号Iq。将这些反馈信号Id、Iq分别施加于误差产生器32d、32q,如上文所论述。类似地,克拉克变换功能46b从ADC 14接收采样的电压Vabc,且产生α及β相位电压反馈信号Vαβ,将信号Vαβ施加于帕克变换功能47b以分别产生d相位电压反馈信号Vd及q相位电压反馈信号Vq。将电流反馈信号Id、Iq及电压反馈信号Vd、Vq、以及从ADC 14感测到的总线电压Vbus转送到速度/位置估计器功能48,速度/位置估计器功能48将产生状态(例如,转子位置及速率)估计以用于如下文将结合这些实施例描述的控制环路中。

如上文所描述,图3中所展示的实施例中的FOC马达控制系统的架构是相对高性能架构,因为其从相对较大的一组传感器信号(即,来自三个马达相位的三个电流Iabc、来自三个电压相位的三个电压Vabc、及总线电压Vbus)产生其反馈信号Id、Iq、Vd、Vq。然而,应预期,这些实施例可实施于其它FOC马达控制架构中,其包含其中对较少传感器信号进行采样并将其施加于反馈环路的马达控制架构。举例来说,这些实施例可实施于基于两种采样的电流(来自马达相位中的两者)及总线电压Vbus的系统中。在其中获得较少的采样信号的此类架构中,应预期,可从所采样的信号值估计其它项(例如,其它相位的电压及电流)的必要值,如所属领域中已知。此类估计的实例包含以下实例:其中测量三个相位电流中的一或两者、估计其它相位电流、测量总线电压Vbus、及估计三个电压Vabc中的部分或全部;及其中测量总线电流Ibus、估计相位电流、测量总线电压Vbus、及估计三个电压Vabc的部分或全部,等等。在任何情况中,只要可确定适当的反馈信号及度量信号,那么根据这些实施例的控制算法就无需以特定方式确定度量信号。

应预期,图3中说明的功能架构可实施于存储于程序存储器24p中且由处理器单元22(且如果实施,图2的MCU 20中的估计器协处理器23)执行的软件例程中。将例如MCU 20内的PWM驱动器8、ADC 14的功能实施为硬件功能,将如图2中所展示的电力驱动器9、逆变器11、及电流电路13的模拟功能也实施为硬件功能。替代地,当然,应预期,用于实施根据这些实施例的特定功能的硬件对软件的选择可不同于仅通过实例展示的此布置。

如上文所提及,速度/位置估计器功能48在图3的功能架构中的任务是:产生当前样本周期(即,对应于采样的感测到的由ADC 14提供的反馈电流及电压的控制环路周期)的转子位置估计相同当前样本周期的转子速率估计及下一样本周期(即,将产生输出控制信号Tabc的样本周期n+1)的前瞻性转子位置估计然而,根据这些实施例,相对于由控制环路中的速度控制器30、PI控制器34d、34q、逆帕克变换35、及空间向量产生器36产生控制信号,速度/位置估计器功能48以后台方式执行估计例程,将针对每一样本周期n产生所述控制信号,以便平稳且适当地控制如由所接收到的输入信号wd、Idd指示的马达M。

如上文结合图2所描述,MCU 20作为多任务控制系统操作,其中在中断服务例程(ISR)内执行对应控制算法,所述中断服务例程(例如)以对应于控制环路频率的频率周期性地运行,使得在每一控制周期中获取的输入数据被用于确定用于在下一周期内施加于马达M的那些多相控制信号。图4说明MCU 20在此周期中断服务例程上下文中的操作的实例。在此实例中,ISR周期TISR与采样周期Ts相同,在采样周期Ts处,由ADC 14获取数据并从ADC 14获取数据,且控制环路(即,控制器30、34q、34d、逆帕克变换35、及空间向量产生器功能37)响应并根据感测到的信号的每一样本产生多相马达控制信号。在图4的时间序列中,在每一采样周期的开始处,由ADC 14获取输入数据样本并从ADC 14获取输入数据样本。为了平稳地操作马达,优选地在每一采样周期执行马达控制信号的产生,且因而,中断处置器50在启用马达控制期间的每一周期中以最高优先级调度控制任务CTRL的执行,响应于来自较高级的应用程序或其它源的命令中断的至少一些命令任务CMD具有次高的优先级,如图4中所展示。根据此实施例,由速度/位置估计功能48相对于控制功能异步地执行状态估计。在此实例中,由具有比控制任务CTRL及至少一些命令任务CMD两者都低的优先级的状态估计任务EST实现此异步执行;应预期,某些命令任务可具有比状态估计任务EST低的优先级。

针对其中在每一采样周期中用于控制、命令、及状态估计任务中的每一者的中断是活跃的情况,此中断优先级的应用导致MCU 20在每一采样周期开始处执行控制任务CTRL的实例。在图4中所展示的采样周期n-2中,首先执行控制任务CTRL,其后接着执行命令任务CMD。在采样周期n-2中命令任务CMD的执行完成之后,接着,速度/位置估计功能48执行状态估计任务EST以根据在此采样周期n-2中所接收到的输入样本数据计算状态估计,从而在样本周期n-2结束之前完成此估计任务EST。在下一采样周期n-1中,再次首先执行控制任务CTRL,其后接着执行命令任务CMD。然而,在此采样周期n-1中,命令任务的执行消耗采样周期n-1的剩余部分,从而未留下用于执行状态估计任务EST的时间。因此,基于在此采样周期n-1中获取的输入样本数据的状态估计在周期结束处不可用,且因此,不可用于下一采样周期n中的控制任务CTRL。

根据此实施例,基于在采样周期n-1中获取的输入样本数据的状态估计的计算被延迟直到稍后采样周期为止,在所述稍后采样周期中执行时间可用于状态估计任务EST。在图4的实例中,在采样周期n中相对较早地完成命令任务CMD,之后针对在采样周期n-1中获取的输入样本数据执行状态估计任务EST。在采样周期n中剩余的时间中,针对在采样周期n中获取的输入样本数据启动状态估计任务EST的实例,但到采样周期n的结束时状态估计任务EST仅被部分执行。状态估计任务EST的此实例的剩余部分执行于稍后的采样周期(在此实例中,周期n+1)中。这些任务的执行以此方式在随后采样周期内继续。

此操作的结果是:马达M的状态估计的计算独立于马达M的控制信号的产生且与马达M的控制信号的产生异步。因此,控制马达M的样本速率不取决于且因此不受限于计算状态估计的速率。此配置允许MCU 20控制更广泛范围的马达(其包含具有对控制信号十分快速的响应的马达),以及更平稳地控制具有各种响应时间的马达,而无需对应地提高控制器的计算能力。

然而,马达的平稳及准确控制确实取决于准确且及时得知的转子位置及速率。这些实施例提供对如施加于控制环路那些参数的更新的估计,尽管可能存在基于最近获取的输入数据样本的状态估计的不可用性,如在图4的实例中的采样周期n的情况中。

根据这些实施例,速度/位置估计器功能48存储与其从ADC 14接收(针对感测到的电流及电压,分别经由克拉克变换46及帕克变换47,如上文所描述)的每一输入数据样本相关联的时间戳。在此实施例中,与这些输入数据样本存储在一起的时间戳值标示获取那些样本值的采样周期,举例来说,将其表达为MCU 20的时间戳计数器52的内容。将这些输入数据及相关联的时间戳值存储于速度/位置估计器功能48可存取的存储器中,例如,存储于图2中的MCU 20的数据存储器24d中。图5说明存储于数据存储器24d中的输入数据样本值的实例。在此实例中,存储于地址ADDR[m_in]处的采样周期(或采样周期)m的输入数据样本包含:

在由速度/位置估计器功能48执行实例EST之后(这可发生于获取这些数据的采样周期m中,或可发生于如上文所描述的稍后的采样周期m+1、m+2等等中),速度/位置估计器功能48从来自周期m的对应输入数据样本计算马达M的状态的一或多个估计,且将那些状态估计作为估计器输出数据连同如与周期m的对应输入数据样本相关联的相同时间戳值一起存储于存储器中。在图5的实例中,将这些估计器输出数据存储于数据存储器24d的地址ADDR[m_out]处,且所述估计器输出数据包含指示获取对应输入数据样本的ISR/样本周期的时间戳值timestamp[m]。存储于此地址ADDR[m_out]处的估计器输出数据的实例包含:

应预期,常规算法及技术可用于从对应的输入数据样本值计算这些状态估计。在与本案一起共同受让且以引用方式并入本文中的都在2014年7月22日申请的序列号为14/337,576及14/337,595的共同待决的美国申请案中描述适于此实施例中的速度/位置估计器功能48的速度及位置估计器算法及方法的实例。

返回参考图4,可从给定采样周期的输入数据样本的存储与由估计任务EST的实例基于那个相同输入数据样本产生的估计器输出数据的存储的相对时序明白根据此实施例的速度/速率估计器功能48的异步操作。在采样周期n-2中,获取采样周期n-2的输入数据样本并将其存储于数据存储器24d中,如上文所描述。同时,在采样周期n-2中执行的控制任务CTRL基于在采样周期n-2中获取的那个输入数据样本产生多相控制信号,并且产生先前采样周期n-3的估计器输出数据。在采样周期n-2中获取输入数据样本之后,采样周期n-2中估计任务EST的实例的执行为采样周期n-1中的控制任务CTRL提供采样周期n-2的估计器输出数据,所述估计器输出数据与在采样周期n-1本身中获取的某些输入数据(例如,分别施加于控制器32q、32d的电流Iq、Id)组合,以产生待在下一周期n中施加于驱动马达M的多相控制信号。

然而,如上文结合此实例所描述,较高优先级的命令任务CMD的持续时间在采样周期n-1中不允许估计任务EST的实例的执行的计算时间。因此,到控制任务CTRL在采样周期n中执行时,无可用的基于在采样周期n-1中获取的输入数据样本的估计器输出数据。根据此实施例,在采样周期n中执行的控制任务CTRL的实例使用从在样本周期n-2中获取的输入数据样本计算的最近的估计器输出数据来产生多相控制信号以在下一周期n+1中驱动马达M。虽然使用来自当前周期(在当前周期内产生马达控制信号)之前的两个或两个以上周期的例如转子位置及速率的状态估计将会把非对准误差插入到马达的操作中,但本发明的实施例能够补偿此异步状态估计,如现将结合图6进行描述。

图6说明在在每一采样周期中执行控制任务CTRL、命令任务CMD、及估计任务EST(例如,图4中所展示)、以及数据收集任务DATA_COLLECT时由MCU 20执行的操作。在每一采样周期的开始处,执行数据收集任务DATA_COLLECT以获取与那个采样周期相关联的新的输入数据样本并将那个输入数据样本存储于存储器中,如图4中针对采样周期n-2到n+2所展示。出于此描述的目的,可将此数据收集任务DATA_COLLECT认为是无条件的(即,不一定响应于中断);替代地,用于此任务的相关联的中断可由中断处置器50接收,且经调度以用于在每一采样周期中(例如)以图6中所展示的其它任务中的最高优先级执行。在任何情况中,数据收集任务DATA_COLLECT以过程54开始,其中从MCU 20的时间戳计数器52获得时间戳值。在过程56中,直接从ADC 14或经由如图3中所展示的各种变换功能46、47从马达M处的传感器获取传感器数据的样本。在过程58中,将对应于所述传感器数据的输入数据存储于数据存储器24d中,此类输入数据包含例如上文关于图5所描述的值的值,以及在过程54中从计数器52获取的指示获取这些数据的时间的相关联的时间戳值。

在此实施例的中断服务例程布置中,如上文所描述,可接收一或多个中断且所述中断在此当前采样周期中是活跃的。如上文所提及,中断处置器50以常规方式调度软件例程的执行以根据优先级方案处置这些中断。在此实施例中,控制任务中断具有最高的优先级,且估计任务中断具有较低优先级;至少一些命令任务中断具有低于控制任务中断但高于状态估计任务中断的优先级的优先级。因而,如果已接收到控制任务中断,那么那个中断具有最高优先级,中断处置器50将调度控制任务CTRL的实例以用于执行。如下文将进一步详细描述控制任务CTRL的执行。如果命令任务中断是活跃的,那么中断处置器50相应地调度命令任务CMD的执行(例如,在如图4中所展示的控制任务CTRL的执行之后)。命令任务CMD的执行涉及在图6中所展示的过程70中根据对应于所接收到的特定命令的软件例程执行对应命令序列。

如果在此采样周期中估计任务中断是活跃的,那么中断处置器50也根据上文所论述的优先级方案调度估计任务EST的实例以用于执行,且条件是如上文关于图4所描述在当前采样周期中有可用的时间。图6说明根据此实施例的估计任务EST的实例的执行。在此实例中,以在过程80中从数据存储器24d检索最近的输入数据样本作为开始来执行估计任务EST。在过程82中,速度/位置估计器功能48(例如)通过使用常规状态估计算法及例程及在上文并入的序列号为14/337,576及14/337,595的共同待决的美国申请案中所描述的状态估计算法及例程,从在过程80中检索到的特定的输入数据样本值产生状态估计。在过程84中,将这些状态估计连同指示获取输入数据样本的时间(即,样本周期)的时间戳一起存储于存储器(例如,数据存储器24d)中。在此实施例中,在过程82中产生并在过程84中存储的状态估计包含转子位置及速率的估计,以及例如上文关于图5所描述的值的其它状态估计值。

如上文所描述,控制任务CTRL是每一操作循环中的最高优先级中断。在此实施例中,MCU 20的速度/位置估计器功能48执行控制任务CTRL的实例,以其中从时间戳计数器52获取当前时间戳值的过程60开始。此当前时间戳值指示当前采样周期的时间,在所述时间在控制任务CTRL的此实例中产生控制信号。在过程62中,从数据存储器24d检索最近的估计器输出数据,以及在估计任务EST的相关实例的过程84中针对那个估计器输出数据所存储的时间戳值。这些估计器输出数据可为来自前一采样周期的状态估计,如在图4中的采样周期n-1的情况中,或可为来自前一周期之前的一或多个采样周期的状态估计,如在其中来自采样周期n-2的估计器输出数据是最近的状态估计的采样周期n的情况中。如上文所提及,来自控制任务CTRL的执行之前的两个或两个以上周期的例如转子位置及速率的估计将导致输出控制信号的未对准误差。根据此实施例,控制任务CTRL的执行由MCU 20执行以补偿状态估计的延时,以及所述延时在周期间的可变性。具体来说,图6中的控制任务CTRL的过程64使用针对那些估计值存储于数据存储器24d中的时间戳值更新当前样本周期的转子位置及速率。

在时间样本瞬间p处马达M的转子的角速率估计可表达为:

其中是时间样本m处的角速率估计,是时间样本m处的角加速度估计,且TISR是采样周期的持续时间。在此表达式中,m是基于与最近的状态估计相关联的时间戳在过程62中检索到那些估计的采样周期,而p是在其中执行控制任务CTRL的当前采样周期的时间戳值。在来自采样周期m的这些检索到的状态估计中,图5的所存储的状态估计中的值fm_rps对应于此表达式中的角速率估计且所存储的状态估计中的值fmDot_rps2对应于此表达式中的角加速度估计也检索用于这些状态估计的时间戳值timestamp,其指示计算那些估计所基于的输入数据样本的采样周期m。因此,根据此表达式,在过程64中通过将角加速度估计乘以ISR样本m与ISR样本p之间的经过时间(p-m)·TISR并将所述乘积加到角速率估计来计算更新的角速率估计根据此实施例的时间戳值的存储及检索使得能够确定采样周期m与采样周期p之间的经过时间。一旦计算出更新的角速率估计那么过程64也从所述更新的角速率估计以及经过时间(p-m)·TISR及用于周期m的所检索到的状态估计中的角位置估计(即,图5中所展示的值angle_rad)计算采样周期p的更新的角位置估计:

在此实施方案中,时间戳值m、p是数字计数器52在对应时间处的内容。因而,针对计数器52在其被时钟控制时递增其内容的情况,上述表达式假设时间戳p大于时间戳m,这是因为时间戳p的采样周期在时间上比时间戳m的周期晚。然而,当数字计数器为满时,其回绕其内容;因此,如果计数器52的回绕发生于介入时间中,使得其内容指示比所检索到的时间戳的计数早的计数,那么稍后的采样周期可具有比先前周期小的时间戳值。因此,根据此实施例,过程64考虑了在其更新的角速率估计的计算中计数器52可在采样周期p与采样周期m之间回绕的可能性。举例来说,在过程64中由处理器单元22执行的软件例程可包含代码块:

if(p<m):

Δcnt=(p-m)+maxCounter Value

else:

Δcnt=(p-m)

其中maxCounterValue是可由计数器52存储的最大值。在此实施方案中,可将用于更新的角速率估计的表达式修改成:

类似地,过程64通过使用更新的角速率估计以及先前样本m的角位置估计计算采样周期p的更新的角位置估计:

如所属领域的技术人员应认识到,如果计数器52是递减计数器,那么将相应修改用于处置回绕情况(即,计数器52的当前内容指示比时间戳值更早的计数)的代码。

在角速率是恒定的,且因此其中角加速度是零的那些实例中,可进一步促进控制任务CTRL的过程64中的更新的估计的计算。在那种情况中,在过程64中状态估计的更新将仅必须更新角速率估计

这是因为在零角加速度下角速率等于角速率接着,应用角位置及速率的这些更新的状态估计,以及在当前采样周期中获取的对应样本数据(例如,Id、Iq),以产生待施加于马达M的控制信号。

替代地,应预期,较高阶的计算(例如,通过估计加速度率,且类似地计算一或多个采样周期内的更新的加速度估计)可用于更新过程64中。另外,应预期,也可在过程84中更新除涉及转子位置、速率及加速度外的其它状态估计,尤其是在那些估计在控制任务CTRL中有用时。

在任何情况中,一旦在过程64中更新转子位置及速率、以及其它所期望的状态估计,那么控制任务CTRL继续过程66、68,其中使用那些更新的状态估计产生多相控制信号。在过程66中,执行速度控制器30、PI控制器34q、34d、逆帕克变换35、及空间向量产生器37(图3)的马达控制功能(在此实施方案中这些功能实施于软件中)以产生多相控制信号Tabc,在过程68中,以常规方式将多相控制信号Tabc写入到PWM驱动器8。接着,PWM驱动器8又将适当的脉冲宽度调制控制信号施加于电力驱动器9,电力驱动器9经由如上文关于图2所描述的逆变器11驱动马达M。

根据此实施例,应预期,根据此优先级的中断的处理将在当前采样周期内继续,其中如果在周期结束之前已处置所接收到的全部中断,那么进入闲置状态。如果在周期结束处正在执行任务,举例来说,如在图4的采样周期n中的估计任务EST的第二实例的情况中,那么应预期,MCU 20将以如多任务处理器及架构的所属领域中已知的常规方式执行例如上下文切换及类似物的适当的多任务调度操作。接着,在马达M的受控操作期间在下一采样周期中操作以类似方式重复,且以此类推。

返回参考图4,采样周期n中正在执行的控制任务CTRL的实例因此使用根据采样周期n-2中获取的输入数据样本计算的、在控制任务CTRL的过程64中更新以考虑采样周期n-2与当前周期n之间的延时的估计器输出数据,以及在采样周期n本身中获取的适当的输入数据(例如,Iq、Id)以产生多相控制信号以在下一周期n+1中驱动马达M。也是在此采样周期n内,对在采样周期n-1中获取的输入数据样本执行估计任务EST(这是因为那个输入数据样本是状态估计尚未被计算的最旧的样本),从而导致用于采样周期n-1的输入数据样本的对应估计器输出数据。因为在估计任务EST的那个实例的完成之后采样周期n中仍有时间,且因为已获取并存储采样周期n的输入数据样本,所以对那个输入数据样本的估计任务EST的第二实例在采样周期n中开始执行,且在那个周期的结束处部分完成。在采样周期n+1中,使用用于在采样周期n-1中获取的输入数据的估计器输出数据(即,最近的状态估计数据)执行控制任务CTRL,其后接着完成在采样周期n中获取的输入数据样本的估计任务EST,其后接着执行(到完成)对在采样周期n+1中获取并存储的输入数据样本的估计任务EST的另一实例。因为在采样周期n+1中获取的输入数据样本上获得估计器输出数据,所以这些估计器输出数据(n+1)可用于采样周期n+2中的控制任务CTRL的下一实例中。因为此实例中的状态估计的时序,从在采样周期n中获取的输入数据样本计算的估计器输出数据不会直接用于控制环路。因此,在此实施例中MCU 20的速度/位置估计器功能48的操作以此方式继续。

虽然上文所描述的实施例与对应于由ADC 14获取输入数据的采样周期且对应于执行及应用马达控制功能的控制周期的中断服务例程(ISR)周期一起操作,但应预期,这些周期可不同于彼此。特定来说,应预期,马达控制也可与输入数据的获取异步地操作(即,控制周期可与采样周期不同),正如状态估计以上文所描述的方式与采样周期及控制周期异步地操作。应预期,参考此说明书的所属领域的技术人员将能够无需过度实验而容易地实现此替代方法,以及其它替代及变化。

此实施例预期:不一定在每一采样周期中都执行控制任务CTRL。举例来说,MCU 20可进行操作以便通过获取每一采样周期中的输入数据样本并在执行时间允许时从那些输入数据产生状态估计而不主动控制其(即,不执行控制任务CTRL)而仅观测马达M的旋转。可将在此类观测期间所获得的状态估计及其对应时间戳值存储于存储器中以用于稍后分析。此类无控制的观测在一些情况中可为有用的。举例来说,在其中转子在主动控制之前初始地旋转的启动序列期间,对此马达的观测可允许MCU 20获得马达的速率轮廓,根据所述速率轮廓可平滑地应用马达控制算法以启动主动控制,且允许MCU 20一旦启动控制就优化应用控制的方式。无马达控制的观测也可用于(例如)通过在最小估计周期内观测马达以确定马达速度保持恒定的程度来证实如下假设:转子正以恒定的角速率旋转。此类型的观测也可用于测试及特性描述系统中,(例如)以测量马达设计的响应。

应预期,可以除如上文针对此实施例所描述的中断处置及处理外的方式执行状态估计功能的调度及执行。预期参考此说明书的所属领域的技术人员将明白此类替代硬件及软件实施方案,且此类替代硬件及软件实施方案可无需过度实验而实施于对应系统中。在任何情况下,根据这些实施例,应预期,状态估计功能与控制功能异步地执行,这是因为及时并周期性地执行控制功能是至关重要的(尤其是对于现代快速响应马达的控制来说),而根据这些实施例,无需在每一采样周期内完成状态估计功能。

在根据这些实施例的马达控制系统中,状态估计相对于控制环路的异步操作提供优于常规系统的一或多个重要优点。由此异步操作提供的一种此类优点是以下能力:实际上以不同于彼此的频率执行状态估计及场定向控制作为实时操作系统中的任务,同时仍保证准确的马达控制所需要的准确的角位置及速率估计。此分离及RTOS实施方案也允许使用协处理器(例如,图2的估计器协处理器23)执行状态估计,而主处理器(例如,处理器单元22)可将其计算能力用于控制任务。因此,可增加可从马达获取传感器数据(且基于那些传感器数据将控制信号施加于马达)的采样速率而不受状态估计所需的计算时间限制。此配置使相同的马达控制系统能够对包含现代快速响应马达的更广泛范围的马达操作。

虽然在此说明书中已描述一或多个实施例,当然,应预期,参考此说明书及其图式的所属领域的一般技术人员将明白这些实施例的修改及对这些实施例的替代(此类修改及替代能够获得本发明的优点及益处中的一或多者)。应预期,此类修改及替代在如在本文中随后主张的本发明的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1