在之前我们探讨的SiC双脉冲测试、CAN通信高可靠设计等大功率电力电子系统开发内容中,工程师在完成主功率硬件的特性验证之后,都会进入控制环路的设计环节。传统的模拟补偿器依赖运算放大器、电阻电容等分立器件搭建,参数调试过程繁琐,温度漂移大,很难适配SiC高频电力电子系统的高精度控制需求。而数字补偿器依托微控制器或者DSP的数字运算能力实现,参数修改灵活,温度稳定性高,已经成为当前新能源车主逆变器、工业高压传动等高频大功率系统的主流选择。很多开发者在设计数字补偿器时,直接照搬教科书上的理论变换步骤,忽略了实际嵌入式系统中的数值运算特性,最终得到的补偿器实际运行效果和理论设计偏差巨大,甚至出现控制环路震荡的问题。结合电力电子控制场景的工程实践经验,系统梳理数字补偿器从连续域设计到离散域落地的完整数值变换过程,是打造高稳定高性能电力电子控制环路的核心基础。
数字补偿器数值变换的前置设计基础
数字补偿器的完整设计流程,从来不是直接在离散域从零开始设计,而是遵循“先连续域建模设计,再通过数值变换映射到离散域,最后在嵌入式系统中实现”的标准路径。这个设计逻辑的核心原因是,电力电子控制对象的特性天然是连续的,比如之前我们测试过的SiC功率器件的开关瞬态、LC滤波电路的谐振特性,所有物理对象的动态特性都是在连续时间域中定义的,工程师可以借助成熟的频域分析工具,非常直观地完成补偿器的频域特性设计,轻松绘制伯德图,评估环路的带宽、相角裕度、增益裕度这些核心指标,整个设计过程的物理意义非常清晰。
在完成连续域补偿器的设计之后,我们不能直接把连续域的传递函数直接拿到数字系统中运行,因为数字控制系统的运行模式和模拟系统存在本质差异。数字系统的所有运算都是在离散的控制中断时刻完成的,AD采样是每隔一个控制周期执行一次,PWM更新也是每隔一个控制周期执行一次,两个采样点之间的时间里,控制算法的输出是保持不变的,这个过程天然会引入零阶保持效应,带来额外的相位滞后。如果忽略这个效应,直接把连续域的补偿器参数离散化,最终得到的数字补偿器的相角特性会和理论设计出现明显偏差,在高频段的相角滞后会大幅增加,导致整个控制环路的相角裕度不足,甚至出现高频震荡的问题。
数值变换过程的核心目标,就是找到一种合理的数学映射方法,把连续域s平面上设计好的补偿器特性,精准地映射到离散域z平面上,让最终得到的离散域补偿器,在控制环路的工作带宽范围内,频域特性和原始的连续域补偿器尽可能保持一致,同时还要适配嵌入式微控制器的数值运算特性,避免在运算过程中出现数值溢出、精度丢失、运算溢出等工程问题。整个数值变换过程不是一个简单的数学代入操作,而是一个结合控制理论特性和嵌入式系统硬件特性的系统性工程化过程。
主流数值变换方法的工程特性对比
当前电力电子控制领域,常用的连续域到离散域的数值变换方法有三种,不同的变换方法有各自的特性差异,分别适配不同的控制场景,工程师需要根据实际系统的控制带宽需求选择最合适的变换方法。
第一种也是最基础的变换方法是前向欧拉变换,也被称为显式欧拉变换。这种变换方法的核心逻辑,是用当前时刻的数值差分,近似替代连续域中的微分运算。它的实现逻辑非常简单,只需要把连续域中的微分算子直接替换成对应的差分表达式,就可以直接得到离散域的补偿器表达式。这种变换方法的最大优势是运算量极小,每一个控制周期需要执行的加减乘运算数量最少,非常适合在运算资源非常紧张的低端MCU上实现。但是它的缺陷也非常明显,这种变换方法会把连续域s平面的稳定区域,映射到z平面上的一个单位圆内部的半平面区域,当控制环路的带宽接近控制采样频率的十分之一以上时,变换得到的离散补偿器很容易出现不稳定的问题,甚至原本连续域中完全稳定的补偿器,经过前向欧拉变换之后,在离散域中会变成不稳定的系统。所以这种变换方法只适合控制带宽远低于采样频率的低频控制场景,比如工业温控、低压小功率电源这类控制速度要求不高的系统,在SiC高频大功率电力电子系统中很少使用。
第二种应用最广泛的变换方法是双线性变换,也被称为塔斯廷变换。这种变换方法的核心逻辑,是用梯形积分的方式近似替代连续域的积分运算,相当于在两个相邻的采样点之间,用一条直线连接两个点的数值,用这个梯形的面积来近似积分的结果。这种变换方法的最大优势是,它可以把连续域s平面上的整个虚轴,精准地映射到z平面上的单位圆上,连续域s平面左半平面的所有稳定点,都会全部映射到z平面的单位圆内部,只要原始的连续域补偿器是稳定的,经过双线性变换之后得到的离散补偿器一定也是稳定的,从根本上避免了变换过程中引入不稳定的问题。同时双线性变换得到的补偿器,在中低频段的幅频特性和相频特性和原始连续域特性的吻合度非常高,完全可以满足绝大多数电力电子控制场景的需求。它的唯一小缺陷是存在频率畸变效应,也就是连续域的频率轴和离散域的频率轴之间存在一个非线性的映射关系,当控制环路的带宽接近采样频率的二分之一时,频率畸变的影响会变得非常明显,但是在实际的电力电子控制系统中,我们通常都会把控制带宽设计在采样频率的五分之一以内,这个频率畸变的影响几乎可以忽略不计。所以双线性变换是当前工业界电力电子控制中使用最广泛的数值变换方法,在新能源车主逆变器、高压传动等几乎所有主流场景中都得到了大规模应用。
第三种常用的变换方法是后向欧拉变换,也被称为隐式欧拉变换。这种变换方法的核心逻辑,是用下一个采样时刻的数值差分来近似替代微分运算。这种变换方法的稳定性比前向欧拉好很多,但是它的幅频特性会随着频率的升高出现逐渐衰减的问题,高频段的增益会比原始连续域的特性低很多,适合对高频噪声有天然抑制需求的控制场景,比如电池管理系统的电流环控制,可以在变换过程中天然滤除一部分高频开关噪声,不需要额外增加低通滤波环节。
在实际的工程选择中,当控制环路的带宽低于采样频率的十分之一时,三种变换方法的特性差异很小,都可以使用;当控制带宽在采样频率的十分之一到五分之一之间时,优先选择双线性变换,可以在保证稳定性的前提下,获得最接近原始连续域设计的频域特性;只有当系统的运算资源极度紧张,控制带宽非常低的时候,才考虑使用前向欧拉变换。
离散化之后的补偿器结构化简与定点适配
完成核心的数值变换之后,我们得到的是z域下的补偿器传递函数表达式,接下来还需要完成结构化简和定点数适配,才能在实际的嵌入式微控制器上运行,这个环节是很多理论设计和实际工程实现脱节的重灾区。
首先要把z域的传递函数,转换成适合嵌入式系统实时运算的差分方程形式。很多新手在得到z域的表达式之后,直接按照原始的分式结构去编写代码,不仅运算量巨大,还很容易引入不必要的运算延迟。正确的做法是把传递函数整理成标准的二阶差分方程形式,也就是当前时刻的补偿器输出,等于之前几个时刻的输出历史值和之前几个时刻的输入历史值的线性加权和。对于电力电子系统中最常用的PI补偿器,整理之后的差分方程只需要几个加减乘运算就可以完成,哪怕是高阶的PID补偿器,每一个控制周期的运算量也不会超过十次乘加运算,完全不会占用太多的控制中断时间。
在整理差分方程的过程中,必须特别注意运算的因果性问题。很多新手在变换完成之后,得到的差分方程中会出现当前时刻的输入项出现在方程右侧的情况,这在物理上是完全无法实现的,因为当前时刻的输入是在本次控制中断中刚刚采样得到的,不可能出现在输出的表达式中。遇到这种情况,就需要在差分方程的最外侧增加一个单位周期的延迟,也就是把整个补偿器的输出延迟一个控制周期,虽然会引入一个控制周期的相位滞后,但是保证了算法的可实现性,这个微小的相位滞后在控制带宽远低于采样频率的场景下,对整个环路的特性影响几乎可以忽略不计。
接下来最重要的步骤就是浮点数到定点数的数值适配。当前绝大多数工业级DSP和车载级MCU,都是定点运算架构,硬件没有原生的浮点数运算单元,如果直接使用浮点数运算,不仅运算速度慢很多,还很容易出现运算精度不足的问题。所以我们需要把差分方程中的所有浮点系数,全部转换成定点数格式,最常用的方法是Q格式定标,根据系数的数值范围,选择合适的定标位数,把所有的小数系数放大对应的倍数,转换成整数参与运算,运算完成之后再缩小对应的倍数,得到最终的输出结果。
这个定标过程的核心难点是在运算精度和数值范围之间找到最优的平衡点。如果定标的位数选得太少,定点数的小数部分精度不足,补偿器的低频增益会出现明显的损失,导致控制环路的稳态误差变大,甚至出现PI调节器无法完全消除静差的问题;如果定标的位数选得太多,整数部分的数值范围就会变小,在输入信号出现大的动态跳变时,很容易出现数值溢出的问题,导致补偿器的输出出现异常跳变,引发控制环路的震荡。在电力电子控制的工程实践中,通常会选用Q15或者Q31的定标格式,16位定点DSP选用Q15格式,32位定点DSP选用Q31格式,既可以保证足够的小数运算精度,又可以提供足够大的整数动态范围,完全满足绝大多数电力电子控制场景的需求。
工程实现中的数值稳定性优化要点
完成差分方程的编写和定点数适配之后,数字补偿器的代码框架已经基本完成,但是还需要增加一系列的数值稳定性优化措施,才能保证补偿器在全工况下稳定运行,不会出现数值发散的问题。
首先要做好历史状态变量的限幅保护。数字补偿器的积分环节对应的历史状态变量,也就是误差的累加值,是最容易出现数值溢出的地方。当系统出现启动冲击、负载突变等大动态工况时,误差信号长时间保持在同一个极性,积分累加值会快速增大,如果没有限幅保护,很快就会超出定点数的数值范围,出现数值溢出翻转的问题,导致补偿器的输出出现完全错误的跳变。正确的做法是给积分累加值设置合理的上下限,限幅的数值可以根据补偿器的最大输出能力来设定,保证积分累加值永远不会超出合理的数值范围,从根源上避免积分饱和的问题。
其次要优化补偿器的初始状态赋值。在控制系统上电启动的瞬间,如果直接把补偿器的所有历史状态变量全部清零,会导致补偿器的输出和系统当前的实际工作点完全不匹配,在上电瞬间产生一个很大的冲击跳变,很容易触发硬件的过流保护。正确的做法是在上电初始化的时候,根据当前系统的实际采样值,反向计算出补偿器的历史状态变量的初始值,让补偿器的初始输出刚好等于当前系统稳态工作点需要的控制量,实现无冲击的平滑启动。
最后要增加补偿器的在线参数平滑切换机制。很多先进的电力电子系统需要根据不同的负载工况,在线动态切换数字补偿器的参数,实现全负载范围内的最优控制性能。如果直接在运行过程中瞬间替换差分方程的系数,会导致补偿器的输出出现跳变,引发控制环路的动态震荡。正确的做法是设计一个参数平滑过渡机制,在几个控制周期内,把旧的系数和新的系数做加权平滑过渡,逐步完成参数的切换,保证补偿器的输出全程连续平滑,不会出现任何跳变。
数字补偿器的数值变换过程,不是一个简单的数学代入操作,而是一个从连续域设计到离散域工程落地的完整系统性流程,把每一个变换环节的细节处理到位,才能让理论设计的高性能控制特性,真正在实际嵌入式系统中稳定运行,为SiC高频电力电子系统打造出高带宽高稳定的控制环路。
如您对我们的产品感兴趣,欢迎联系
我们将为您提供高效、贴心的解决方案!
咨询电话:135 1009 9916(微信同号)
想深入了解碳化硅功率器件产品知识?点击→「碳化硅(SiC)课堂」获取详情!







