后向离散状态事件驱动电力电子仿真方法
BDSED方法是隐式的,其关键在于如何选择一组合适的量化函数值组合,使得据此计算出的导数向量能够让各状态变量向其对应的量化函数值趋近。由于在每一步计算中,每一个状态变量下一时刻的量化函数都有两种取值,所以对于复杂高维系统,枚举的方式并不可行;同时各状态变量的量化函数值的确定存在互相耦合、相互制约的关系,导致问题更加困难。
为解决该问题,提出一种基于有限状态机的实现方案,并在带非理想器件模型的变换器电路上进行了算例验证。仿真结果表明,基于有限状态机实现的BDSED能高效地选取量化函数值组合,在解算变换器等刚性系统时仿真效率明显优于DSED方法和传统的时间离散刚性解法。
计算机数值仿真是分析电力电子系统非理想特性的重要工具。然而在考虑功率开关器件非理想模型和线路杂散参数的电力电子系统中,其仿真模型具有大时标跨度、不连续点多、非线性和刚性强等特点。
传统的基于时间离散的数值计算方法(如梯形法、龙格库塔法等)在解算这样的系统时存在以下问题[1]:
①步长选择两难——定步长可能会导致计算误差的累计,变步长又会导致大量的计算时间浪费在寻找适当步长时,还有可能导致过小的步长使仿真难以推进;
②仿真效率低——不论是变步长还是定步长算法,都不能在一个步长内跨过不连续状态,否则将使仿真结果出现错误,必须通过迭代等方法来定位不连续点,使得计算量大大增加,拖慢仿真速度;
③算法收敛性差——在如此大的时标跨度下易出现数值不稳定现象。
针对传统时间离散数值算法的缺陷,E. Kofman等从数值分析的角度提出了一种采用事件离散的量化状态系统(Quantized StateSystem, QSS)算法[2-5]。QSS算法以各状态变量的Q函数对状态变量或其导数进行离散化切分,并以Q函数构成的向量代替状态变量计算导数向量,求解到达下一个切分点的时刻。此算法在收敛性、稳定性等方面具备优异的数学性质,其全局截断误差可被所选切分长度严格约束,截断误差不会随仿真步数叠加。
而基于QSS算法,笔者团队已经提出了面向电力电子系统仿真应用的离散状态事件驱动(Discrete StateEvent Driven, DSED)仿真方法。DSED避免了迭代运算,且其仿真进程天然具有变步长性质,变化平缓处天然以大步长解算,变化剧烈处天然以精细尺度解算,无需浪费时间反复调整步长。
然而DSED在解算刚性系统时其效率和稳定性尚不尽如人意。电力电子系统是典型的刚性系统,其刚性一方面源于大量存在的开关器件;另一方面则源于其包含的多时间尺度过程。QSS算法则是前向显式算法,基于QSS的DSED方法在解算强刚性系统时会面临效率低、数值不稳定等问题。E. Kofman等提出了一种后向QSS(Backward QSS,BQSS)算法[6],即选取一组合适的量化函数值组合作为下一步的Q函数向量,使得据此计算出的导数正负符号能让各状态变量在下一步向各自的Q函数趋近。
BQSS作为隐式的事件驱动算法,最大的问题是如何高效实现,其困难之处在于:①状态变量的导数不仅与自身Q函数取值有关,还会由于别的状态变量Q函数取值不同而发生变化,所以各状态变量Q函数的确定是互相影响、相互制约的;②每一步计算中各状态变量Q函数都有两种取值,对于高维复杂系统若采用枚举的方式将导致组合量巨大,难以实施。
目前对BQSS的研究还非常少,已有的实现方案未考虑Q函数确定时的相互制约,对于算法进程中已确定Q函数取值的部分,可能会由于待定部分的取值而使导数正负号发生变化,使其状态变量向Q函数趋近的性质遭到破坏,在多维复杂系统中,将无法找出正确的Q函数向量,甚至根本无法进行。有限的算例也都是简单的低维系统,对高维复杂系统尚缺乏有效的实现方案。
本文在BQSS数值算法的基础上,面向电力电子强刚性系统,提出一种后向离散状态事件驱动(Backward DSED,BDSED)仿真方法,并针对其在高维系统中难以实现的问题,给出了一个采用有限状态机的实现方案。与前向DSDE方法类似,将数值算法与电力电子变换器系统本身更多地结合起来,拓展事件驱动的内涵;同时根据变换器的参数对导数进行限幅,实施人工干预。
在一个17维的算例模型上进行验证,结果表明,本文提出的基于有限状态机实现的BDSED仿真方法能高效地选取Q函数向量,在解算刚性系统时其仿真效率明显优于前向DSED方法和传统的时间离散刚性解法。
图1 BDSED算法流程
结论
本文借鉴BQSS数值算法的思想,面向电力电子强刚性系统,提出了一种后向离散状态事件驱动(BDSED)仿真方法。并针对后向方法的实现难题,给出了一个有限状态机的实现方案。充分利用状态方程的数学性质,通过建立一个有限状态机动态地对系统进行降维解耦,从而在多维复杂系统中高效地实现Q函数组合的选取。
以一个17维的带非理想开关模型的变换器系统作为仿真算例证明了该方法及其实现方案的效果,结果表明在解算刚性系统时其效率和数值稳定性相较DSED和传统时间离散解法而言具备显著优势。